IMdFaceCurve

This class represents a procedure for curve fairing.

Namespace

interop.CimMdlrAPI

Compatibility

Cimatron 2024 or later

Properties

Get, Set

SlopeMode

interop.CimMdlrAPI.FairCurveSlopeOption

Get, Set

Tolerance

double

Get, Set

Entities

interop.CimMdlrAPI.ICimEntityList

Methods

None

   
     

Events

None 

Remarks

None

Example

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()