明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1313|回复: 5

大家帮看看哪里出问题了!!

[复制链接]
发表于 2012-8-15 10:33 | 显示全部楼层 |阅读模式
下面是一个为标注添加制定公差的程序。
(defun c:ttt ( / ent )
  (vl-load-com)
  (setq ent (entsel "\n选择标注"))
  (vla-put-tolerancedisplay (vlax-ename->vla-object (car ent)) actolsymmetrical) ;显示公差
  (vla-put-tolerancelowerlimit (vlax-ename->vla-object (car ent)) 0) ;添加下公差
  (vla-put-toleranceupperlimit (vlax-ename->vla-object (car ent)) 0.1) ;添加上公差
  (vla-put-toleranceheightscale (vlax-ename->vla-object (car ent)) 0.6) ;显示比例
)

当我的下偏差定为0,上偏差定为0.1时,问题出现了。程序运行结果公差变成了±0.1;但是当上下偏差不为0时,程序却又是正常可以的。希望大家能指出存在的问题!

本帖被以下淘专辑推荐:

  • · 收集|主题: 58, 订阅: 4
发表于 2012-8-15 16:44 | 显示全部楼层
(defun c:ttt ( / ent )
  (vl-load-com)
  (setq ent (entsel "\n选择标注"))
  (vla-put-tolerancedisplay (vlax-ename->vla-object (car ent)) actolsymmetrical) ;显示公差
  (vla-put-toleranceupperlimit (vlax-ename->vla-object (car ent)) 0.1) ;添加上公差
  (vla-put-tolerancelowerlimit (vlax-ename->vla-object (car ent)) 0) ;添加下公差
  (vla-put-toleranceheightscale (vlax-ename->vla-object (car ent)) 0.6) ;显示比例
)
0公差后赋值
 楼主| 发表于 2012-8-16 09:51 | 显示全部楼层
duotu007 发表于 2012-8-15 16:44
(defun c:ttt ( / ent )
  (vl-load-com)
  (setq ent (entsel "\n选择标注"))

再次感谢您了!谢谢给了我这么大的帮助!
(vla-put-tolerancelowerlimit (vlax-ename->vla-object (car ent)) 0) ;添加下公差
您说的0公差后赋值,具体怎么实现的啊?
(vla-put-tolerancelowerlimit (vlax-ename->vla-object (car ent)) 0) 我在0后面加了个0,或者改成缺省值“”    变成了0,并未实现赋值,该怎么实现呢?希望得到您的帮助。
         -0
 楼主| 发表于 2012-8-17 14:41 | 显示全部楼层
duotu007 发表于 2012-8-15 16:44
(defun c:ttt ( / ent )
  (vl-load-com)
  (setq ent (entsel "\n选择标注"))

您好!0公差后赋值,具体应该怎么弄,我还是没搞清,希望您能帮助我!
 楼主| 发表于 2012-8-24 14:28 | 显示全部楼层
duotu007 发表于 2012-8-15 16:44
(defun c:ttt ( / ent )
  (vl-load-com)
  (setq ent (entsel "\n选择标注"))

0公差后赋值的问题还是未解决!头疼死了。希望您指导下!谢谢了!
 楼主| 发表于 2012-8-24 15:10 | 显示全部楼层
duotu007 发表于 2012-8-15 16:44
(defun c:ttt ( / ent )
  (vl-load-com)
  (setq ent (entsel "\n选择标注"))

额!不好意思了!
问题解决了。
(defun ttt(ent)
  (vl-load-com)
  (vla-put-tolerancedisplay (vlax-ename->vla-object ent) acTolDeviation) ;显示公差
  (vla-put-tolerancelowerlimit (vlax-ename->vla-object  ent)  0) ;添加下公差
  (vla-put-toleranceupperlimit (vlax-ename->vla-object  ent) 0.1) ;添加上公差
  (vla-put-tolerancelowerlimit (vlax-ename->vla-object  ent)  0)
  (vla-put-toleranceheightscale (vlax-ename->vla-object ent) 0.6) ;显示比例
)
又添了一个下公差就解决问题了。为什么之前会出现那种问题呢?求教
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-30 22:24 , Processed in 0.255389 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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