api_deep_copy_entity
List of: Functions
Subjects: Model Geometry, Model Object
Contents: Kernel

Action: Creates a deep copy of an entity and all its associated entities.

Prototype: outcome api_deep_copy_entity (


ENTITY* entity, // entity to copy


ENTITY*& new_entity, // deep copy returned


logical dpcpy_skip // flag to skip



= FALSE, // attributes not




// deep-copyable


AcisOptions* ao = NULL // acis options


);

Includes: #include "kernel/acis.hxx"

#include "baseutil/logical.h"

#include "kernel/kernapi/api/api.hxx"

#include "kernel/kernapi/api/kernapi.hxx"

#include "kernel/kerndata/data/entity.hxx"

#include "kernel/kernapi/api/acis_options.hxx"

Description: This API deep copies the given entity and all its associated (connected) entities, if any, using each entity's copy and fix-up methods (e.g., copy_scan, copy_data, fix_pointers, etc.). The difference between a deep copy and a regular copy is that a regular copy may contain references to shared underlying associated entities, but a deep copy will not. This includes entities that are above and/or below the given entity in the topological hierarchy. For example, deep copying an edge deep copies the coedges, loops, faces, shells, etc., as well as all the associated curves, vertices, points, attributes, etc. If there are no associated entities, only the given entity is deep copied.

Errors: Attempting to copy an entity that has associated entities that do not support a deep copy routine. The NULL pointer is given to the entity.

Limitations: Refer to description.

Library: kernel

Filename: kern/kernel/kernapi/api/kernapi.hxx

Effect: Changes model
PDF/KERN/16FNA.PDF
HTM/DATA/KERN/KERN/16FNA/0029.HTM