hallo,
weet er iemand een autoLISP die ervoor zorgt dat een tekening helemaal Explodeerd word?
groetjes
steve
Met de volgende code, verschillende keren herhaling, moet een gemiddelde tekening lukken.
Wees voorzichtig! Alleen gebruiken op kopie van orginele tekening!(command "explode" "all" "explode" "all" "explode" "all" "explode" "all" )
Er is een nadeel: ook het titelblock wordt geexplodeerd en ook alle polylijnen.
Nog een nadeel: de attributen van blokken verliezen hun waarde.
(command "burst" "all" "explode" "all" "burst" "all" "explode" "all" "burst" "all" "explode" "all" "burst" "all" "explode" "all")
op deze manier worden de atributen tekst.
(je moet wel express tools geinstalleerd hebben)
Heb ik geprobeerd maar de attributen worden normaal geexplodeerd. dus niet naar text. :?:
handmatig werkt het gewoon dus moet kunnen
Citaat van: Stevehallo,
weet er iemand een autoLISP die ervoor zorgt dat een tekening helemaal Explodeerd word?
groetjes
steve
Beste Steve,
Je kunt met AutoLISP toch af checken, wat je eventueel wel en wat je niet
geexplodeerd wilt hebben.
Door dit in een loop te zetten, kun je precies bepalen hoever je wilt gaan
met het exploderen.
Groetjes HofCAD
CS
I
hallo allemaal,
de bovenstaande codes werken niet als we ze in onze LISP-file zetten. Als we gewoon in het command-window typen :explode all dan doet hij het wel. Maar vanaf dat we de code in de LISP zetten werkt het niet meer. Doe ik iets verkeerd dan?
groetjes
Steve
Citaat van: HofCADCitaat van: Stevehallo,
weet er iemand een autoLISP die ervoor zorgt dat een tekening helemaal Explodeerd word?
groetjes
steve
Beste Steve,
Je kunt met AutoLISP toch af checken, wat je eventueel wel en wat je niet
geexplodeerd wilt hebben.
Door dit in een loop te zetten, kun je precies bepalen hoever je wilt gaan
met het exploderen.
Groetjes HofCAD CSI
Beste Steve,
Het onderstaand 'niet volledig uitgewerkt' idee had ik mijn gedachten. 8)
Bij dit idee kun je bijv. maken dat je blocks met attributen niet laat
exploderen. :lol:
Sluit dit dan niet aan bij je gedachte, dan wil ik dat graag van je horen. :roll:
Door dat ik blond ben, begrijp ik mensen niet altijd. :oops:
Groetjes HofCAD
CS
IPS Als je AutoCAD 2005 gebruikt, kun je me dan melden of dat daar
bij het commando -EATTEXT de vraag gesteld wordt:
'Do you want to use a template? [Yes/No](defun c:boem( / s1 i en)
(command "select" "ALL" "")
(setq s1 (ssget "P"))
(setq i 0)
(repeat (sslength s1)
(setq en (cdr (cadr (entget (ssname s1 i)))))
(if (or (= en "POLYLINE") (= en "LWPOLYLINE") (= en "INSERT")
(= en "MTEXT") (= en "LEADER")(= en "MLINE"))
(command "_EXPLODE" (ssname s1 i)))
(setq i (1+ i))
)
)
Command: -EATTEXT
Enter the extraction type, [Objects/Currentdwg/Selectdwg] <Currentdwg>:
Extract data from external reference drawing? [Yes/No] <Y>:
Extract data from nested blocks? [Yes/No] <Y>:
Do you want to use template? [Yes/No] <Y>:
Enter Template file path:
Enter the output filetype[Csv/Txt/Xls/Mdb] <Csv>:
Enter output filepath:
Do you want to write to C:\Documents and Settings\Bart\Mijn documenten.csv ?
[Yes/No] <Y>:
commandline uitvoer versie 2005
ja de vraag wordt gesteld
hallo,
het programma van HofCAD is goed, maar het kan geen dimensies exploderen?
groetjes
en alvast bedankt
steve
Citaat van: Stevehallo,
het programma van HofCAD is goed, maar het kan geen dimensies exploderen?
groetjes
en alvast bedankt
steve
Beste Steve,
Mijn programma was slechts een voorstel, want er zijn meerdere
dingen niet uitgewerkt.
Bijv. als de entiteit of het object een block is (= en "INSERT")
dan moet er eventueel gekeken worden of er attributen in zitten.
Verder moet ook de inhoud van het block eventueel geexplodeerd
worden, en moet ook de inhoud van een leader eventueel geexplodeerd
worden.
Ook kan bijv. de inhoud van een region bij disjuncte gebieden regions
opleveren, en enz. ..........
Dat ik dimensies niet meegenomen had, dat komt omdat ik blond ben. :oops:
Maar dat van dimensies is makkelijk op te lossen, zie onder.
Groetjes HofCAD
CS
I(defun c:boem( / s1 i en)
(command "select" "ALL" "")
(setq s1 (ssget "P"))
(setq i 0)
(repeat (sslength s1)
(setq en (cdr (cadr (entget (ssname s1 i)))))
(print en)
(if (or (= en "POLYLINE") (= en "LWPOLYLINE") (= en "INSERT")
(= en "MTEXT") (= en "LEADER")(= en "MLINE") (= en "DIMENSION")
(= en "HATCH") (= en "REGION") (= en "3DSOLID")(= en "BODY")
(= en "IMAGE"))
(command "_EXPLODE" (ssname s1 i)))
(setq i (1+ i))
)
)
PS Zie ook
http://www.cadsite.be/smf/index.php/topic,3271.0.html
hallo hofCAD,
merci merci merci:-)
het werkt perfect!!
groetjes en waarschijnlijk tot de volgende vraag ;-)
Steve