INcContourManager::SetMultiContours

Use this method to to set face boundaries as a contour.

Compatibility

Cimatron 2024SP3 or later

Syntax

void SetMultiContours(interop.CimNcAPI.ICimEntityList iFaceList, interop.CimNcAPI.FaceBoundaries iMode, double iFaceGrpMaxGap, double iContourCreationMaxGap);

def SetMultiContours(iFaceList : interop.CimNcAPI.ICimEntityList, iMode : interop.CimNcAPI.FaceBoundaries, iFaceGrpMaxGap : double, iContourCreationMaxGap : double) -> None

Return Type

Return: void  
   

Input Type

Input: interop.CimNcAPI.ICimEntityList iFaceList―List of the faces 
Input: interop.CimNcAPI.FaceBoundaries iMode―Option for the face boundary 
Input: double iFaceGrpMaxGap―Face grouping maximum gap 
Input: double iContourCreationMaxGap―Contour Creation max gap

Remarks

None

Example

Example 1Example 1
interop.CimAppAccess.AppAccess AppAcc = new interop.CimAppAccess.AppAccess();
interop.CimatronE.IApplication CimApp = (interop.CimatronE.IApplication)AppAcc.GetApplication();
interop.CimatronE.ICimDocument aDOC = CimApp.GetActiveDoc();
interop.CimNcAPI.IModelContainer aModelCont = (interop.CimNcAPI.IModelContainer)aDOC;
interop.CimNcAPI.INcModel aNcModel = (interop.CimNcAPI.INcModel)aModelCont.Model;
interop.CimNcAPI.IModel aModel = (interop.CimNcAPI.IModel)aNcModel;
int aUid = 4;
int aParamID = 35;
interop.CimNcAPI.INcContourManager aContourManager = aNcModel.GetContourManager(aUid, aParamID);
interop.CimBaseAPI.ICimEntityList aEntityList = new interop.CimBaseAPI.CimEntityList();
//OuterOnly
aEntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(17, aModel));
aEntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(116, aModel));
aContourManager.SetMultiContours((interop.CimNcAPI.ICimEntityList)aEntityList, interop.CimNcAPI.FaceBoundaries.cmOuterOnly, 0.2, 0.1);
aNcModel.CloseProcedure(aUid, 1);

Example 2Example 2
interop.CimAppAccess.AppAccess AppAcc = new interop.CimAppAccess.AppAccess();
interop.CimatronE.IApplication CimApp = (interop.CimatronE.IApplication)AppAcc.GetApplication();
interop.CimatronE.ICimDocument aDOC = CimApp.GetActiveDoc();
interop.CimNcAPI.IModelContainer aModelCont = (interop.CimNcAPI.IModelContainer)aDOC;
interop.CimNcAPI.INcModel aNcModel = (interop.CimNcAPI.INcModel)aModelCont.Model;
interop.CimNcAPI.IModel aModel = (interop.CimNcAPI.IModel)aNcModel;
int aUid = 4;
int aParamID = 35;
interop.CimNcAPI.INcContourManager aContourManager = aNcModel.GetContourManager(aUid, aParamID);
interop.CimBaseAPI.ICimEntityList aEntityList = new interop.CimBaseAPI.CimEntityList();
//Set Contour Using Vertical Walls
//All ids are Face ID
EntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(544, aModel));
EntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(545, aModel));
EntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(546, aModel));
EntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(547, aModel));
ContourManager.SetMultiContours((interop.CimNcAPI.ICimEntityList)aEntityList, interop.CimNcAPI.FaceBoundaries.cmVerticalWalls, 0.001, 0.1);
aNcModel.CloseProcedure(aUid, 1);

Example 3Example 3
interop.CimAppAccess.AppAccess AppAcc = new interop.CimAppAccess.AppAccess();
interop.CimatronE.IApplication CimApp = (interop.CimatronE.IApplication)AppAcc.GetApplication();
interop.CimatronE.ICimDocument aDOC = CimApp.GetActiveDoc();
interop.CimNcAPI.IModelContainer aModelCont = (interop.CimNcAPI.IModelContainer)aDOC;
interop.CimNcAPI.INcModel aNcModel = (interop.CimNcAPI.INcModel)aModelCont.Model;
interop.CimNcAPI.IModel aModel = (interop.CimNcAPI.IModel)aNcModel;
int aUid = 4;
int aParamID = 35;
interop.CimNcAPI.INcContourManager aContourManager = aNcModel.GetContourManager(aUid, aParamID);
interop.CimBaseAPI.ICimEntityList aEntityList = new interop.CimBaseAPI.CimEntityList();
aEntityList.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(90, aModel));
aContourManager.SetMultiContours((interop.CimNcAPI.ICimEntityList)aEntityList, interop.CimNcAPI.FaceBoundaries.cmBoth, 0.001, 0.1);
aNcModel.CloseProcedure(aUid, 1);
//For Setting Different face as a contour with different loop i,e one having outer and other having inner -> CLose the procedure and and repeat same step.
interop.CimNcAPI.INcContourManager aContourManager1 = aNcModel.GetContourManager(aUid, aParamID);
interop.CimBaseAPI.ICimEntityList aEntityList2 = new interop.CimBaseAPI.CimEntityList();
aEntityList2.Add((interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(90, aModel));
aContourManager1.SetMultiContours((interop.CimNcAPI.ICimEntityList)aEntityList2, interop.CimNcAPI.FaceBoundaries.cmOuterOnly, 0.001, 0.1);
aNcModel.CloseProcedure(aUid, 1);

Example 1 - Outer OnlyExample 1 - Outer Only
import clr
clr.AddReference("interop.CimAppAccess")
clr.AddReference("interop.CimatronE")
clr.AddReference("interop.CimServicesAPI")
clr.AddReference("interop.CimBaseAPI")
clr.AddReference("interop.CimMdlrAPI")
clr.AddReference("interop.CimNcAPI")
import interop.CimAppAccess
import interop.CimatronE
import interop.CimServicesAPI
import interop.CimBaseAPI
import interop.CimMdlrAPI
import interop.CimNcAPI
import System
AppAcc = interop.CimAppAccess.AppAccess()
CimApp = interop.CimatronE.IApplication(AppAcc.GetApplication())
aDOC = CimApp.GetActiveDoc()
aModelCont = interop.CimNcAPI.IModelContainer(aDOC)
aNcModel = interop.CimNcAPI.INcModel(aModelCont.Model)
aModel = interop.CimNcAPI.IModel(aNcModel)
aUid = 4
aParamID = 35
aContourManager = aNcModel.GetContourManager(aUid, aParamID)
aEntityList = interop.CimBaseAPI.ICimEntityList(interop.CimBaseAPI.CimEntityList())
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(17, aModel)))
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(116, aModel)))
aContourManager.SetMultiContours(interop.CimNcAPI.ICimEntityList(aEntityList), interop.CimNcAPI.FaceBoundaries.cmOuterOnly, 0.2, 0.1);
aNcModel.CloseProcedure(aUid, 1)

