伙计们,
我得到了这段代码,要做多次偏移,效果很好,但我需要做一个补充,即最终对象的方向,代码不允许你选择它,每次代码在对象上方绘制偏移线,有可能修复它吗?指示终点偏移线的方向。。。
提前感谢。。。
- (defun c:mo (/ plines ; selection set of polylines
- ext ; extrnal point
- dist ; distance to offset
- poly ; a polyline from plines
- plist ; the list of poly
- del ; polyline to delete
- int ; internal point
- i
- layer)
- (command "undo" "begin")
- (princ "select polylines")
- (setq plines (ssget)
- i 0
- ext (getvar "limmax")
- dist (getdist "distance = ")
- )
- (repeat (sslength plines)
- (setq poly (ssname plines i))
- (setq plist (entget poly))
- (command "offset" dist poly ext "")
- ;(setq del (entlast)
- ;int (polar
- ;(cdr (assoc 10 (entget del)))
- ;(angle
- ;(cdr (assoc 10 (entget del)))
- ;(cdr (assoc 10 plist)))
- ;(* 2 (distance (cdr (assoc 10 plist))
- ;(cdr (assoc 10 (entget del)))))))
- ;(command "offset" dist poly int "")
- ;(entdel del)
- (setq i (1+ i))
- )
- (command "undo" "end")
- (if (= "Y"
- (strcase (getstring "\ndelete initial polylines? (Y/N) = "))
- )
- (command "erase" plines "")
- )
- )
|