ObjectARX 2016 创建直线并修改颜色

新建一个ObjectARX项目后,在acrxEntryPoint中的static void MyGroupMyCommand ()后面加上如下代码:

	static void MyGroupMyCommand () {
		AcDbObjectId lineId;
		lineId = CreateLine();
		ChangeColor(lineId, 1);
	}

	static AcDbObjectId CreateLine()
	{
		AcGePoint3d ptStart(0, 0, 0);
		AcGePoint3d ptEnd(100, 100, 0);
		AcDbLine *pLine = new AcDbLine(ptStart, ptEnd);

		AcDbBlockTable *pBlockTable;
		acdbHostApplicationServices()->workingDatabase()
			->getBlockTable(pBlockTable, AcDb::kForRead);

		AcDbBlockTableRecord *pBlockTableRocord;
		pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRocord,
			AcDb::kForWrite);

		AcDbObjectId lineId;
		pBlockTableRocord->appendAcDbEntity(lineId, pLine);

		pBlockTable->close();
		pBlockTableRocord->close();
		pLine->close();

		return lineId;
	}

	static Acad::ErrorStatus ChangeColor(AcDbObjectId entId, Adesk::UInt16 colorIndex)
	{
		AcDbEntity *pEntity;
		acdbOpenObject(pEntity, entId, AcDb::kForWrite);
		pEntity->setColorIndex(colorIndex);    
		pEntity->close();    
		return Acad::eOk;
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值