查看单个帖子
旧 2009-04-18, 02:16 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】急:如何判断闭合区域??

急:如何判断闭合区域??
急:如何判断闭合区域??
各位大侠,我遇到了这么一个问题.平面上有n条b样条曲线,它们互相可能有交点,现在要把
它们构成的闭区域找出来,如何判定?需要用到图论吗?不知autocad里面是如何判定区域闭合的.谢谢各位.
用面域?!
如何交互生成面域对象
代码:
acdbobjectid eid;
acdbentity * ent;
ads_name en;
int rc = acdbentlast(en); //获取数据库中任意一个实体
if (rc != rtnorm)
{
acutprintf("the database has nothing.\n", rc);
}
if(!acedcommand(rtstr,"-boundary",rtstr,pause,rtstr,"",rtnone))
return; //调用命令生成边界
for(; //边界可能是嵌套型的,也就是有孤岛,所以进行循环
{
int rc = acdbentnext(en,en); //获取生成的边界
if (rc != rtnorm)
break; //已经没有边界实体,退出循环
acdbgetobjectid(eid, en);
acdbopenobject(ent, eid,acdb::kforread);
ent->close();
if(ent->iskindof(acdbpolyline::desc())) //生成的应是acdbpolyline实体
//..................
//create region object //这时就可以根据acdbpolyline
}; //的点的信息生成面域对象
这个程序中便用了面域来求面积!
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)