This class represents a procedure for curve fairing.
interop.CimMdlrAPI
Cimatron 2024 or later
|
Get, Set |
SlopeMode |
interop.CimMdlrAPI.FairCurveSlopeOption |
|
Get, Set |
Tolerance |
double |
|
Get, Set |
Entities |
interop.CimMdlrAPI.ICimEntityList |
|
None |
||
None
None
Example 1-Keep Slope As it is ModeExample 1-Keep Slope As it is Mode
// create Cimatron App Access object
interop.CimAppAccess.AppAccess aAppAccess = new interop.CimAppAccess.AppAccess();
//Get application object from App access
interop.CimatronE.IApplication CimApp = (interop.CimatronE.IApplication)aAppAccess.GetActiveApplication();
// Get active document from application
interop.CimBaseAPI.ICimDocument aDoc = (interop.CimBaseAPI.ICimDocument)CimApp.GetActiveDoc();
interop.CimMdlrAPI.IModelContainer aContainer = (interop.CimMdlrAPI.IModelContainer)aDoc;
//GetModel
interop.CimMdlrAPI.IMdlrModel aMdlrModel = (interop.CimMdlrAPI.IMdlrModel)aContainer.Model;
interop.CimMdlrAPI.IModel aModel = (interop.CimMdlrAPI.IModel)aMdlrModel;
//Create FairCurve Procedure
interop.CimMdlrAPI.IMdProcedure aProcedure =
(interop.CimMdlrAPI.MdScale)aMdlrModel.CreateProcedure(interop.CimMdlrAPI.MdProcedureType.cmFairCurveProcedure);
//Cast To IMdFairCurve Procedure
interop.CimMdlrAPI.IMdFairCurve aIMdFairCurve = (interop.CimMdlrAPI.IMdFairCurve)aProcedure;
//Get Curve Entity Using Id(must be edge id).
int aCurveId = 4;
interop.CimBaseAPI.ICimEntity aCurveEntityToFair = (interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(aCurveId, aModel);
if (aCurveEntityToFair.Type == interop.CimBaseAPI.EntityEnumType.cmBody)
{
return;
}
interop.CimBaseAPI.ICimEntityList aEntitiesToFair = new interop.CimBaseAPI.CimEntityList();
aEntitiesToFair.Add(aCurveEntityToFair);
//Set Parameters to fair procedure
aIMdFairCurve.Entities = (interop.CimMdlrAPI.ICimEntityList)aEntitiesToFair;
aIMdFairCurve.SlopeMode = interop.CimMdlrAPI.FairCurveSlopeOption.cmFairCurveKeepSlope;
aIMdFairCurve.Tolerance = 25;
//Execute the IMdFairCurve Procedure
aProcedure.Execute();
Example 2-Free Slope ModeExample 2-Free Slope Mode
// create Cimatron App Access object
interop.CimAppAccess.AppAccess aAppAccess = new interop.CimAppAccess.AppAccess();
//Get application object from App access
interop.CimatronE.IApplication CimApp = (interop.CimatronE.IApplication)aAppAccess.GetActiveApplication();
// Get active document from application
interop.CimBaseAPI.ICimDocument aDoc = (interop.CimBaseAPI.ICimDocument)CimApp.GetActiveDoc();
interop.CimMdlrAPI.IModelContainer aContainer = (interop.CimMdlrAPI.IModelContainer)aDoc;
//GetModel
interop.CimMdlrAPI.IMdlrModel aMdlrModel = (interop.CimMdlrAPI.IMdlrModel)aContainer.Model;
interop.CimMdlrAPI.IModel aModel = (interop.CimMdlrAPI.IModel)aMdlrModel;
//Create FairCurve Procedure
interop.CimMdlrAPI.IMdProcedure aProcedure =
(interop.CimMdlrAPI.MdScale)aMdlrModel.CreateProcedure(interop.CimMdlrAPI.MdProcedureType.cmFairCurveProcedure);
//Cast To IMdFairCurve Procedure
interop.CimMdlrAPI.IMdFairCurve aIMdFairCurve = (interop.CimMdlrAPI.IMdFairCurve)aProcedure;
//Get Curve Entity Using Id(must be edge id).
int aCurveId = 4;
interop.CimBaseAPI.ICimEntity aCurveEntityToFair = (interop.CimBaseAPI.ICimEntity)aModel.GetEntityById(aCurveId, aModel);
if (aCurveEntityToFair.Type == interop.CimBaseAPI.EntityEnumType.cmBody)
{
return;
}
interop.CimBaseAPI.ICimEntityList aEntitiesToFair = new interop.CimBaseAPI.CimEntityList();
aEntitiesToFair.Add(aCurveEntityToFair);
//Set Parameters to fair procedure
aIMdFairCurve.Entities = (interop.CimMdlrAPI.ICimEntityList)aEntitiesToFair;
aIMdFairCurve.SlopeMode = interop.CimMdlrAPI.FairCurveSlopeOption.cmFairCurveFreeSlope;
aIMdFairCurve.Tolerance = 25;
//Execute the IMdFairCurve Procedure
aProcedure.Execute();
Example 1-Keep Slope As it is ModeExample 1-Keep Slope As it is Mode
import clr
#Adding references of required interop dlls
clr.AddReference("interop.CimAppAccess")
clr.AddReference("interop.CimatronE")
clr.AddReference("interop.CimServicesAPI")
clr.AddReference("interop.CimBaseAPI")
clr.AddReference("interop.CimMdlrAPI")
#importing modules from interop dlls
import interop.CimAppAccess
import interop.CimatronE
import interop.CimServicesAPI
import interop.CimBaseAPI
import interop.CimMdlrAPI
# create Cimatron App Access object
aAppAcc = interop.CimAppAccess.AppAccess()
cimApp = None
#Get Active Cimatron Application
cimApp = interop.CimatronE.IApplication(aAppAcc.GetActiveApplication())
#Get Active Cimatron Document
aDOC = interop.CimBaseAPI.ICimDocument(cimApp.GetActiveDoc())
aModelCont = interop.CimMdlrAPI.IModelContainer(aDOC)
#Get Model
aMdlrModel = interop.CimMdlrAPI.MdlrModel(aModelCont.Model)
aModel = interop.CimMdlrAPI.IModel(aMdlrModel)
#Create FairCurve Procedure
aProcedure = aMdlrModel.CreateProcedure(interop.CimMdlrAPI.MdProcedureType.cmFairCurveProcedure)
aIMdFairCurve = interop.CimMdlrAPI.IMdFairCurve(aProcedure)
#Get Curve Entity Using Id(must be edge id).
aEntitiesToFair = interop.CimBaseAPI.ICimEntityList(interop.CimBaseAPI.CimEntityList())
aEntitiesToFair.Add(aModel.GetEntityById(4, aModel))
#Set Parameters to the procedure
aIMdFairCurve.Entities = interop.CimMdlrAPI.ICimEntityList(aEntitiesToFair)
aIMdFairCurve.SlopeMode = interop.CimMdlrAPI.FairCurveSlopeOption.cmFairCurveKeepSlope
aIMdFairCurve.Tolerance = 22
#Execute the IMdFairCurve Procedure
aProcedure.Execute()
Example 2-Free Slope ModeExample 2-Free Slope Mode
import clr
#Adding references of required interop dlls
clr.AddReference("interop.CimAppAccess")
clr.AddReference("interop.CimatronE")
clr.AddReference("interop.CimServicesAPI")
clr.AddReference("interop.CimBaseAPI")
clr.AddReference("interop.CimMdlrAPI")
#importing modules from interop dlls
import interop.CimAppAccess
import interop.CimatronE
import interop.CimServicesAPI
import interop.CimBaseAPI
import interop.CimMdlrAPI
# create Cimatron App Access object
aAppAcc = interop.CimAppAccess.AppAccess()
cimApp = None
#Get Active Cimatron Application
cimApp = interop.CimatronE.IApplication(aAppAcc.GetActiveApplication())
#Get Active Cimatron Document
aDOC = interop.CimBaseAPI.ICimDocument(cimApp.GetActiveDoc())
aModelCont = interop.CimMdlrAPI.IModelContainer(aDOC)
#Get Model
aMdlrModel = interop.CimMdlrAPI.MdlrModel(aModelCont.Model)
aModel = interop.CimMdlrAPI.IModel(aMdlrModel)
#Create FairCurve Procedure
aProcedure = aMdlrModel.CreateProcedure(interop.CimMdlrAPI.MdProcedureType.cmFairCurveProcedure)
aIMdFairCurve = interop.CimMdlrAPI.IMdFairCurve(aProcedure)
#Get Curve Entity Using Id(must be edge id).
aEntitiesToFair = interop.CimBaseAPI.ICimEntityList(interop.CimBaseAPI.CimEntityList())
aEntitiesToFair.Add(aModel.GetEntityById(4, aModel))
aEntitiesToFair.Add(aModel.GetEntityById(22, aModel))
#Set Parameters to the procedure
aIMdFairCurve.Entities = interop.CimMdlrAPI.ICimEntityList(aEntitiesToFair)
aIMdFairCurve.SlopeMode = interop.CimMdlrAPI.FairCurveSlopeOption.cmFairCurveFreeSlope
aIMdFairCurve.Tolerance = 5
#Execute the IMdFairCurve Procedure
aProcedure.Execute()
