品茗新秀 发表于 2012-8-27 12:42:46

求将门窗标注移到门窗图中心点的lsp源码

本帖最后由 品茗新秀 于 2012-8-29 18:54 编辑

求将门窗标注移到门窗图中心点的的程序
有时为了方便查图,将门窗标注移至门窗图中点,图面更简洁,查图完毕后,再用撤消返回原图(如能再将门窗标注再返回原图位置更佳)。

原图



达到效果








yjr111 发表于 2012-8-27 12:42:47

品茗新秀 发表于 2012-8-28 23:17 static/image/common/back.gif
隐藏编号不是我的意思,因为在其它操作过程中,还要查看门窗

还有上次测试图图层是锁的,这次开了

天正自定义实体没有详细的帮助文件(自带帮助lsp接口没什么用),要操作实在无从下手。。。
编号虽然隐藏了,但entmake了一个与编号一样的文本,我这里测试时可以的,cad2008+xp+天正8.2plus

xyp1964 发表于 2012-8-27 23:46:16

又一个密探?!

yjr111 发表于 2012-8-28 01:04:54

关于天正门窗的问题,我还是第一次去碰,差点把电脑烧了,搜了一下,发现高飞已经说得很明白了http://bbs.mjtd.com/thread-87567-2-1.html。。。。。不用ENTMOD修改组码,用ActiveX方法似乎没问题,可惜天正提供的方法接口少得可怜,根本不能满足(而且似乎不能用检验功能,一用就崩溃)。。。。。。说实话,我对天正的组码结构完全不熟悉,对于楼主的要求,只能采用变通的方法,隐藏编号,然后entmake编号,仅此而已,仅供参考!
(DEFUN C:BHJZ(/ SS E N S s1)
(command "undo" "be")
(IF(SETQ SS(SSGET '((0 . "TCH_OPENING"))))
    (REPEAT (SETQ N(SSLENGTH SS))
      (SETQ S(ENTGET(SETQ E(SSNAME SS(SETQ N(1- N)))))
          s1(entget(CDR(ASSOC 330 (REVERSE S))))
          )
      (vlax-put-property (vlax-ename->vla-object e) 'hidelabel "是");;;隐藏编号
      (entmake (list '(0 . "TEXT");;;生成编号文字
                     (cons 1 (CDR(ASSOC 302 S)))
                     (cons 7 (CDR(ASSOC 7S)))
                     (cons 8 (CDR(ASSOC 410 (REVERSE S))))
                     (cons 10 (CDR(ASSOC 10 S)))
                     (cons 11 (CDR(ASSOC 10 S)))
                     (cons 40 450)
                     (cons 41 0.5)
                     (cons 50 (rem(angle (CDR(ASSOC 10 s1))
                                     (CDR(ASSOC 11 s1))
                                     )
                                  3.14159
                                  )
                           )
                     (cons 62 256)
                     (cons 72 4)
                     )
             )
    )
)
(command "undo" "e")
(PRINC)
)

随梦而飞 发表于 2012-8-28 10:33:44

在CAD2006测试,出现

lidaxiu 发表于 2012-8-28 19:12:19

这个我也没有具体的思路, 想想应该和两个批量的物体对齐(G版曾编过一个)意思差不多

xiaodao520 发表于 2012-8-28 20:04:31

真有钱啊,500个币,不过也就50快人民币而已。

xyp1964 发表于 2012-8-28 22:16:11

局部测试通过:

品茗新秀 发表于 2012-8-28 23:17:16

本帖最后由 品茗新秀 于 2012-8-28 23:19 编辑

隐藏编号不是我的意思,因为在其它操作过程中,还要查看门窗

还有上次测试图图层是锁的,这次开了

品茗新秀 发表于 2012-8-30 15:25:57

yjr111 发表于 2012-8-28 23:30 static/image/common/back.gif
天正自定义实体没有详细的帮助文件(自带帮助lsp接口没什么用),要操作实在无从下手。。。
编号虽然隐藏 ...

楼主十分给力,强大,只是还要优化一下,框选整个测试图反应太慢了
页: [1] 2
查看完整版本: 求将门窗标注移到门窗图中心点的lsp源码