如果他们是如此的新,他们也不理解你的代码,或者他们已经编写/发布了。。。此外,OP要求指向正确的方向。
... 只是开玩笑。
干杯 很好,hmsilva先生,我认为你对OP的要求有正确的方向
起初我以为OP想在pasteclip中收集插入的文本,直到你通过“重画”解决了这个问题。非常感谢。
谢谢你的指导,但是我会尽量减少在没有ssget的情况下点击。
(defun c:test (/ p au l) ;
;hanhphuc 10/01/2014
(setq p(getpoint "\nNew base point..")
au (mapcar 'getvar '("angbase" "angdir" "aunits"))
) ;_ end of setq
(mapcar 'setvar '("angbase" "angdir" "aunits") (list (* pi 0.5) 1 1)) ; edit: v1.1
(while (and p
(vl-every ''((ss) (and ss (atof ss)))
(setq l (mapcar ''((x)
(if
x
(cdr (assoc 1 (entget (car x))))
)
)
(list (entsel "\nPick Bearing text: ") (entsel "\nPick Distance text: "))
) ;_ end of mapcar
) ;_ end of mapcar
) ;_ end of vl-every
(wcmatch (car l) "*%%*")
(not (zerop (atof (cadr l))))
(setq l (vl-list*
(subst ('((%) (vl-string-subst (chr 176) (substr % (1+ (vl-string-search "%" %)) 3) %)) (car l))
(car l)
l
) ;_ end of subst
) ;_ end of vl-list*
) ;_ end of setq
) ;_ end of and
(entmakex
(list '(0 . "LINE")
(cons 10 p)
(cons 11 (setq p (apply 'polar (vl-list* p (list (angtof (car l) 1) (atof (cadr l)))))))
) ;_ end of list
) ;_ end of entmake
) ;_ end of defun
(mapcar 'setvar '("angbase" "angdir" "aunits") au)
(princ)
) ;_ end of defun
FWIW-我真的在和hmsilva开玩笑。
... 我个人更喜欢点击(或右键单击),而不是按顺序选择文本实体。
我当然希望用户不要错过,并且他们在第一次尝试时选择了正确的对象。
干杯 我必须同意你!
指出了正确的方向。。。。
真正地
我整晚都在飞,想着这件事睡不着觉。。。
干杯,我的朋友!
亨里克 了不起的亨里克!
有没有办法把这个代码也用于半径和距离?
我附上一个例子。
非常感谢。
实例图纸
Sinto muito,meu amigo。Tenha cuidado,calças Mentiroso em chamas。
被抓住了。。。 感谢BlackBox,只是为了澄清,我想用它来检查错误闭合错误以及重新绘制。因此,它必须是一对角度和距离,而不仅仅是一对。我想一定有某种“结束”输入,所以程序停止要求进一步的文本实体输入,并生成线条。
这个网页很好地解释了错误关闭。页面的下半部分有两个数字。
http://www.gvec.net/txsurvey/fn.html
(当然,我喜欢公制单位,所以没有英制单位!)
“多段线”线条可能会适当闭合以形成“多边形”,但文字表示这不是由于圆角。文本标签必须四舍五入到一定精度(例如:角度最接近10秒,厘米最接近)。
非常感谢大家的努力,我喜欢将其写入临时文件或列表的想法。我认为应该稍后定义起点,但我可以根据你们编写的代码进行调整。我希望在定义起点之前,整个线条的“重影”形状是可见的,例如在剪切和粘贴片段中。使用autolisp可以这样做吗? 别担心;我没有看到您正在使用的图像或图形,但假设四个文本实体通常在各自的对中并置,在执行相同的任务(识别哪些包含%%d)之前,还要评估哪些是最接近的,这是一项相对简单的任务。
干杯
[编辑]-对于绘制单个线段,可以使用瞬态图形或PLINE命令,并使用公共CMDACTIVE SysVar检查暂停。 谢谢大师,我需要一些时间来解读你们写的东西。
页:
1
[2]