明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 822|回复: 3

[提问] 标注面积时加入反应器,面积变化出现无限循环,怎么修改,谢谢

[复制链接]
发表于 2024-3-26 20:55:56 | 显示全部楼层 |阅读模式
10明经币


标注面积时加入反应器,面积变化出现无限循环,怎么修改,在2006上可以正常使用,高版本就不可以



  1. (defun c:tt ()
  2.   (setq ent (car (entsel "\n选择线")))
  3.   (setq pt (getpoint ""))
  4.   (setq obj_pline (vlax-ename->vla-object ent))
  5.   (setq txt (strcat "S=" (rtos (vla-get-area obj_pline) 2 2) ))
  6.   (entmake
  7.     (list (cons 0 "TEXT")
  8.     (cons 8 "MJ")
  9.     (cons 10 pt)
  10.     (cons 11 pt)
  11.     (cons 71 0)
  12.     (cons 72 1)
  13.     (cons 73 2)
  14.     (cons 1 txt)
  15.     (cons 40 1.5)
  16.    
  17.     )
  18.   )
  19.   (setq ent_txt (entlast))
  20.   (setq obj_txt (vlax-ename->vla-object ent_txt))
  21.   (setq ve (List obj_pline))
  22.   (setq  reactor
  23.    (vlr-object-reactor
  24.      ve
  25.      obj_txt
  26.      '((:vlr-objectClosed . xlr_pl_mj_text))
  27.    )
  28.   )

  29. )


  30. ;;;;修改进入无限循环
  31. (defun xlr_pl_mj_text (obj obj2 vl)
  32.   (vla-put-textstring
  33.     (vlr-data obj2)
  34.     (strcat "S=" (rtos (vla-get-area obj) 2 2) )
  35.   )
  36. )


"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2024-3-26 22:39:42 | 显示全部楼层
:vlr-objectModified
回复

使用道具 举报

 楼主| 发表于 2024-3-27 11:49:01 | 显示全部楼层
本帖最后由 永不言弃 于 2024-3-27 11:52 编辑

换成这个,就会不更新面积了
回复

使用道具 举报

发表于 2024-3-28 22:48:15 | 显示全部楼层
如果要在拖动曲线时面积就变化,除了加入实体反应器,还需要增加命令反应器来监控可能修改边界曲线的命令被触发并相应执行操作。具体可以参考CAD安装目录中的教程GPath,里面有详细的反应器设计逻辑说明。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 20:26 , Processed in 0.172116 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表