deepClone()
在这种情况下,不会发生上述引用问题,因为不遵循克隆的引用。AcDbHardPointerIddeepClone()AcDbHardPointerId 如果应用程序尝试添加新实体,而这些实体仍处于变化状态,则可能会产生问题。因此,在发出通知之前,切勿尝试调用任何克隆的用户定义的 s。相反,您可以安全地追加到模型空间和图纸空间,因为它们永远不会被克隆。在收到通知之前,切勿尝试将顶点添加到克隆的 、 、 或 、deepClone()AcDbObjectIdsAcDbBlockTableRecord::appendAcDbEntity()AcDbBlockTableRecordAcEditorReactor::endDeepClone()AcDbBlockTableRecord deepClone()AcDb2dPolylinesAcDb3dPolylinesAcDbPolyFaceMeshesAcDbPolygonMeshesAcDbBlockReferencesAcEditorReactor::endDeepClone() 如果必须在克隆期间创建实体,则需要将它们及其未来所有者的 ID 一起保存在内存中,直到收到通知。一旦深度克隆完成,它们就可以安全地附加。AcEditorReactor::endDeepClone() |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-19 07:23
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.