Use this method to to set face boundaries as a contour.
Cimatron 2024SP3 or later
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: void | |
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 |
None
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);