找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 430|回复: 2

[求助]:如何拉伸acdb3dsloid的一个面

[复制链接]
发表于 2003-3-12 23:04:38 | 显示全部楼层 |阅读模式

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

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

×
给个例子好吗/谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-3-14 19:37:17 | 显示全部楼层
double Height = 60;
AcGeVector3d normal(0.0, 0.0, 1.0);

AcGePoint2dArray pt2d;
pt2d.setLogicalLength(8);
//(xi, yi) 是各个顶点坐标
pt2d[0].set(x1, y1);
pt2d[1].set(x2, y2);
pt2d[2].set(x3, y3);
pt2d[3].set(x4, y4);
pt2d[4].set(x5, y5);
pt2d[5].set(x6, y6);
pt2d[6].set(x7, y7);
pt2d[7].set(x8, y8);  

AcDbPolyline *poly = new AcDbPolyline;

//设置多义线各顶点坐标及凸度值
double bulge = 22.5 / 180 * PI;
bulge = tan(bulge);
for(int i = 0; i < 8; i++)
{
poly->addVertexAt(i, pt2d, (i % 2 == 1) ? bulge : 0.0, 0.0, 0.0);
}
poly->setClosed(Adesk::kTrue);
poly->setNormal(normal);

AcDbVoidPtrArray lines, regions;
//获取指向封闭边界的无值型指针数组
lines.append((void *)poly);
//根据封闭边界中生成面域对象
AcDbRegion::createFromCurves(lines, regions);
//获得指向面域的指针
AcDbRegion *pRegion = AcDbRegion::cast((AcRxObject *)regions[0]);
AcDb3dSolid *p3dObj = new AcDb3dSolid;
p3dObj->extrude(pRegion, Height, 0);
delete pRegion;

AcDbBlockTable *pBlockTable; //定义块表指针
acdbCurDwg()->getBlockTable(pBlockTable, AcDb::kForRead); //获得块表指针
AcDbBlockTableRecord *pBlockTableRecord; //定义块表记录指针
pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRecord, AcDb::kForWrite); //获得块表记录指针
AcDbObjectId entityId; //定义对象的 ID 号
pBlockTableRecord->appendAcDbEntity(entityId, p3dObj); //向块表记录添加对象
pBlockTable->close(); //关闭块表
pBlockTableRecord->close(); //关闭块表记录
p3dObj->close(); //关闭对象
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-15 16:04:35 | 显示全部楼层
我是要拉伸acdb3dsloid的一个面,
大概是用它的extrudeface函数,但对第一个参数Araay< subentId *>不理解不知如何得到
请大家帮助。
谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 07:06 , Processed in 0.354362 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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