This method returns the minimum and maximum radius of a selected face.
Cimatron 2024 or later
void GetMinMaxRadius(out double oMin, out double oMax);
def GetMinMaxRadius() -> tuple
|
Return: double |
oMin-Return the minimum radius of the face |
|
Return: double |
oMax-Return the maximum radius of the face |
| Input: None | |
None
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.cmFace);
aMdlrQuery.SetFilter((interop.CimMdlrAPI.IEntityFilter)aEdgeFilter);
interop.CimMdlrAPI.ICimEntityList aFaceList = aMdlrQuery.Select();
int aFaceCount = aFaceList.Count;
interop.CimMdlrAPI.ICimEntity aFace = (interop.CimMdlrAPI.ICimEntity)aFaceList[1];
int aId = aFace.ID;
interop.CimMdlrAPI.IGeometry3D aGeom = aFace.Geometry;
if (aGeom.Type == interop.CimMdlrAPI.GeomType.cmGeomSurface)
{
interop.CimServicesAPI.IGeom3DSurface aSurface = aGeom as interop.CimServicesAPI.IGeom3DSurface;
double aMin = 0;
double aMax = 0;
aSurface.GetMinMaxRadius(out aMin, out aMax);
}
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)
aEntityFilterFace = aMdlrQuery.CreateFilter(interop.CimMdlrAPI.EFilterEnumType.cmFilterEntityType)
aFaceFilter = interop.CimBaseAPI.FilterType(aEntityFilterFace)
aFaceFilter.Add(interop.CimBaseAPI.EntityEnumType.cmFace)
aMdlrQuery.SetFilter(interop.CimMdlrAPI.IEntityFilter(aFaceFilter))
aFaceList = aMdlrQuery.Select()
aFaceCount = aFaceList.Count
# Get One Face
aFace = interop.CimMdlrAPI.ICimEntity(aFaceList[1])
aId = aFace.ID
aGeom = aFace.Geometry
aSurface = None
if aGeom.Type == interop.CimMdlrAPI.GeomType.cmGeomSurface:
aSurface = interop.CimServicesAPI.IGeom3DSurface(aGeom)
aMin = 0
aMax = 0
aOutput1 = aSurface.GetMinMaxRadius()
