worldDraw() 函数
该函数是可绘制对象显示自身的主要机制。在此回调中,可绘制对象使用 和 接口告诉 AcGi 实现此可绘制对象应如何在所有活动视口中表示。对于特定于某些视口的信息,将提供回调(请参阅 viewportDraw() 函数)。 worldDraw()AcGiSubEntityTraitsAcGiWorldGeometryviewportDraw() 该函数采用指向对象的指针。 是 AcGi 几何体和特征对象的容器类。具体而言,包含另外两个对象:AcDbEntity::subWorldDraw()AcGiWorldDrawAcGiWorldDrawAcGiWorldDraw
可以使用函数从内部访问对象,也可以使用函数访问对象。AcGiWorldGeometrysubWorldDraw()AcGiWorldDraw::geometry()AcGiSubEntityTraitsAcGiWorldDraw::subEntityTraits() 该对象使用其一组图形图元将矢量写入 AutoCAD 的显示。基元是用于绘制图形实体的最低级指令。世界几何对象具有以下函数,用于在世界坐标中绘制基元,这些基元继承自 :AcGiWorldGeometryAcGiGeometry
draw 方法允许您指定要用作几何体一部分的另一个可绘制对象。这可能是另一个实体或内存中的可绘制对象。AcGi 在此对象上使用的逻辑与在对象上使用的逻辑相同。 setAttributes()worldDraw()viewportDraw() 该对象使用其特征函数集设置图形属性值:AcGiSubEntityTraits
传递的对象应与相应的“图形模型”一样长。如果你想重用 ,那么你应该通过它来委托你的对象,而不是使用 。例如,以下代码示例将生成错误:draw()worldDraw()draw() MyCustomObject::subWorldDraw(AcGiWorldDraw* draw) { AcDbCircle circle; draw->geometry().draw(&circle); } 请改用任一 MyCustomObject::subWorldDraw(AcGiWorldDraw* draw) { AcDbCircle circle; circle.worldDraw(draw); } 或者也许 MyCustomObject::subWorldDraw(AcGiWorldDraw* draw) { //m_circle is a member of MyCustomObject draw->geometry().draw(&m_circle); } 父主题: |
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-3-5 18:03
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.