Example 2 - Set Contour Using Vertical WallsExample 2 - Set Contour Using Vertical Walls
//All ids are Face ID
import clr
clr.AddReference("interop.CimAppAccess")
clr.AddReference("interop.CimatronE")
clr.AddReference("interop.CimServicesAPI")
clr.AddReference("interop.CimBaseAPI")
clr.AddReference("interop.CimMdlrAPI")
clr.AddReference("interop.CimNcAPI")
import interop.CimAppAccess
import interop.CimatronE
import interop.CimServicesAPI
import interop.CimBaseAPI
import interop.CimMdlrAPI
import interop.CimNcAPI
import System
AppAcc = interop.CimAppAccess.AppAccess()
CimApp = interop.CimatronE.IApplication(AppAcc.GetApplication())
aDOC = CimApp.GetActiveDoc()
aModelCont = interop.CimNcAPI.IModelContainer(aDOC)
aNcModel = interop.CimNcAPI.INcModel(aModelCont.Model)
aModel = interop.CimNcAPI.IModel(aNcModel)
aUid = 4
aParamID = 35
aContourManager = aNcModel.GetContourManager(aUid, aParamID)
aEntityList = interop.CimBaseAPI.ICimEntityList(interop.CimBaseAPI.CimEntityList())
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(544, aModel)))
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(545, aModel)))
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(546, aModel)))
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(547, aModel)))
aContourManager.SetMultiContours(interop.CimNcAPI.ICimEntityList(aEntityList), interop.CimNcAPI.FaceBoundaries.cmVerticalWalls, 0.001, 0.1)
aNcModel.CloseProcedure(aUid, 1)

//Example 3//Example 3
import clr
clr.AddReference("interop.CimAppAccess")
clr.AddReference("interop.CimatronE")
clr.AddReference("interop.CimServicesAPI")
clr.AddReference("interop.CimBaseAPI")
clr.AddReference("interop.CimMdlrAPI")
clr.AddReference("interop.CimNcAPI")
import interop.CimAppAccess
import interop.CimatronE
import interop.CimServicesAPI
import interop.CimBaseAPI
import interop.CimMdlrAPI
import interop.CimNcAPI
import System
AppAcc = interop.CimAppAccess.AppAccess()
CimApp = interop.CimatronE.IApplication(AppAcc.GetApplication())
aDOC = CimApp.GetActiveDoc()
aModelCont = interop.CimNcAPI.IModelContainer(aDOC)
aNcModel = interop.CimNcAPI.INcModel(aModelCont.Model)
aModel = interop.CimNcAPI.IModel(aNcModel)
aUid = 4
aParamID = 35
aContourManager = aNcModel.GetContourManager(aUid, aParamID)
aEntityList = interop.CimBaseAPI.ICimEntityList(interop.CimBaseAPI.CimEntityList())
aEntityList.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(17, aModel)))
aContourManager.SetMultiContours(interop.CimNcAPI.ICimEntityList(aEntityList), interop.CimNcAPI.FaceBoundaries.cmBoth, 0.001, 0.1)
aNcModel.CloseProcedure(aUid, 1)
//For Setting Different face as a contour with different loop i,e one having outer and other having inner -> CLose the procedure and and repeat same step.
aContourManager1 = aNcModel.GetContourManager(aUid, aParamID);
aEntityList2 = interop.CimBaseAPI.ICimEntityList(interop.CimBaseAPI.CimEntityList())
aEntityList2.Add(interop.CimBaseAPI.ICimEntity(aModel.GetEntityById(90, aModel)))
aContourManager1.SetMultiContours(interop.CimNcAPI.ICimEntityList(aEntityList2), interop.CimNcAPI.FaceBoundaries.cmOuterOnly, 0.001, 0.1);
aNcModel.CloseProcedure(aUid, 1);