找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2206|回复: 7

[求助] dimlinear的BUG吗?

[复制链接]
发表于 2014-3-24 15:41:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 拉契 于 2014-3-24 15:42 编辑

自己弄的一个尺寸标注的程序,标注的对象在不同的位置标注的结果也会不一样,不同的地方就是图中红色线的部分,三个图是用co命令复制的。不知是CAD本身的BUG还是程序的问题,高手帮忙看一下
  1. (defun c:mj-bz()
  2.   (setq os(getvar "osmode"));;取得对象捕捉值
  3.   (setvar "osmode" 0);;关闭所有的对象捕捉
  4.   (setq mj-bz-3(car (entsel)));;取得生成的多段线
  5.   (setq mj-bz-4(vxs mj-bz-3));;取得多段线的顶点坐标
  6.   (setq mj-bz-5 0)
  7.   (repeat(-(length mj-bz-4) 1)
  8.     (setq mj-bz-6(nth mj-bz-5 mj-bz-4))
  9.     (setq mj-bz-7(nth (1+ mj-bz-5) mj-bz-4))
  10.     (setq mj-bz-8(angle mj-bz-6 mj-bz-7));;判断角度
  11.     (cond((and(equal mj-bz-8 0 1)(< mj-bz-8 (* pi 0.5)))(setq mj-bz-9(mapcar '(lambda (x) (+ x 50)) mj-bz-6)))
  12.    ((and(equal mj-bz-8 (* pi 0.5) 1)(< mj-bz-8 pi))(setq mj-bz-9(mapcar '(lambda (x) (- x 50)) mj-bz-6)))
  13.    ((and(equal mj-bz-8 pi 1)(< mj-bz-8 (* pi 1.5)))(setq mj-bz-9(mapcar '(lambda (x) (- x 50)) mj-bz-6)))
  14.    ((and(equal mj-bz-8 (* pi 1.5) 1)(< mj-bz-8 (* pi 2)))(setq mj-bz-9(mapcar '(lambda (x) (+ x 50)) mj-bz-6)))
  15.     );;cond
  16.     (command "dimlinear" mj-bz-6 mj-bz-7 mj-bz-9)
  17.     (setq mj-bz-5(1+ mj-bz-5))
  18.   );;repeat
  19.   (setvar "osmode" os)
  20. )

  21. ;;46.2 [功能] pline,lwpline点坐标表  By 无痕
  22. ;;示例(vxs (car (entsel))),返回三维点坐标
  23. (defun vxs (e / i v lst)
  24.   (setq i -1)
  25.   (while
  26.     (setq v (vlax-curve-getpointatparam e (setq i (1+ i))))
  27.      (setq lst (cons v lst))
  28.   )
  29.   (reverse lst)
  30. )



QQ图片20140324153500.jpg

Drawing15.zip

117.69 KB, 下载次数: 3, 下载积分: D豆 -1 , 活跃度 1

测试附件

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-24 22:12:59 | 显示全部楼层
既然用 Command 就先用 命令 走一遍 后找到需要的参数

点评

试过了,主要就是不知道为什么,同一个对象复制出来的对象,在不同的位置标注后的结果会不一样...如图的三个位置标注的结果明显的不一样  详情 回复 发表于 2014-3-25 11:10
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-25 11:10:56 | 显示全部楼层
st788796 发表于 2014-3-24 22:12
既然用 Command 就先用 命令 走一遍 后找到需要的参数

试过了,主要就是不知道为什么,同一个对象复制出来的对象,在不同的位置标注后的结果会不一样...如图的三个位置标注的结果明显的不一样
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2014-3-25 11:59:54 | 显示全部楼层
你用的是全局变量?
cond进程是不是有没考虑周全的?
(equal mj-bz-8 (* pi 1.5) 1)  角度误差1 ????
(< ?? pi)  ;;浮点<pi是不是对?

点评

我觉得应该不是全局变量的问题,因为第一次执行程序也有问题,出错的地方是有一个多余的点,但是我另外画一个形状简单点的也弄有多余的点又不会出现这种情况!可能选择的多段线的端点数的数量也有关系! 应该也  详情 回复 发表于 2014-3-25 12:21
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-25 12:21:06 | 显示全部楼层
aeo 发表于 2014-3-25 11:59
你用的是全局变量?
cond进程是不是有没考虑周全的?
(equal mj-bz-8 (* pi 1.5) 1)  角度误差1 ????
...

  我觉得应该不是全局变量的问题,因为第一次执行程序也有问题,出错的地方是有一个多余的点,但是我另外画一个形状简单点的也弄有多余的点又不会出现这种情况!可能选择的多段线的端点数的数量也有关系!
  应该也不会是与这个角度的误差值有关,一度   画出来的差距应该不会有那么大的吧!
  局部图中的绿色部分为正确的标注效果,白色线为标注的对象。
  我是在CAD2012中测试的,版主如果有空可以帮忙试验一下!

标注后正常的局部

标注后正常的局部

单个图

单个图
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-25 12:30:27 来自手机 | 显示全部楼层
捕捉原因?

点评

也不是!我程序里也设置了关闭捕捉啊!我手动先把所有的对象捕捉、对象追踪等都关了 也试过了!我估计这就是一个BUG吧!  详情 回复 发表于 2014-3-25 15:05
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-3-25 15:05:18 | 显示全部楼层

也不是!我程序里也设置了关闭捕捉啊!我手动先把所有的对象捕捉、对象追踪等都关了  也试过了!我估计这就是一个BUG吧!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-26 07:41:54 | 显示全部楼层
经测试没有发现不一样的地方
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-25 00:30 , Processed in 0.212459 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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