DWG文件重新上传为v2013。谢谢你指出这一点。我刚换了一台新的笔记本电脑(显然不是很好)。
我去掉了abs,并反转了两个变量ppPos和bsPos,因此偏差显示为从提议到设计,而不是从设计到提议。这是可行的,并且确实在需要的地方显示了负号,但我被如何在那里放置加号以显示正偏差所困扰-我知道假设没有符号的数字是正的,但我只是认为在这种情况下看起来会更好。
这就是我所处的位置:
- ; Original code by ASMI (Deviation_Tag.LSP) - CADTutor
- ; Badly butchered by Demesne 11/07/18
- (defun c:devbox( / *error* oldEcho ppPos bsPos deVal insBl)
- (defun *error* (msg)
- (setvar "CMDECHO" oldEcho)
- ); end of *error*
-
- (defun +rtos (x u p)
- (strcat
- (if (> x 0)
- "+"
- "")
- (rtos x u p)
- )
- )
-
- (setq oldEcho(getvar "cmdecho"))
- (setvar "CMDECHO" 0)
-
- (setq bsPos(getpoint "\nPick proposed position > "))
- (setq ppPos(getpoint "\nPick as-built position > "))
-
- (setq deVal(mapcar '- ppPos bsPos))
-
- (setq insBl "Deviation_BOX")
-
- (if
- (not(tblsearch "block" insBl))
- (progn
- (if
- (setq blPath(findfile(strcat insBl ".dwg")))
- (command "-insert" blPath "_s" "1" pause "0"
- (+rtos(*(car deVal)1000)2 0)
- (+rtos(*(cadr deVal)1000)2 0))
- (alert(strcat "\n*** File " (strcat insBl ".dwg") " not found! *** "))
- ); end if
- ); end progn
- (command "-insert" insBl "_s" "1" pause "0"
- (+rtos(*(car deVal)1000) 2 0)
- (+rtos(*(cadr deVal)1000) 2 0))
- ); end if
-
- (setvar "cmdecho" oldEcho)
- (princ)
- ); end of c:devbox
|