IGeom3DEllipse

This interface represents the arc or ellipse geometrical data.

Namespace

interop.CimServicesAPI

Compatibility

Cimatron 2024 or later

Properties

Get

EndAngle

double

Get

StartAngle

double

Get

RadiusMinor

double

Get

RadiusMajor

double

Get

MajorAxis

double[]

Get

Normal

double[]

Get

RadiusRatio

double

Get

ParamOffset

double

Get

Center

double[]

Methods

None

Events

NoneĀ 

Remarks

None

Example

interop.CimAppAccess.AppAccess AppAcc = new interop.CimAppAccess.AppAccess();
interop.CimatronE.IApplication CimApp = (interop.CimatronE.IApplication)AppAcc.GetApplication();
interop.CimatronE.ICimDocument aDoc = CimApp.GetActiveDoc();
interop.CimMdlrAPI.IModelContainer aContainer = (interop.CimMdlrAPI.IModelContainer)aDoc;
interop.CimMdlrAPI.IMdlrModel aMdlrModel = (interop.CimMdlrAPI.IMdlrModel)aContainer.Model;
interop.CimMdlrAPI.IEntityQuery aMdlrQuery = (interop.CimMdlrAPI.IEntityQuery)aMdlrModel;
interop.CimMdlrAPI.IEntityFilter aEntityFilterEdge = aMdlrQuery.CreateFilter(interop.CimMdlrAPI.EFilterEnumType.cmFilterEntityType);
interop.CimBaseAPI.FilterType aEdgeFilter = (interop.CimBaseAPI.FilterType)aEntityFilterEdge;
aEdgeFilter.Add(interop.CimBaseAPI.EntityEnumType.cmEdge);
aMdlrQuery.SetFilter((interop.CimMdlrAPI.IEntityFilter)aEdgeFilter);
interop.CimMdlrAPI.ICimEntityList aEdgeList = aMdlrQuery.Select();
//Get One Edge
interop.CimMdlrAPI.ICimEntity aEdge = (interop.CimMdlrAPI.ICimEntity)aEdgeList[1];
int aId = aEdge.ID;
interop.CimMdlrAPI.IGeometry3D aGeom = aEdge.Geometry;
var aType = aGeom.Type;
interop.CimServicesAPI.IGeom3DCurve aCurve = aGeom as interop.CimServicesAPI.IGeom3DCurve;
if (aCurve != null)
{
if (aCurve.CurveType == interop.CimServicesAPI.GeomCurveType.cmGeomCurveEllipse)
{
interop.CimServicesAPI.IGeom3DEllipse aEllipse = aCurve as interop.CimServicesAPI.IGeom3DEllipse;
}
}

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

aAppAcc = interop.CimAppAccess.AppAccess()
aCimApp = interop.CimatronE.IApplication(aAppAcc.GetApplication())
aDOC = aCimApp.GetActiveDoc()
aContainer = interop.CimMdlrAPI.IModelContainer(aDOC)
aMdlrModel = interop.CimMdlrAPI.IMdlrModel(aContainer.Model)

aMdlrQuery = interop.CimMdlrAPI.IEntityQuery(aMdlrModel)
aEntityFilterEdge = aMdlrQuery.CreateFilter(interop.CimMdlrAPI.EFilterEnumType.cmFilterEntityType)
aEdgeFilter = interop.CimBaseAPI.FilterType(aEntityFilterEdge)

aEdgeFilter.Add(interop.CimBaseAPI.EntityEnumType.cmEdge)
aMdlrQuery.SetFilter(interop.CimMdlrAPI.IEntityFilter(aEdgeFilter))

aEdgeList = aMdlrQuery.Select()
aEdgeCount = aEdgeList.Count

# Get One Edge
aEdge = interop.CimMdlrAPI.ICimEntity(aEdgeList[1])
aId = aEdge.ID
aGeom = aEdge.Geometry
aCurve = None
if aGeom.Type == interop.CimMdlrAPI.GeomType.cmGeomCurve:
aCurve = interop.CimServicesAPI.IGeom3DCurve(aGeom)

aEllipse = None
if aCurve.CurveType == interop.CimServicesAPI.GeomCurveType.cmGeomCurveEllipse :
aEllipse = interop.CimServicesAPI.IGeom3DEllipse(aCurve)