将尺寸图片转换为n
你好,我试图修改一个直径维度,它有一个块引用,组成了它的图片,并将其转换为其本机视图。如果您能仔细检查所附的图纸,您可以看到从Revit导出的示例尺寸,我到目前为止所取得的成果和所需的结果并排显示。
使用以下代码,我成功地在维度“block”中循环,找到多行文字对象及其插入点。然后,我用手头的插入点修改“维度”的文本位置,但不知何故,文本的对齐方式发生了变化,我无法获得所需的方向。
我非常感谢您的帮助,使其尽可能接近原始视图。谢谢
(defun c:fixdim()
(setq dim (car(entsel)))
(setq dim-obj (vlax-ename->vla-object dim))
(setq dimtxtloc (get-dimblktxtloc dim))
(setq s-array (vlax-make-safearray vlax-vbdouble '(0 . 2)))
(vla-put-textposition dim-obj (vlax-safearray-fill s-array dimtxtloc))
)
(defun get-dimblktxtloc (dim-ename)
(setq dim-entity (vl-catch-all-apply 'entget (list dim-ename)))
(cond
((not (vl-catch-all-error-pdim-entity))
(setq dim-blockname (cdr (assoc 2 dim-entity)))
(setq blk-object (get-dimblkobj dim-blockname))
(cond
((not (vl-catch-all-error-pblk-object))
(vlax-for subobj blk-object
(cond
((= (vla-get-objectname subobj) "AcDbMText")
(setq blk-txtloc (safearray-value (vlax-variant-value (vla-get-insertionpoint subobj))))
)
)
)
)
)
)
)
blk-txtloc
)
(defun get-dimblkobj (blockname)
(vl-catch-all-apply 'vla-item (list (vla-get-blocks (vla-get-ActiveDocument (vlax-get-acad-object))) blockname))
)
尺寸图片。图纸
页:
[1]