Vytisknout stránku | Zavřít okno

LISP - vytvoření středové křivky

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: CAD programování
Popis fóra: Otázky programování - nadstavby a utility pro CAD a GIS aplikace Autodesk (VBA, AutoLISP, ARX/C++, .Net, JavaScript, Python, MEL...)
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=34370
Datum vytištění: 02.čer.2026 v 21:09


Téma: LISP - vytvoření středové křivky
Odeslal: hoboj
Předmět: LISP - vytvoření středové křivky
Datum odeslání: 24.kvě.2023 v 08:41
Dobrý den, 
věděl by někdo, jak vytvořit lisp na vytvoření křivky uprostřed 2 křivek? Něco jako střed točité silnice vč. zúžení a rozšíření? 
Děkuji


-------------
Vojtěch Visingr



Odpovědi:
Odeslal: PepaR
Datum odeslání: 24.kvě.2023 v 09:59
Dobrý den, měl by to umět příkaz [CMD]STŘEDOSA[/CMD] (_CENTERLINE), případně lze použít https://www.cadtutor.net/forum/topic/49702-centerline-between-two-polylines/" rel="nofollow - tento lisp , pokud jej dohledáte někde na netu ke stažení.

-------------
PepaR
https://www.jremes.cz" rel="nofollow - jremes.cz | https://www.stavlab.cz" rel="nofollow - stavlab.cz


Odeslal: Vladimír Michl
Datum odeslání: 24.kvě.2023 v 10:21
Viz příbuzný tip:
https://www.cadforum.cz/cz/jak-zkonstruovat-osu-dvou-krivek-osovou-krivku-tip11024 - https://www.cadforum.cz/cz/jak-zkonstruovat-osu-dvou-krivek-osovou-krivku-tip11024
a freeware utilita CurveAxis



-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)


Odeslal: hoboj
Datum odeslání: 24.kvě.2023 v 10:38
Dobrý den, pane Michle, 
děkuji za tip, curveaxis jsem zkoušel, ale je pro mé potřeby nedostačující, třeba u dvou křivek, jak jsem přidal obrázek tento lisp neudělá středovou křivku, jak bych potřeboval, ale je deformovaná. U "S" zatáčky je taky zakřivená jinak, než je střed. Děkuji


-------------
Vojtěch Visingr


Odeslal: Vladimír Michl
Datum odeslání: 24.kvě.2023 v 13:13
Ono je to matematicky trochu "sporné" jak má vypadat osa v těch asymetrických případech - obvykle se používá algoritmus valící se kružnice, ale i ten tam udělá "ocásek" - viz příkaz CURVEAXISRB doplněný do utility CurveAxis.

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)


Odeslal: hoboj
Datum odeslání: 24.kvě.2023 v 13:50
Ano, už jsem dohledal nyní i tento případ. Asi by mi stačil jednoduchý lisp se zadáním počátečního bodu křivky (pline)->počateční bod -> _m2p (výběr poloviny) -> dokud neukončím. 

Děkuji


-------------
Vojtěch Visingr


Odeslal: johny
Datum odeslání: 24.kvě.2023 v 14:13

(defun c:pmid ( / p r)

  (command "_.pline")
  (while (setq p (progn (initget "Undo") (getpoint "\nFirst point [Undo]: ")))
    (if (= p "Undo")
      (command "_Undo")
      (and (setq r (getpoint p "\nSecond point: "))
   (command "_m2p" "_non" p "_non" r))))
  (command "")
  (princ)
  )



Vytisknout stránku | Zavřít okno