Lispboy 发表于 2016-6-17 13:00:58

(XD::DIM:Group)尺寸标注实体分组

本帖最后由 Lispboy 于 2016-6-17 20:58 编辑

1.模式0:



2.模式1:



3:模式2:



**** Hidden Message *****

Lispboy 发表于 2016-6-17 13:04:58

上面动图的该函数使用示例

测试工具:


(defun c:tt ()
(defun _draw (el)
    (mapcar
      '(lambda (x)
       (setq p (xd::dim:basePoints (car x))
             v (xdrx_vector_normalize (mapcar
                                          '-
                                          (cadr p)
                                          (car p)
                                        )
               )
       )
       (xdrx_grdraw (setq clr (xdrx_math_rand 1 7))
                      0 (xd::pnts:close (xdrx_entity_box x v))
       )
       )
      el
    )
)
(if (and
        (setq mod (getint "\n模式:"))
        (setq ss (ssget "x" '((0 . "dim*"))))
      )
    (progn
      (redraw)
      (if te
      (xdrx_entity_delete te)
      )
      (setq el (xd::dim:group ss mod) box (xd::geom:get9pt ss 6))
      (xd::text:init 2)
      (setq te (xdrx_text_make box (strcat "模式" (itoa mod) ":") 15 0))
      (xdrx_setpropertyvalue te "widthfactor" 0.8 "color" 1)
      (cond
        ((= mod 0)
          (_draw el)
        )
        ((= 1 mod)
          (_draw (mapcar '(lambda(x)(apply 'append x)) el))
        )
        ((= 2 mod)
          (setq a (mapcar '(lambda(x)(mapcar '(lambda(y)(apply 'append y)) x)) el))
          (mapcar '(lambda(x)(_draw x)) a)
        )
      )
    )
)
(princ)
)

liuyj 发表于 2016-6-17 13:44:08

同一排有容差值吗?

Lispboy 发表于 2016-6-17 13:47:54

liuyj 发表于 2016-6-17 13:44
同一排有容差值吗?

同一排设容差没意义吧?

liuyj 发表于 2016-6-17 14:06:03

同一排怎么算呢?如果竖向上差了一点,还能不能算一排?

Lispboy 发表于 2016-6-17 14:44:03

liuyj 发表于 2016-6-17 14:06
同一排怎么算呢?如果竖向上差了一点,还能不能算一排?

这个函数主要的找 “相连”, 画尺寸的时候都用dimcontinue , 能有 “竖向”差了一点点的标注吗?

Lispboy 发表于 2016-6-17 21:00:04

liuyj 发表于 2016-6-17 14:06
同一排怎么算呢?如果竖向上差了一点,还能不能算一排?

修改了代码,支持了容差

距离容差读取(car (xdrx_document_getprec))设置

天若有情007 发表于 2016-6-18 10:20:16

学习了,太厉害了

天若有情007 发表于 2016-6-18 10:27:32


模式:0

原因:无效的数据类型或数据溢出: #<SUBR @000000003369e278 TE> 位置-> 行:189 列:10
命令:

不知道是什么原因

天若有情007 发表于 2016-6-26 15:37:21

不能分组,只能画出方框,但是并没有成组啊

Lispboy 发表于 2016-6-26 16:03:12

天若有情007 发表于 2016-6-26 15:37
不能分组,只能画出方框,但是并没有成组啊

你用的 测试工具 的代码?方框对吗?就是根据分组的数据画的。方框对了,分组就对了。

天若有情007 发表于 2016-6-26 16:05:02

Lispboy 发表于 2016-6-26 16:03
你用的 测试工具 的代码?方框对吗?就是根据分组的数据画的。方框对了,分组就对了。

但是没有成组,就是GROUP成组,应该一个方框内的是一个group组才对啊

Lispboy 发表于 2016-6-26 16:35:02

天若有情007 发表于 2016-6-26 16:05
但是没有成组,就是GROUP成组,应该一个方框内的是一个group组才对啊

这里提供的是函数,不是插件。 函数说的分组,不是你理解的GROUP,是实体表。你想在分组,再写自己的代码。就像测试工具,把分好组的基础上画出框。

天若有情007 发表于 2016-6-26 16:51:39

Lispboy 发表于 2016-6-26 16:35
这里提供的是函数,不是插件。 函数说的分组,不是你理解的GROUP,是实体表。你想在分组,再写自己的代码 ...

       多谢。

ymcui2005 发表于 2016-8-23 09:18:46

同一排设容差没意义吧?
页: [1] 2 3 4
查看完整版本: (XD::DIM:Group)尺寸标注实体分组