This function is primarily intended for AutoCAD to call as part of an explode operation that includes this entity. However, this function can be used by ObjectARX applications to obtain a collection of pointers to non-database-resident entity objects that are what the entity considers to be its exploded parts.
When calling this function, the entitySet collection does not need to be empty. This function will append to it, and pointers to entities that it creates to be used in its place as the "exploded" result.
This function should dynamically create (using the new operator) whatever entity objects are appropriate to be used to replace the entity after an explode operation has taken place. Pointers to these entities are then appended to the entitySet collection.
This function must not add the new entities to the database, nor should it erase the entity it is a part of. Both of these steps will be taken care of by AutoCAD (or whatever other application calls this function).
This also means that if an ObjectARX application calls the explode method of an object, the calling application is responsible for the resulting entities (that is, either appending them to a database or deleting them when they are no longer needed) and for erasing the original entity (if appropriate).
When using a custom entity, you must define an explode method in order for the AutoCAD commands BHATCH and EXPLODE to work. Your explode method should break your entity down into less complicated entities.
Public Function Explode( entitySet As DBObjectCollection ) As void
public void Explode( DBObjectCollection entitySet );
Parameters |
Description |
DBObjectCollection entitySet |
Input collection of pointers to new entities; this array may already contain pointers from other entities' explode() methods |
Comments? |