Lee Mac 发表于 2022-7-5 18:24:36

DXF组10仅适用于对正设置为左侧的文本。

Simon1976 发表于 2022-7-5 18:29:49

附加文件图标在哪里?
 
 
编辑
 
 
啊,刚刚看到李的帖子
 
 
理由设置为ML&我从未注意到。将对正设置为“开始”&它可以工作

Tharwat 发表于 2022-7-5 18:32:21

嗨,西蒙,
 
这里是对之前编写的相同程序的新修改,以包括各种理由。
 

(defun c:Test(/ sel int obj lst txt srt p c l e v lf rt)
;;====================================================;;
;; Author: Tharwat Al Shoufi. Date: 12.Apr.2016            ;;
;; move single text objects to nearest line with 1.0        ;;
;; unit away from Y Axe.                                ;;
;;====================================================;;
(if (setq sel (ssget "_:L" '((0 . "LINE,TEXT"))))
   (repeat (setq int (sslength sel))
   (if (eq "LINE" (cdr (assoc 0 (entget (setq obj (ssname sel (setq int (1- int))))))))
      (setq lst (cons obj lst))
      (setq txt (cons obj txt))
      )
   )
   )
(if (and lst txt)
   (mapcar
   '(lambda (xt)
      (setq l nil
            e (entget xt)
            v (vlax-ename->vla-object xt)
            )
      (vla-getboundingbox v 'lf 'rt)
      (setq p (vlax-safearray->list lf))
      (mapcar '(lambda (n)
                   (setq c (vlax-curve-getclosestpointto n p)
                         l (cons (list (distance c p) c) l)
                         )
                   )
                lst
                )
      (vlax-invoke v 'move p (if (< (cadr (cadar (setq srt (vl-sort l '(lambda (j k) (< (car j) (car k))))))) (cadr p))
                                 (polar (cadar srt) (* pi 0.5) 1.0)
                                 (polar (cadar srt) (* pi 1.5) (1+ (cdr (assoc 40 e))))
                                 )
          )
      )
   txt
   )
   )
(princ)
)(vl-load-com)

 
关于你关于如何将文件附加到线程的问题,请看右手向下一点,看到按钮前进,点击按钮,然后从新页面上你可以看到许多选项,而不仅仅是附件。
 
祝你好运

Grrr 发表于 2022-7-5 18:36:56

太棒了,塔瓦
我必须提到,它也适用于多行文字!

Tharwat 发表于 2022-7-5 18:40:49

 
非常感谢。
 
 
是的,你说得对-该程序现在也应该能够处理多行文字对象。

Simon1976 发表于 2022-7-5 18:44:00

最棒的塔尔瓦!真的非常感谢
在我的脑海里,我想知道是否可以使用边界框方法,或者是否可以简单地将所有(普通)文本项设置为左对齐。但我还没有时间去想它。
我希望你不要生气,但我补充道:
thgt (cdr (assoc 40 (entget xt)))并替换:
4
真的是我的错,在编写原始lisp时,我没有整理更大的文本,这需要大于1个单位的偏移量才能合理显示
 
 
哦。”Go Advanced“我从没试过那个按钮谢谢你的信息
 
编辑:
我还没弄明白你是怎么找到哪条线最近的!

Tharwat 发表于 2022-7-5 18:48:08

你是最受欢迎的西蒙,我很高兴,我的程序按预期工作。
 
毫无冒犯之意,请随意修改您希望从程序中获得的关于原始作者的部分,我们将不胜感激。
 
快乐的编码。
页: 1 [2]
查看完整版本: 将文本项移动到(偏移量