In Eyeshot, what is the best way to remove an Entity
from the Model
that is a BlockReference
?
Are there methods to help clean up all the Blocks
based on BlockReference
?
// assume "model1" is the Eyeshot control
List<Entity> entities = GetEntitiesToRemove();
foreach (var entity in entities)
{
if (entity is BlockReference reference)
{
// What to do here to clean up the associated blocks? This code will only find the
// parent block for the entity
var block = model1.Blocks.FirstOrDefault(b => b.Name == reference.BlockName);
if (block != null)
{
model1.Blocks.Remove(block); //This is only removing the parent block
}
}
model1.Entities.Remove(entity);
}
Model.Purge()
method: Removes unused items from the Environment
master collections (Layers, Blocks, Materials, etc.)