良好的建筑制图习惯是建筑师必备要求。
而线就是最基本的图元。
线对应的轴线是整个建筑平面最基本的东西。
在一般直线取整的基础上增加标识未取整的代码,用于强迫其他专业的条件,特别针对结构专业的柱子。
各种定位基于轴网,柱网。- (defun c:gz2 ( / ss i en ent pt10 pt11 pt10_x pt11_x x y)
- (setq i 0)
- (if (setq ss (ssget '((0 . "line"))))
- (repeat (sslength ss)
- (setq en (ssname ss i)
- ent (entget en)
- )
- (setq pt10 (cdr (assoc 10 ent))
- x (/ (car pt10) 100)
- y (/ (cadr pt10) 100)
- x (quzheng x)
- y (quzheng y)
- x (* x 100)
- y (* y 100)
- pt10_x (list x y)
- )
- (setq pt11 (cdr (assoc 11 ent))
- x (/ (car pt11) 100)
- y (/ (cadr pt11) 100)
- x (quzheng x)
- y (quzheng y)
- x (* x 100)
- y (* y 100)
- pt11_x (list x y)
- )
- (if (not (equal '(pt10_x pt11_x) '(pt10 pt11)))
- (progn
- (setq ent (subst (cons 10 pt10_x )(assoc 10 ent) ent))
- (setq ent (subst (cons 11 pt11_x )(assoc 11 ent) ent))
- (entmod ent)
- (command "line" pt10 pt11 "")
- )
- )
- (setq i (1+ i))
- )
- )
- (princ)
- )
- (Defun quzheng(n)
- (if (equal (fix (+ 0.499999 n)) (fix n) 0.000001)
- (+ 0.5 (fix n))
- (fix (+ 0.5 n))
- )
- )
|