Message 1 of 1
How to correctly SplitFaces (all of them)?

Not applicable
11-09-2020
05:16 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hi, i need to Split Faces (All).
I want to select "Faces" => Red lined object
Selecting "Faces"
Then i need to select "Split Tool" => Red themed object
Selecting "Split Tool"
Description of "SplitFaces" method is this:
SplitFeature SplitFaces(object SplitTool, bool SplitAll = true, object FacesOrBody = null)
And by definition, SplitTool can be WorkPlane, WorkSurface, SurfaceBody or a Path.
I know (thanks to the Split window in Inventor):
SplitTool => Red themed object
SplitAll => will be True
FacesOrBody => is optional, so i don't really know if i really need this
// Red themed object
PartComponentDefinition partComDef = (PartComponentDefinition)occ.Definition;
// Red lined object
PartComponentDefinition targetDef = (PartComponentDefinition)_selected.Definition;
// what i have tried
SplitFeatures splitFea = targetDef.Features.SplitFeatures;
splitFea.SplitFaces(occ.SurfaceBodies[0], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(occ.SurfaceBodies[1], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(occ.Definition.SurfaceBodies[0], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(occ.Definition.SurfaceBodies[1], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef, true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.SurfaceBodies[0], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.SurfaceBodies[1], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.Features.ReferenceFeatures[0].SurfaceBody, true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.Features.ReferenceFeatures[1].SurfaceBody, true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.Features.ReferenceFeatures[0].SurfaceBodies[0], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.Features.ReferenceFeatures[0].SurfaceBodies[1], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.Features.ReferenceFeatures[1].SurfaceBodies[0], true, targetDef.SurfaceBodies[1]);
splitFea.SplitFaces(partComDef.Features.ReferenceFeatures[1].SurfaceBodies[1], true, targetDef.SurfaceBodies[1]);
What i am doing wrong?