ISkLine

This class represents a sketcher Line. Use this interface to get and set sketch line parameters such as StartPoint and EndPoint.

Namespace

interop.CimServicesAPI

Compatibility

Cimatron 2024 or later

Properties

Get, Set

Id

int

Get

Type

interop.CimServicesAPI.SketchObjectType

Get, Set

Used

int

Get, Set

StartParam

double

Get, Set

EndParam

double

Get

ParamByPoint

double

Get, Set

Start

double[]

Get, Set

End

double[]

Methods

double[]

Evaluate

( double )

double[]

FirstDerivative

( double )

double[]

SecondDerivative

( double )

interop.CimServicesAPI.ISkPoint

GetStartPoint

( )

interop.CimServicesAPI.ISkPoint

GetEndPoint

( )

Events

None 

Remarks

None

Example

//Sample Code in CSharp to get Cimatron SkLine object.
// 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.GetApplication();
// Get active document from application
interop.CimBaseAPI.ICimDocument aDOC = (interop.CimBaseAPI.ICimDocument)CimApp.GetActiveDoc();
if (aDOC != null) // Check if document was found
{
interop.CimMdlrAPI.IModelContainer aModelCont = (interop.CimMdlrAPI.IModelContainer)aDOC;
// Create the Sketcher procedure depended on the type of the active document. For now we take part document
if (aDOC.Type == interop.CimBaseAPI.DocumentEnumType.cmPart)
{
// If active document is part then get the MdlrModel from model container
interop.CimMdlrAPI.MdlrModel aMdlrModel = (interop.CimMdlrAPI.MdlrModel)aModelCont.Model;
//Create sketcher procedure on Modeler Model
interop.CimMdlrAPI.MdSketcher aMdSketcherProcedure =
(interop.CimMdlrAPI.MdSketcher)aMdlrModel.CreateProcedure(interop.CimMdlrAPI.MdProcedureType.cmSketcherProcedure);
// Cast MdSketcher to IMdSketcher to get sketcher object
interop.CimMdlrAPI.IMdSketcher aIMdSketcher = (interop.CimMdlrAPI.IMdSketcher)aMdSketcherProcedure;
interop.CimServicesAPI.ISketcher aISketcher = (interop.CimServicesAPI.ISketcher)aIMdSketcher.Sketcher;

//Create SkLine type object
interop.CimServicesAPI.ISkObject aSkLineObj = aISketcher.CreateObject(interop.CimServicesAPI.SketchObjectType.cmSketchLine);
interop.CimServicesAPI.ISkLine aSkLine = (interop.CimServicesAPI.ISkLine)aSkLineObj;
}
}

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

#Getting AppAccess Object
aCimAppAccess = interop.CimAppAccess.AppAccess()
#Getting instance of CimatronE Application
aCimApp = None
while (aCimApp == None) :
aCimApp = (interop.CimatronE.IApplication)(aCimAppAccess.GetApplication())
aDocument = (interop.CimatronE.ICimDocument)(aCimApp.GetActiveDoc())
if (aDocument != None) :
if (aDocument.Type == interop.CimatronE.DocumentEnumType.cmPart) :
aModelCont = (interop.CimMdlrAPI.IModelContainer)(aDocument)
#If active document is part then get the MdlrModel from model container
aMdlrModel = (interop.CimMdlrAPI.MdlrModel)(aModelCont.Model)
aMdSketcherProcedure = (interop.CimMdlrAPI.MdSketcher)(aMdlrModel.CreateProcedure(interop.CimMdlrAPI.MdProcedureType.cmSketcherProcedure))
# Cast MdSketcher to IMdSketcher to get sketcher object
aIMdSketcher = (interop.CimMdlrAPI.IMdSketcher)(aMdSketcherProcedure)
aISketcher = (interop.CimServicesAPI.ISketcher)(aIMdSketcher.Sketcher)
#Create SkLine type object
aSkLineObj= (interop.CimServicesAPI.ISkObject)(aISketcher.CreateObject(interop.CimServicesAPI.SketchObjectType.cmSketchLine))
aSkLine = (interop.CimServicesAPI.ISkLine)(aSkLineObj)