pBe 发表于 2022-7-6 08:24:35

将对象附着到标注

我之前写过这段代码。在尺寸字符串上插入直径符号作为前缀。但不是%%c,而是一个正方形符号,带有一条模拟直径符号的线
 
(defunc:test (/ aDoc selset e str data p1 )
(defun MtexInfo ( mt /db dl ds );;LM snippet
(if
   (and
   (wcmatch (cdr (assoc 0 (setq dl (entget mt)))) "*DIMENSION")
   (setq db (tblobjname "BLOCK" (cdr (assoc 2 dl))))
   )
   (while (and (setq db (entnext db)) (not ds))
   (if (eq "MTEXT" (cdr (assoc 0 (setq dl (entget db)))))
       (setq ds (mapcar '(lambda (j)
                                 (cdr (assoc j dl))) '(42 43 50 7 10))))
   )
   ) ds
)   
(setq aDoc (vla-get-ActiveDocument (vlax-get-acad-object)))
(if (setq selset (ssget '((0 . "DIMENSION"))))
   (repeat (sslength selset)
   (setq e   (vlax-ename->vla-object (ssname selset 0))
       )
       (vla-put-Textprefix e
         "{\\Fgdt|c0;\\H0.75x;o} "
         )
   (setq data (mtexinfo (ssname selset 0)))
   (entmakex
       (list (cons 0 "LINE")
         (cons 10 (setq p1
            (polar (polar
                  (last data)
                  (+ pi (caddr data))
                  (-
                  (/ (car data) 2.0)
                  (*
                      (/ (cadr data) 2.0)
                      (* (cdr
                           (assoc 41 (tblsearch "STYLE" (nth 3 data)))
                           )
                         0.75
                         )
                      )
                  )
                  )
                (+ (* pi 1.5) (caddr data))
                (/ (cadr data) 2.0)
                )
             )
         )
         (cons 11 (polar p1 (+ (/ pi 2.0) (caddr data)) (cadr data)))
         )
       )

   (ssdel (ssname selset 0) selset)
   )
   )
(princ)
)
 
问题是,如何将线(|)与维度联系起来?我对reactor有点生疏,在我确定通过object reactor是最好(或唯一)的方法之前,我不愿意继续编码。
 
有什么想法吗?

ReMark 发表于 2022-7-6 08:40:54

符号是平方英尺?难道没有一种字体已经将其作为其字符集的一部分了吗?

pBe 发表于 2022-7-6 08:54:05

 
我肯定有。。但AFAICT仅限于特定的字体类型。需要一个可以从“开箱即用”/非定制cad包中使用的,而且不确定要去哪里找

pBe 发表于 2022-7-6 09:02:53

哇。。我很惊讶这个查询没有得到任何回复建议/建议
 
无论如何。。。我想我暂时搁置这段代码
 
谢谢

flopo 发表于 2022-7-6 09:16:23

我很想帮你,pBe,但我不能

Lee Mac 发表于 2022-7-6 09:30:21

也许这个程序会为你指明正确的方向,它也将一个物体与另一个物体联系起来。
页: [1]
查看完整版本: 将对象附着到标注