明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1474|回复: 0

Offset应用

[复制链接]
发表于 2004-12-17 19:39:00 | 显示全部楼层 |阅读模式
static void postToDb(AcDbEntity* ent, AcDbObjectId& objId)
{
AcDbBlockTable* pBlockTable;
AcDbBlockTableRecord* pSpaceRecord;
acdbHostApplicationServices()->workingDatabase()->getSymbolTable(pBlockTable, AcDb::kForRead);
pBlockTable->getAt(ACDB_MODEL_SPACE, pSpaceRecord, AcDb::kForWrite);
pBlockTable->close();
pSpaceRecord->appendAcDbEntity(objId, ent); ent->close();
pSpaceRecord->close(); }
// ----- mycurve._test command (do not rename)
static void mycurve_test(void)
{
// Add your code for command mycurve._test here

// Have the user select an polyline
ads_name en;
AcGePoint3d pt;
if (acedEntSel("\nSelect an polyline: ", en, asDblArray(pt)) != RTNORM)
{
acutPrintf("\nNothing selected");
return;
} // Now, exchange the ads_name for the object Id.
//
AcDbObjectId eId;
acdbGetObjectId(eId, en); AcDbObject *pObj;
acdbOpenObject(pObj, eId, AcDb::kForRead);
if (pObj->isKindOf(AcDbPolyline::desc())) {
pObj->close(); int rc;
char kw[20];
acedInitGet(0, "Offset Other");
rc = acedGetKword("Offset/<Other>: ", kw); if ((rc != RTNORM) && (rc != RTNONE)) {
acutPrintf("\nNothing selected.");
return;
}else if (rc == RTNONE || strcmp(kw, "Other") == 0)
acedAlert("Other");
else
{
AcDbPolyline *pPolyline;
acdbOpenObject(pPolyline,eId,AcDb::kForRead);

// Now generate an polyline by 0.5 drawing units.
//
AcDbVoidPtrArray curves;
pPolyline->getOffsetCurves(0.5, curves);

AcDbObjectId newCurveId;
postToDb((AcDbEntity*)curves[0],newCurveId); //
//acedAlert("F");
AcDbVoidPtrArray curves1;
pPolyline->getOffsetCurves(-0.5, curves1);
postToDb((AcDbEntity*)curves1[0],newCurveId);
//
pPolyline->close();
}
}
else
{
pObj->close();
acutPrintf("\nSelected entity is not an ellipse");
} return;
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 10:43 , Processed in 0.161318 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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