kan iemand mij een paar uur tijd besparen, door het commando FILLET toe te passen op zo'n 3000-tal polylines tegelijkertijd?
previous werkt blijkbaar niet tijdens de selectie-input van dit commando...
is dit te omzeilen?
thanks
Jo-KING
Je kunt de optie fence gebruiken.
overkill kan ook pline's aansluiten met de juiste settings
Citaat van: Joop op di 22 04 2008, 12:04:11
Je kunt de optie fence gebruiken.
idd, maar dan FILLET't acad enkel de eerste polyline in de fence-selectie... dus eigenlijk niet toepasbaar voor MULTI-fillet
Citaat van: bart op di 22 04 2008, 14:55:52
overkill kan ook pline's aansluiten met de juiste settings
aansluiten.. ja, maar de polylines zijn al "CLOSED"... ik moet alle hoeken FILLET-ten...
dat kan niet met overkill.
Als je FILLET intikt, dan heb je de optie Polyline.
Als je deze actief maakt, hoef je enkeld een polyline aan te klikken en doet ie automatisch alle hoeken filleten.
(Waarschijnlijk wil je fillet radius toepassen, dus dien je eerst de radius in te stellen.)
Helaas zal je polyline voor polyline moeten aan klikken.
(Misschien is e.e.a. in een macro te vatten, zal zo eens iets uit proberen!)
Richard
En hierbij een super eenvoudig macro-tje
*^C^C_f;r;50;;p;
* = herhaal commando
_f = fillet commando
r = radius
50 = waarde radius
p = polyline.
Deze macro stopt pas nadat je op Esc. gedrukt hebt.
Heb je hier iets aan?
Richard
probeer eens :
(defun c:MPL_Fillet (/ ss en rad n)
(setq rad (getvar "FILLETRAD"))
(initget (+ 1 4 8 64 128))
(if (/= ""
(setq rad
(getdist (strcat "Enter fillet radius <" (rtos rad) ">: "))
) ;_ end of setq
) ;_ end of =
(setvar "FILLETRAD" rad)
) ;_ end of if
(prompt "\nSelect the polylines you'd whish to fillet: ")
(setq ss (ssget '((0 . "LWPOLYLINE,POLYLINE")))
n 0
) ;_ end of setq
(while (< n (sslength ss))
(setq en (ssname ss n))
(command "_FILLET" "P" en)
(setq n (1+ n))
) ;_ end of while
(princ)
) ;_ end of defun
Citaat van: Manu op wo 23 04 2008, 13:18:12
probeer eens :
(defun c:MPL_Fillet (/ ss en rad n)
(setq rad (getvar "FILLETRAD"))
(initget (+ 1 4 8 64 128))
(if (/= ""
(setq rad
(getdist (strcat "Enter fillet radius <" (rtos rad) ">: "))
) ;_ end of setq
) ;_ end of =
(setvar "FILLETRAD" rad)
) ;_ end of if
(prompt "\nSelect the polylines you'd whish to fillet: ")
(setq ss (ssget '((0 . "LWPOLYLINE,POLYLINE")))
n 0
) ;_ end of setq
(while (< n (sslength ss))
(setq en (ssname ss n))
(command "_FILLET" "P" en)
(setq n (1+ n))
) ;_ end of while
(princ)
) ;_ end of defun
Prachtige oplossing, vergeet mijn macro maar! :)
Citaat van: jo-king op wo 23 04 2008, 10:29:09
Citaat van: bart op di 22 04 2008, 14:55:52
overkill kan ook pline's aansluiten met de juiste settings
aansluiten.. ja, maar de polylines zijn al "CLOSED"... ik moet alle hoeken FILLET-ten...
dat kan niet met overkill.
oke dat was me niet helemaal duidelijk
ik gebruik fillet zelf heel vaak om (p)line's aan te sluiten vandaar
Citaat van: Manu op wo 23 04 2008, 13:18:12
probeer eens :
(defun c:MPL_Fillet (/ ss en rad n)
(setq rad (getvar "FILLETRAD"))
(initget (+ 1 4 8 64 128))
(if (/= ""
(setq rad
(getdist (strcat "Enter fillet radius <" (rtos rad) ">: "))
) ;_ end of setq
) ;_ end of =
(setvar "FILLETRAD" rad)
) ;_ end of if
(prompt "\nSelect the polylines you'd whish to fillet: ")
(setq ss (ssget '((0 . "LWPOLYLINE,POLYLINE")))
n 0
) ;_ end of setq
(while (< n (sslength ss))
(setq en (ssname ss n))
(command "_FILLET" "P" en)
(setq n (1+ n))
) ;_ end of while
(princ)
) ;_ end of defun
Manu... u bent mijn held!
van mij mag jij de wisselbeker van CADsite.be dit jaar hebben :)
jo-king... eerlijk is eerlijk..,
de lisp is het resultaat van wat doelgericht Googelen.. ik weet jammer genoeg niet wie de auteur is...
Maar die wisselbeker ruil ik ooit wel in voor een frisse pils... deal :wink: ?
groeten,
Manu