@lamensterms that was everything that I need
I've modyfied code form lisp1 (pof1) to:
- (defun c:pof3 (/ plines ; selection set of polylines ext ; extrnal point poly1 ; a polyline from plines poly2 ; a polyline from plines poly3 ; a polyline from plines poly4 ; a polyline from plines extr1 ; a extrude from plines extr2 ; a extrude from plines extr3 ; a extrude from plines extr4 ; a extrude from plines plist ; the list of poly del ; polyline to delete int ; internal point i) (command "undo" "begin") (princ "select polylines") (setq plines (ssget)i 0ext (getvar "limmax") ) (repeat (sslength plines) (setq poly1 (ssname plines i)) (setq plist (entget poly1)) (command "_offset" 0.8 poly1 ext "") (setq poly2 (ssget "_L")) (command "_extrude" poly1 "" 12 "") (setq extr1 (ssget "_L")) (command "_offset" 0.4 poly2 ext "") (setq poly3 (ssget "_L")) (command "_extrude" poly2 "" 12 "") (setq extr2 (ssget "_L")) (command "_offset" 4.8 poly3 ext "") (setq poly4 (ssget "_L")) (command "_extrude" poly3 "" 5 "") (setq extr3 (ssget "_L")) (command "_extrude" poly4 "" 2 "") (setq extr4 (ssget "_L")) (command "_subtract" extr2 extr3 extr4 "" extr1 "") ))
everything works great Maybe code is not the simplest but its works |