找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 767|回复: 4

[讨论]:使用AcGeInterval 类获得轮廓

[复制链接]
发表于 2004-12-8 10:34:06 | 显示全部楼层 |阅读模式

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

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

×
使用AcGeInterval 类的 AcGeInterval::getMerge(..) ,AcGeInterval::intersectWith(...), AcGeInterval::subtract(...) 获得轮廓
有人弄出来了吗?
求交后AcGeInterval的参数值和原曲线AcGeInterval的参数值是一样的。
AcGeCurv1->getinterval->getbounds(0.000,267.34)
AcGeCurv2->getinterval->getbounds(0.000,329.05)
求交后AcGeInterval->getbounds(0.000,267.34)
不知何故?不知是不是BUG?
下面的XD是用LISP实现的吧?
[swf w=600 h=450]http://www.xdcad.net/tech/xd_tbox/xdtb_cboole1.swf[/swf]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-12-13 08:53:12 | 显示全部楼层
flaid   你理解错了,这是区间运算用的,不是区域运算
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-12-13 11:02:46 | 显示全部楼层
XD说过这段话: http://www.xdcad.net/forum/showthread.php?postid=98731#post98731
14楼楼主说:   9pt 10pt 11pt 12pt 13pt 15pt  


回复:最初由 夜语 发布
AcGeInterval如何转为实体呢?  




如果你要操作的是数据库实体的话:

1、AcDbCurve ==> AcGeCurve2d,3d
2、AcGeCurve2d::getInterval(...) 得到AcGeInterval 对象
3、两个这样的几何曲线的AcGeInterval 对象,比如用 AcGeInterval::getMerge(..) 求”域“并”


代码:

AcGeInterval::getMerge Function void

getMerge(

const AcGeInterval& otherInterval,

AcGeInterval& result) const;

otherInterval Input interval with which to merge
result Output merged interval

The output argument result returns the smallest i
nterval that contains both this interval and the interval otherInterval.




得到的并的结果的AcGeInterval 对象引用 result

4、下面我们看看AcGeInterval 类的查询方法:


代码:

AcGeInterval::getBounds Function void

getBounds(

double& lower,

double& upper) const;

lower Output lower bound
upper Output upper bound

Returns lower and upper bounds of this interval in the output arguments lower and upper respectively.
The bound has a meaningful value only if this interval is bounded in the corresponding direction.




上面得到的结果两个double 类型 lower,upper 对应的就是 result 范围的最小参数值和最大参数值(就是我们熟悉的AcDbCurve 类下面的 param )。

5、这样,我们就得到了我们要的两条几何曲线实体的“并”的范围的 最小参数和最大参数,反过去对应我们操作的两天几何曲线的范围,下面我们就可以把:

AcGeCurve2d,3d 根据参数范围 ==> AcDbCurve

(并的结果,可能有两个范围,这个我们自己判断)

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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2004-12-15 09:43:03 | 显示全部楼层
是呀,我的也行不通,难道XD。。。嘎嘎
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-22 07:30 , Processed in 0.407688 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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