CADsite forum

AutoCAD => AutoCAD probleem => Topic gestart door: jo-king op di 22 04 2008, 10:19:46

Titel: multi fillet
Bericht door: jo-king op di 22 04 2008, 10:19:46
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
Titel: Re: multi fillet
Bericht door: Joop op di 22 04 2008, 12:04:11
Je kunt de optie fence gebruiken.
Titel: Re: multi fillet
Bericht door: bart op di 22 04 2008, 14:55:52
overkill kan ook pline's aansluiten  met de juiste settings
Titel: Re: multi fillet
Bericht door: jo-king op wo 23 04 2008, 10:27:48
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
Titel: Re: multi fillet
Bericht door: 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.
Titel: Re: multi fillet
Bericht door: hulpje op wo 23 04 2008, 12:19:14
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
Titel: Re: multi fillet
Bericht door: hulpje op wo 23 04 2008, 13:08:18
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
Titel: Re: multi fillet
Bericht door: 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
Titel: Re: multi fillet
Bericht door: hulpje op wo 23 04 2008, 13:57:16
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!   :)
Titel: Re: multi fillet
Bericht door: bart op wo 23 04 2008, 14:06:01
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
Titel: Re: multi fillet
Bericht door: jo-king op wo 23 04 2008, 15:06:00
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 :)
Titel: Re: multi fillet
Bericht door: Manu op wo 23 04 2008, 16:31:40
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