DeleteHoles
Find and delete holes in CAD objects.
Syntax
model.component(<ctag>).geom(<tag>).feature().create(<ftag>,"DeleteHoles");
model.component(<ctag>).geom(<tag>).feature(<ftag>).selection(property);
model.component(<ctag>).geom(<tag>).feature(<ftag>).set(property,<value>);
model.component(<ctag>).geom(<tag>).feature(<ftag>).getType(property);
model.component(<ctag>).geom(<tag>).feature(<ftag>).find();
model.component(<ctag>).geom(<tag>).feature(<ftag>).detail();
 
model.component(<ctag>).geom(<tag>).defeaturing("Holes").selection(property);
model.component(<ctag>).geom(<tag>).defeaturing("Holes").set(property,<value>);
model.component(<ctag>).geom(<tag>).defeaturing("Holes").find();
model.component(<ctag>).geom(<tag>).defeaturing("Holes").detail();
model.component(<ctag>).geom(<tag>).defeaturing("Holes").delete(<ftag>);
model.component(<ctag>).geom(<tag>).defeaturing("Holes").deleteAll(<ftag>);
Description
model.component(<ctag>).geom(<tag>).defeaturing("Holes").delete(<ftag>) creates a DeleteHoles feature tagged <ftag> with the specified properties. The property delete is set to selected. If the feature can be built, it is inserted in the geometry sequence after the current feature; otherwise, the feature is discarded.
model.component(<ctag>).geom(<tag>).defeaturing("Holes").deleteAll(<ftag>) works as the delete method, but the property delete is set to all.
It is also possible to create the DeleteHoles feature using the standard create method. The following properties are available.
all | selected
on | off
all | obj | dom | bnd | edg | pnt | off
Show selections of resulting objects in physics, materials, and so on, or in part instances. obj is not available in a component’s geometry. dom, bnd, and edg are not available in all features
model.component(<ctag>).geom(<tag>).feature(<ftag>).find() searches the input objects for holes with radius less than entsize.
model.component(<ctag>).geom(<tag>).feature(<ftag>).detail() returns a selection object where you can select a subset of the holes found.
The find and detail methods of  model.component(<ctag>).geom(<tag>).defeaturing("Holes") have the corresponding functionality for the defeaturing tool.
Only faces that can be deleted without invalidating the object are deleted. If a hole was not possible to delete, a warning is given, accessible through  model.component(<ctag>).geom(<tag>).feature(<ftag>).problem().
Compatibility
The following property is no longer supported:
stx | ftx | ctx | ptx
Example
The following example imports the CAD object in the COMSOL Multiphysics geometry file defeaturing_demo_3.mphbin and finds all holes with radius less than 4·102. The first four of these holes are deleted.
Model model = ModelUtil.create("Model1");
model.component.create("comp1");
model.component("comp1").geom().create("geom1",3);
model.component("comp1").geom("geom1").feature().create("imp1","Import");
model.component("comp1").geom("geom1").feature("imp1").set("filename", "defeaturing_demo_3.mphbin");
model.component("comp1").geom("geom1").run("imp1");
model.component("comp1").geom("geom1").feature().create("dho1","DeleteHoles");
model.component("comp1").geom("geom1").feature("dho1").selection("input").set("imp1");
model.component("comp1").geom("geom1").feature("dho1").set("entsize",4e-2);
model.component("comp1").geom("geom1").feature("dho1").find();
model.component("comp1").geom("geom1").feature("dho1").detail().setGroup(1, 2, 3, 4);
model.component("comp1").geom("geom1").run();
See Also
ReplaceFaces