objectarx2023开发记录(一)

内容:创建一条直线。

1、创建一个项目。

2、项目文件组成。

arxEntryPoint.cpp是程序的主入口,相当于main()函数。

我们的代码就是写在这里面。

3、代码

找到上图函数,将代码添加在函数内。该函数,由前缀标识AB、命令组名字MyGroup、命令名字MyCommand组成。

可修改其命令名称为DL,标识画线的意思。

在函数内添加如下代码:

        AcGePoint3d ptStart(0, 0, 0);

		AcGePoint3d ptEnd(100, 100, 0);

		AcDbLine* pLine = new AcDbLine(ptStart, ptEnd);

		AcDbBlockTable* pBlockTable = NULL;


		//获取这个图形数据库的块表
		acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBlockTable, AcDb::kForRead);

		AcDbBlockTableRecord* pBlockTableRecord;

		//获取块表的记录
		pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRecord, AcDb::kForWrite);//模型空间就是一个块表记录

		//创建实体,并加入到指定的块表记录中
		AcDbObjectId lineId;
		pBlockTableRecord->appendAcDbEntity(lineId, pLine);

		pBlockTable->close();

		pBlockTableRecord->close();

		pLine->close();

下图中,要修改此处为命令名称。

4、代码步骤解析

(1)确定创建对象的图形数据库;

(2)获得这个图形数据库的块表;

(3)获得一个存储实体的块表记录;

(4)创建实体对象,将该对象加入到特定的块表记录中。

5、结果展示

至此,简单的画线项目完成。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值