PDA

View Full Version : Fillet multiple pline objects?



CAD Brad
2009-11-24, 06:08 PM
I am working on a lisp routine and I just hit a wall. I have multiple rectangles or plines I need to fillet all at the same time (in a single user selection). Changing color and layer was no problem but for some reason I can't get it to fillet more than one object. Anyone know a work around?

PS Add MENOTE to your layers or the routine will fail.



(defun c:aeoutline()
(setq oldf (getvar "filletrad"))
(setvar "filletrad" 12)
(setq OBJ(ssget (entsel "\nPick pline or rectangle to convert to detail border:")))
(command "FILLET" "P" OBJ "" "CHANGE" OBJ "" "P" "COLOR" "MAGENTA" "LA" "MENOTE" "LT" "HIDDEN" "")
(setq OBJ nil)
(setvar "filletrad" oldf)
)

rkmcswain
2009-11-24, 06:34 PM
Try looping through your selection set of polylines, and using the Polyline option of the Fillet command. Here is a sample.




(if (setq i 0 ss (ssget '((0 . "POLYLINE,LWPOLYLINE")(-4 . "&")(70 . 1))))
;; ssget code above only selects closed polylines
(progn
(while (< i (sslength ss))
(setq x (ssname ss i))
(command "._fillet" "_P" x)
(setq i (1+ i))
)
)
)

CAD Brad
2009-11-25, 04:32 PM
Thank you very much for the reply rkmcswain. It works perfect. Below is the working lisp we will use.




(defun c:aeoutline ()
(setvar "cmdecho" 0)
(setq oldf (getvar "filletrad"))
(setvar "filletrad" 12)
(princ "Select Callout Border Lines")
(setq
i 0
ss (ssget
)
)
(progn
(while (< i (sslength ss))
(setq x (ssname ss i))
(command "fillet" "P" x)
(command "chprop" x "" "color" "magenta" "ltype" "hidden" "layer" "menote" "")
(setq i (+ 1 i))
)
)
(setq OBJ nil)
(setvar "filletrad" oldf)
(setvar "cmdecho" 1)
)

jamal432585604
2013-04-17, 08:02 PM
Thank you very much for the reply rkmcswain. It works perfect. Below is the working lisp we will use.




(defun c:aeoutline ()
(setvar "cmdecho" 0)
(setq oldf (getvar "filletrad"))
(setvar "filletrad" 12)
(princ "Select Callout Border Lines")
(setq
i 0
ss (ssget
)
)
(progn
(while (< i (sslength ss))
(setq x (ssname ss i))
(command "fillet" "P" x)
(command "chprop" x "" "color" "magenta" "ltype" "hidden" "layer" "menote" "")
(setq i (+ 1 i))
)
)
(setq OBJ nil)
(setvar "filletrad" oldf)
(setvar "cmdecho" 1)
)


Hi CAD Brad,

What I’m looking for is a lisp file that fillets all the CONNECTED selected lines/polylines (multiple)
Is there such lisp?

Thank you

Best

Jamal

marko_ribar
2013-04-18, 12:23 PM
Jamal, I've changed my mintfillet.lsp to include modify option of existing fillet...

My version works with LINE and ARC entities, but above posted codes you may use for filleting POLYLINE entities...

Hope this (http://forums.augi.com/showthread.php?44929-Looking-for-a-routine-for-Multiple-Fillet/page2&p=#13) is what you're looking for...

Regards, M.R.