Vytisknout stránku | Zavřít okno

extrim v lispe

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=6383
Datum vytištění: 12.kvě.2026 v 22:47


Téma: extrim v lispe
Odeslal: Augur
Předmět: extrim v lispe
Datum odeslání: 22.dub.2008 v 09:04
Pokusam sa napisat lisp v ktorom vyuzivam (alebo by som aspon chcel vyuzivat) command "extrim".. Moja predstava je asi taka, ze v prvom kroku vyberiem obdlznik, (ktory bude tvorit hranicu orezavania)a v dalsom kroku sa vypocita bod vovnutry tohoto objektu, ktory sluzi na urcenie ci sa ma orezavat vsetko okolo objektu alebo vovnutry.
Problem je v tom, ze command ako taky neprebehne.. tvari sa to dost divne.. Vie mi prosim niekto poradit, kde by mohol byt problem??
Prikladam vyber z lispu:

(setq mnozina (ssget "_X" '((0 . "LWPOLYLINE"))))
(setq ent1 (ssname mnozina 0))
(setq zoznam (entget ent1))
(setq bod0 (nth 14 zoznam))
(setq bod1 (nth 1 bod0))
(setq bod2 (nth 2 bod0))
(setq bod3 0)
(setq bodx1 (+ bod1 "1"))
(setq bodx2 (- bod2 "1"))
(setq bodxy (list bodx1 bodx2 bod3))
(command "_extrim" ent1 bodxy)


-------------
Designer/Projektant/Ucitel
Autocad 2007



Odpovědi:
Odeslal: svarc.vl
Datum odeslání: 22.dub.2008 v 09:44

v radku (setq bodx1 a následujícím by neměli byt uvozovky. příkaz _extrim mi autocad nebere. Bohuzel nemam moc času tak připojuji lisp co jsem si dělal a jako obvykle nedodělal (ošetření úchopů, vymazání vnitřních entit atd).

(setq bod (getpoint "\npocatek"))
(setq bod1 (getcorner bod))
(command "křivka" bod  (list (car bod) (cadr bod1)) bod1 (list (car bod1)
                (cadr bod) ) "U")
(setq ent (entlast))
(setq bod (polar bod 0.785 1.41)  bod1 (polar bod1 3.927 1.41) )
(command "ořež" ent  "" "N" bod bod1 "" "")
(command "_erase" ent "")


Odeslal: Vladimír Michl
Datum odeslání: 22.dub.2008 v 09:48
EXTRIM není vnitřní příkaz AutoCADu, ale Express Tool. Takto ho volat nemůžete. Viz:
http://www.cadforum.cz/cadforum/command.asp?cmd=EXTRIM - http://www.cadforum.cz/cadforum/command.asp?cmd=EXTRIM
 
Jedině si zkuste upravit jeho původní LISP kód v extrim.lsp.


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


Odeslal: Ferdinand
Datum odeslání: 22.dub.2008 v 11:01
Ano, tento příkaz chce konkrétní "ruční" výběr objektů.
To svarc.vl: Co to má dělat? Neznám české volby (to "U" je Undo?, "N" je co?)


-------------
-FerTh-


Odeslal: svarc.vl
Datum odeslání: 22.dub.2008 v 11:12
"U" bude uzavři  anglicky "_C" close, N je napříč  anglicky " _F"  asi Fence , jinak jsem to programoval  v r 1998  to teda koukam Shocked


Odeslal: Ferdinand
Datum odeslání: 22.dub.2008 v 12:36
To svarc.vl: Co to má dělat? Mně to nic nedělá, přesto že jsem to upravil na tvar
(....původní /opravený/ kód Augura...)
(setq bod (getpoint "\npocatek"))
(setq bod1 (getcorner bod))
(command "_pline" bod  (list (car bod) (cadr bod1)) bod1 (list (car bod1) (cadr bod)) "_C")
(setq ent (entlast))
(setq bod (polar bod 0.785 1.41)  bod1 (polar bod1 3.927 1.41))
(command "_trim" ent  "" "_F" bod bod1 "" "")
(command "_erase" ent "")


-------------
-FerTh-


Odeslal: Mrázek
Datum odeslání: 22.dub.2008 v 12:37
V helpu k příkazu "vyber" jsou všechny možné volby zmíněny, vždy to písmeno, které je velké, znamená zkrácenou volbu.

-------------
Ing. Zdeněk Mrázek
Preciosa Ornela a.s.
AIP 2018, ACADM 2018, Vault Pro 2018


Odeslal: Mrázek
Datum odeslání: 22.dub.2008 v 12:40
Pokud nemáte k dispozici český ACAD - vyjímám z Helpu:

"Očekává se bod nebo

Okno/Poslední/Křížení/Box/všE/Napříč/OPolygon/KPolygon/Skupina/Přidat/Odstranit/Nkrát/Předchozí/Zpět/Auto/Jeden

Vyberte objekty: Zadejte bod nebo vyberte volbu"



-------------
Ing. Zdeněk Mrázek
Preciosa Ornela a.s.
AIP 2018, ACADM 2018, Vault Pro 2018


Odeslal: svarc.vl
Datum odeslání: 22.dub.2008 v 12:53

Noo.. nejde o to co to má dělat mně , jde o to jestli Augrum to využije. V zásadě to nakreslí jenom obdélník a podle něj to ořízne (pokud se mu povede trefit entitu).Smile Jinak si musí tazatel upravit Extrim



Odeslal: Augur
Datum odeslání: 22.dub.2008 v 14:19
Plan bol taky ze Autocad si sam najde objekt podla ktoreho sa bude trimovat.. V tom problem nieje.. Ja som si len neuvedomil, ze prikaz "extrim" je vlastne samostatny lisp..

Dodatocne by som sa chcel vsetkym podakovat, hlavne panovi Ferdinand-ovi.. Velkou obklukou a v podstate nezavisle som sa dostal k rieseniu, ktore tu bolo spomenute.. (na orezavanie nepouzivat lispovsky prikaz extrim, ale ovela jednoduchsi prikaz trim spolu s "fence". Teraz to robi presne to, co som chcel

-------------
Designer/Projektant/Ucitel
Autocad 2007



Vytisknout stránku | Zavřít okno