CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ObjectARX 开发指南

图形系统更改 (ObjectARX)

2022-12-31 06:23| 发布者: admin| 查看: 345| 评论: 0|来自: AutoCAD

摘要: 对图形系统 (GS) 进行了更改,这些更改会影响视口中的图形对象。

对图形系统 (GS) 进行了更改,这些更改会影响视口中的图形对象。

支持的平台:仅窗口

支持的版本:AutoCAD 2017 及更高版本

现在必须从 GS 管理器或通过从事件处理程序获取消息来引用 GS,而不再从数据库或可绘制图形接口引用。以下方法已过时,使用它们的代码语句最常更新:

  • AcDbDatabase::gsModel()/setGsModel()
  • AcGiDrawable::gsNode()/setGsNode()

如果您的程序以前使用过,请更新代码以使用 GS 管理器。下面的代码示例使用 GS 管理器获取 GS 模型:AcDbDatabase::gsModel()

AcDbHostApplicationServices * pHAS = ::acdbHostApplicationServices();
AcadInternalServices *pAIS = pHAS->acadInternalServices();
AcGsManager* pMgr = pAIS ? pAIS->getAcGsManager() : nullptr;
AcGsModel* pModel = pMgr ? pMgr->gsModel(db) : nullptr;

GS 管理器根据 GS 模型是否不是返回布尔值。hasGsModelnull

AcGsManager::hasGsModel()

如果您的程序以前使用该方法更新对象,则现在必须使用回调系统。回调系统由两个不同的消息处理程序组成:and。您可以注册或注销以接收有关使用 and 方法处理图形的消息。AcGiDrawable::gsNode()AcGiDrawableReactor::modified()AcGiDrawableReactor::erased()AcGiDrawableEvent::addReactorAcGiDrawableEvent::removeReactor()

注意:/方法最初在 AutoCAD 2015 中已弃用,但现在这些方法已从 API 中完全删除。AcGiDrawable::gsNode()setGsNode()

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-19 14:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部