Solved! Go to Solution.
Solved by Kent1Cooper. Go to Solution.
@mxsm wrote:
.... We locate one side of the wall and then draw it with three polylines: two "Continuous" plines for the wall faces and a "Hidden" linetype pline, color 8, with the width of the wall. ....
Assuming I understand correctly without a picture, give this quickie a try [minimally tested]:
(defun C:W3 (/ wid edge side); = Wall of 3 Polylines [center one with width, Hidden linetype, color 8]
(setq wid (getdist "\nWall width: "))
(command "_.pline" pause "_width" 0 0)
(while (> (getvar 'cmdactive) 0) (command pause)); draw Polyline
(setq edge (entlast))
(command
"_.offset" wid edge (setq side (getpoint "\nPoint toward other side of wall: ")) ""
"_.offset" (/ wid 2) edge side ""
"_.chprop" "_last" "" "_color" 8 "_ltype" "hidden" ""
); command
(entmod (append (entget (entlast)) (list (cons 43 wid))))
); defun
It includes the drawing of one side of the wall within it, so it would need to be altered if you want to select an already-drawn edge. It could use the usual bells and whistles, and could also be enhanced, such as to remember the wall width to offer as a default on subsequent use, and/or to take you to a specific Layer, and so on.