高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】通过两点打断一条直线的arx程序请帮忙!
通过两点打断一条直线的arx程序请帮忙!
通过两点打断一条直线的arx程序请帮忙!
我想通过编程实现下述功能:
编程画了一条直线:
acgepoint3d startpt,endpt;
acdbblocktable *pblocktable;
acdbhostapplicationservices()->workingdatabase()->getsymboltable(pblocktable,acdb::kforread);
acdbblocktablerecord *pblockrecord;
pblocktable->getat(acdb_modoal_space,pblockrecord,acdb::kforwrite);
pblocktable->close();
startpt.set(100.0,100.0,0);
endpt.set(.0,100.0,0);
acdbline *pline;
pline=new acdbline(startpt,endpt);
acdbobjectid id;
pblockrecord->appendacdbentity(id,pline);
pline->close();
上面直线画好了。现在我已知这条直线上的两点pt1,pt2:
acgepoint3d pt1(120.0,100.0,0),pt2(160.0,100.0,0);
我请教如何通过编程在pt1和pt2点打断这条直线并删除pt1和pt2两点之间部分,保留其余部分。
这个功能用acedcommand()函数利用autocad本身带的break命令能实现吗?如何实现?
请赐教一段程序,不胜感激!!
|