CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2025 开发者帮助

图形系统更改 (ObjectARX)

2024-5-18 19:26| 发布者: admin| 查看: 87| 评论: 0|原作者: admin|来自: AutoCAD

图形系统更改 (ObjectARX)

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

支持的平台:仅限 Windows

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

现在,必须从 GS 管理器或从事件处理程序获取消息来引用 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()

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

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

路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2025-3-5 18:02

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部