- 积分
- 4335
- 明经币
- 个
- 注册时间
- 2020-10-30
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
关于 Gu_xl 大师的函数 展点后 Z值为0 的问题
在一段展点程序用调用了Gu_xl 大师的函数 ,但是Z值始终是0 这个问题没找到解决办法 不是道是程序问题还是函数调用问题
请教各位大师
多谢 多谢
- ;;;by Gu_xl 函数源码
- (defun gxl-cs:gcd (inspt height scale / pt blkdef obj);展高程点函数(inspt:插入点,heitht:高程值,scale:缩放比例,xsws:高程注记位数)
- (setvar "CMDECHO" 0)
- (command "layer" "m" "GCD" "c" "1" "" "L" "CONTINUOUS" "" "")
- (if height
- (setq height (rtos height 2 3));3为高程注记位数
- (setq height "")
- )
- (regapp "SOUTH")
-
- ;;;检查字体 "HZ" 是否存在
- (if (not (tblobjname "style" "HZ"))
- (command "style" "HZ" "rs.shx,hztxt.shx" 0 1 0 "" "" "")
- )
- ;;;检查是否存在高程点图块定义
- (if (not (tblobjname "block" "GC200"))
- (progn
- (setq blkdef (vla-Add (vla-get-Blocks (vla-get-ActiveDocument (vlax-get-acad-object))) (vlax-3D-point '(0 0 0)) "GC200"))
- (setq obj
- (vla-AddPolyline
- blkdef
- (vlax-make-variant
- (vlax-safearray-fill
- (vlax-make-safearray vlax-vbdouble (cons 0 5))
- '(-0.2 0 0 0.2 0 0)
- )
- )
- )
- )
- (vla-SetBulge obj 0 1) (vla-SetBulge obj 1 1)
- (vla-put-Closed obj :vlax-true)
- (vla-put-ConstantWidth obj 0.4)
- )
- )
- ;;;插入块
- (entmake (list
- '(0 . "INSERT")
- '(100 . "AcDbEntity")
- '(100 . "AcDbBlockReference")
- '(66 . 1);;;属性跟随标志,1跟随,0不跟随
- (cons 2 "GC200")
- (cons 10 inspt)
- (cons 41 scale)
- (cons 42 scale)
- (cons 43 scale)
- (list -3 '("SOUTH" (1000 . "202101")))
- )
- )
- ;;;插入属性
- (entmake (list
- '(0 . "ATTRIB")
- '(100 . "AcDbEntity")
- '(100 . "AcDbText")
- (cons 10 (setq pt (polar inspt 0 (* 1.2 scale))))
- (cons 40 (* 2.0 scale))
- (cons 50 0)
- (cons 41 0.8)
- (cons 51 0)
- (cons 1 height)
- (cons 7 "HZ")
- (cons 62 1)
- (cons 72 0)
- (cons 11 pt)
- '(100 . "AcDbAttribute")
- (cons 2 "height")
- (cons 70 0)
- (cons 74 2)
- )
- )
- ;;;结束标志
- (entmake '((0 . "SEQEND")))
- (princ)
- )
- ;;;;;;;;;;;;;;;;;;;;
|
|