GSD 发表于 2020-9-23 15:37:57

块参照的边界

本帖最后由 GSD 于 2020-9-23 15:45 编辑


(setq ptlist (acet-geom-ss-extents (SSGET "X") T)            ;得到选择集的范围边界点表
      p1   (car ptlist)
      p2   (cadr ptlist))
(entmakex (list '(0 . "LWPOLYLINE")
                  '(100 . "AcDbEntity")
                  '(100 . "AcDbPolyline")
                  '(90 . 4)
                  '(70 . 1)
                  (cons 10 p1)
                  (cons 10 (list (car p1) (cadr p2)))
                  (cons 10 p2)
                  (cons 10 (list (car p2) (cadr p1)))))
(setq ptlist (acet-geom-ss-extents (SSGET "X") T)      ;得到选择集的范围边界点表
      p1   (car ptlist)
      p2   (cadr ptlist))
(entmakex (list '(0 . "LWPOLYLINE")
      '(100 . "AcDbEntity")
      '(100 . "AcDbPolyline")
      '(90 . 4)
      '(70 . 1)
      (cons 10 p1)
      (cons 10 (list (car p1) (cadr p2)))
      (cons 10 p2)
      (cons 10 (list (car p2) (cadr p1)))))
acet-geom-ss-extents 不能得到块参照正确的边界,请高手帮忙解决!!

gaics 发表于 2020-9-23 17:31:29

感觉你这个GB_A3图框有bug呢

sgwsssxm 发表于 2020-9-23 18:02:32

炸开再重新做成块不就正常了。

sgwsssxm 发表于 2020-9-23 18:53:57

你这个块里有5个文字对象,值分别为
!GENTITLE-LL
!GENTITLE-RU
!GENTITLE-MAX
!GENTITLE-INSERT
!GENTITLE-LU
不过它们都被设置为隐藏了,正常情况下看不见,而正常炸开似乎是自动过滤隐藏对象,但是获取边界的时候并没自动过滤隐藏对象,所以就出现你说的现象了。

GSD 发表于 2020-9-24 14:56:48

本帖最后由 GSD 于 2020-9-24 14:58 编辑

sgwsssxm 发表于 2020-9-23 18:53
你这个块里有5个文字对象,值分别为
!GENTITLE-LL
!GENTITLE-RU

是的,这是机械版自带图框,不知是否有办法解决此问题?能否在获取边界时自动过滤边界?

sgwsssxm 发表于 2020-9-24 15:17:07

安全点的就是获取边界的时候在程序里修正一下,那几个文字内容是固定,获得的边框大小和实际边框大小在水平和垂直方向应该是成比例的,左下角坐标没影响不用管,右上角坐标根据比例换算一下就行了,最后返回自己修正过的边界坐标就可以了;也可以把原来的块里的隐藏文字删掉,会不会有什么连带负面影响就不好说了,想冒险的话可以试试。

GSD 发表于 2020-9-25 12:52:26

sgwsssxm 发表于 2020-9-24 15:17
安全点的就是获取边界的时候在程序里修正一下,那几个文字内容是固定,获得的边框大小和实际边框大小在水平 ...

感谢!!目前我们来图加工比较多,改图框行不通
页: [1]
查看完整版本: 块参照的边界