BlackBox 发表于 2022-7-5 22:56:52

 
如果他们是如此的新,他们也不理解你的代码,或者他们已经编写/发布了。。。此外,OP要求指向正确的方向。
 
 
 
... 只是开玩笑。
 
干杯

hanhphuc 发表于 2022-7-5 22:59:25

很好,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

BlackBox 发表于 2022-7-5 23:01:56

 
FWIW-我真的在和hmsilva开玩笑。
 
 
 
 
... 我个人更喜欢点击(或右键单击),而不是按顺序选择文本实体。
 
 
 
 
我当然希望用户不要错过,并且他们在第一次尝试时选择了正确的对象。
 
干杯

hmsilva 发表于 2022-7-5 23:06:16

我必须同意你!
指出了正确的方向。。。。
 
真正地
我整晚都在飞,想着这件事睡不着觉。。。
 
干杯,我的朋友!
亨里克

Madruga_SP 发表于 2022-7-5 23:09:43

了不起的亨里克!
 
有没有办法把这个代码也用于半径和距离?
 
我附上一个例子。
 
非常感谢。
 
实例图纸

BlackBox 发表于 2022-7-5 23:10:03

 
 
 
 
Sinto muito,meu amigo。Tenha cuidado,calças Mentiroso em chamas。

hmsilva 发表于 2022-7-5 23:13:49

 
 
被抓住了。。。

wing 发表于 2022-7-5 23:17:33

感谢BlackBox,只是为了澄清,我想用它来检查错误闭合错误以及重新绘制。因此,它必须是一对角度和距离,而不仅仅是一对。我想一定有某种“结束”输入,所以程序停止要求进一步的文本实体输入,并生成线条。
 
这个网页很好地解释了错误关闭。页面的下半部分有两个数字。
 
http://www.gvec.net/txsurvey/fn.html
(当然,我喜欢公制单位,所以没有英制单位!)
 
 
“多段线”线条可能会适当闭合以形成“多边形”,但文字表示这不是由于圆角。文本标签必须四舍五入到一定精度(例如:角度最接近10秒,厘米最接近)。
 
非常感谢大家的努力,我喜欢将其写入临时文件或列表的想法。我认为应该稍后定义起点,但我可以根据你们编写的代码进行调整。我希望在定义起点之前,整个线条的“重影”形状是可见的,例如在剪切和粘贴片段中。使用autolisp可以这样做吗?

BlackBox 发表于 2022-7-5 23:19:46

别担心;我没有看到您正在使用的图像或图形,但假设四个文本实体通常在各自的对中并置,在执行相同的任务(识别哪些包含%%d)之前,还要评估哪些是最接近的,这是一项相对简单的任务。
 
干杯
 
 
 
[编辑]-对于绘制单个线段,可以使用瞬态图形或PLINE命令,并使用公共CMDACTIVE SysVar检查暂停。

wing 发表于 2022-7-5 23:23:52

谢谢大师,我需要一些时间来解读你们写的东西。
页: 1 [2]
查看完整版本: 将文本信息解析为