设置Ord位置的例程
嘿伙计们,只是想知道是否有人可以帮我得到以下代码工作?
(DEFUN C:fRD ()
(prompt "\n Select DIMENSIONS to fix offset...")
(Setq ss (ssget '((0 . "DIMENSION") (-4 . "<OR") (70 . 38) (70 . 102) (70 . 166) (-4 . "OR>"))))
(setq gpt1 (getpoint))
(setq num (sslength ss));n° object
(setq con 0)
(repeat num
(setq ent3A (ssname ss con))
(setq con (1+ con))
(setq vObje (vlax-ename->vla-object ent3a))
(vlax-put-property vObje 'TEXTPOSITIONY (CADR GPT1))
)
(princ)
)
目的是能够选择一组坐标标注,然后选择一个点,该新点的Y值将分配给所选坐标标注的“文字位置Y”。。。我希望这有意义。
我遇到的问题是我不知道TEXTPOSITIONY的正确变量名,所以我想知道是否有人可以启发我?或者,如果有人知道一个资源,其中列出了所有活动X变量,那也太好了。
非常感谢您的帮助,期待回音。
更换此零件。
(vlax-put-property vObje 'TEXTPOSITION (vlax-3d-point (list (car (cdr (assoc 14 (entget ent3A)))) (cadr gpt1))))
养成将变量本地化的习惯,以避免在值-变量之间进行干预。 啊,太棒了,非常感谢你的Tharwat。是的,这是我的一个坏习惯,不本地化的变量,我会这样做,虽然哈哈。
再次感谢您的帮助。
不客气,我很乐意帮忙 你好,塔瓦,
经过更多的测试,我已经让代码完全按照我想要的方式工作了——再次感谢你的帮助。
(DEFUN C:fRD ( / ss gpt1 num con ent3A vObje )
(command "ucs" "W")
(prompt "\n Select DIMENSIONS to fix offset...")
(if (Setq ss (ssget '((0 . "DIMENSION") (-4 . "<OR") (70 . 38) (70 . 102) (70 . 166) (70 . 230) (-4 . "OR>"))))
(progn
(setq gpt1 (getpoint))
(setq num (sslength ss));n° object
(setq con 0)
(repeat num
(setq ent3A (ssname ss con))
(setq con (1+ con))
(setq vObje (vlax-ename->vla-object ent3a))
(vlax-put-property vObje 'TEXTPOSITION (vlax-3d-point (list (car (cdr (assoc 11 (entget ent3A)))) (cadr gpt1))))
)
)
)
(command "ucs" "p")
(princ)
)
我所做的一个改变是将ASSOC与DXF代码11一起使用,因为这似乎在文本的基点方面产生了更好的结果。你觉得这样对吗? 在对象上使用dump选项可以显示您要查找的变量名,通常与属性中显示的变量名略有不同。
; text移动=2
; text外部对齐=0
; TextOverride=“”
; text位置=(351.838 301.785 0.0)
; TextPrefix=“”
; text旋转=0.0
; TextStyle=“ISO2.5”
;;; Dump all methods and properties for selected objects ;
;;;===================================================================;
;;; DumpIt ;
;;;-------------------------------------------------------------------;
;;;===================================================================;
(defun C:DumpIt ( / ent)
(while (setq ent (entsel))
(vlax-Dump-Object
(vlax-Ename->Vla-Object (car ent))
)
)
(princ)
)
不客气。
是的,为了确认我的方法和你的方法,请看这里。
BIGAL,要同时拥有这些方法,您应该将T添加到vlax dump对象函数。请参见此处。 谢谢Tharwat修补了我从中复制的版本,并添加了T以供将来使用。 太棒了,谢谢塔瓦和比格尔的帮助。 很乐意帮助大家。
页:
[1]