Interface for measurement (distance, whatis) and properties calculation (like Centre of Mass, Inertia, etc.).
import "GEOM_Gen.idl";
Classes | |
struct | ShapeError |
Description of a shape defect: type and incriminated sub-shapes. More... | |
Public Types | |
enum | ShapeErrorType { InvalidPointOnCurve, InvalidPointOnCurveOnSurface, InvalidPointOnSurface, No3DCurve, Multiple3DCurve, Invalid3DCurve, NoCurveOnSurface, InvalidCurveOnSurface, InvalidCurveOnClosedSurface, InvalidSameRangeFlag, InvalidSameParameterFlag, InvalidDegeneratedFlag, FreeEdge, InvalidMultiConnexity, InvalidRange, EmptyWire, RedundantEdge, SelfIntersectingWire, NoSurface, InvalidWire, RedundantWire, IntersectingWires, InvalidImbricationOfWires, EmptyShell, RedundantFace, UnorientableShape, NotClosed, NotConnected, SubshapeNotInShape, BadOrientation, BadOrientationOfSubshape, InvalidToleranceValue, CheckFail } |
Enumeration of Shape defects coming from CheckShape algorithms. More... | |
typedef sequence< ShapeError > | ShapeErrors |
Sequence of all shape defects. More... | |
Public Member Functions | |
GEOM_IKindOfShape::shape_kind | KindOfShape (in GEOM_Object theShape, out ListOfLong theIntegers, out ListOfDouble theDoubles) |
Get kind of theShape. More... | |
void | GetPosition (in GEOM_Object theShape, out double Ox, out double Oy, out double Oz, out double Zx, out double Zy, out double Zz, out double Xx, out double Xy, out double Xz) |
Get position (LCS) of theShape. More... | |
void | GetBasicProperties (in GEOM_Object theShape, in double theTolerance, out double theLength, out double theSurfArea, out double theVolume) |
Get summarized length of all wires, area of surface and volume of the given shape. More... | |
GEOM_Object | GetCentreOfMass (in GEOM_Object theShape) |
Get a point, situated at the centre of mass of theShape. More... | |
GEOM_Object | GetVertexByIndex (in GEOM_Object theShape, in long index) |
GEOM_Object | GetNormal (in GEOM_Object theFace, in GEOM_Object theOptionalPoint) |
Get a vector, representing the normal of theFace. If the face is not planar, theOptionalPoint is obligatory. More... | |
void | GetInertia (in GEOM_Object theShape, out double I11, out double I12, out double I13, out double I21, out double I22, out double I23, out double I31, out double I32, out double I33, out double Ix, out double Iy, out double Iz) |
Get inertia matrix and moments of inertia of theShape. More... | |
void | GetBoundingBox (in GEOM_Object theShape, in boolean precise, out double Xmin, out double Xmax, out double Ymin, out double Ymax, out double Zmin, out double Zmax) |
Get parameters of bounding box of the given shape. More... | |
GEOM_Object | MakeBoundingBox (in GEOM_Object theShape, in boolean precise) |
Get bounding box of the given shape. More... | |
void | GetTolerance (in GEOM_Object theShape, out double FaceMin, out double FaceMax, out double EdgeMin, out double EdgeMax, out double VertMin, out double VertMax) |
Get min and max tolerances of sub-shapes of theShape. More... | |
boolean | CheckShape (in GEOM_Object theShape, out ShapeErrors theErrors) |
Check a topology of the given shape. More... | |
boolean | CheckShapeWithGeometry (in GEOM_Object theShape, out ShapeErrors theErrors) |
Check a topology and a geometry of the given shape. More... | |
string | PrintShapeErrors (in GEOM_Object theShape, in ShapeErrors theErrors) |
Convert sequence of shape errors, returned by CheckShape() or CheckShapeWithGeometry(), into string. More... | |
boolean | CheckSelfIntersections (in GEOM_Object theShape, in long theCheckLevel, out ListOfLong theIntersections) |
Check a topology of the given shape on self-intersections presence. More... | |
boolean | CheckSelfIntersectionsFast (in GEOM_Object theShape, in float theDeflection, in double theTolerance, out ListOfLong theIntersections) |
Detect self-intersections of the given shape with algorithm based on mesh intersections. More... | |
boolean | CheckBOPArguments (in GEOM_Object theShape) |
Check boolean and partition operations agruments. More... | |
boolean | FastIntersect (in GEOM_Object theShape1, in GEOM_Object theShape2, in double theTolerance, in float theDeflection, out ListOfLong theIntersections1, out ListOfLong theIntersections2) |
Detect intersections of the given shapes with algorithm based on mesh intersections. More... | |
string | IsGoodForSolid (in GEOM_Object theShape) |
Check if the given shape can be an argument for MakeSolid operation. More... | |
string | WhatIs (in GEOM_Object theShape) |
btain description of the given shape More... | |
ListOfBool | AreCoordsInside (in GEOM_Object theShape, in ListOfDouble coords, in double tolerance) |
Check if points defined by coords = [x1, y1, z1, x2, y2, z2, ...] are inside or on the shape theShape. More... | |
double | GetMinDistance (in GEOM_Object theShape1, in GEOM_Object theShape2, out double X1, out double Y1, out double Z1, out double X2, out double Y2, out double Z2) |
Get minimal distance between the given shapes. More... | |
long | ClosestPoints (in GEOM_Object theShape1, in GEOM_Object theShape2, out ListOfDouble theCoords) |
Get closest points of the given shapes. More... | |
double | GetAngle (in GEOM_Object theShape1, in GEOM_Object theShape2) |
Get angle between the given lines or linear edges. More... | |
double | GetAngleBtwVectors (in GEOM_Object theShape1, in GEOM_Object theShape2) |
Get angle between the given vectors. More... | |
void | PointCoordinates (in GEOM_Object theShape, out double X, out double Y, out double Z) |
Get point coordinates. More... | |
double | CurveCurvatureByParam (in GEOM_Object theShape, in double theParam) |
Get radius of curvature of curve in the point determinated by param. More... | |
double | CurveCurvatureByPoint (in GEOM_Object theShape, in GEOM_Object thePoint) |
Get radius of curvature of curve in the given point. More... | |
double | MaxSurfaceCurvatureByParam (in GEOM_Object theShape, in double theUParam, in double theVParam) |
Get max radius of curvature of surface in the point determinated by params. More... | |
double | MaxSurfaceCurvatureByPoint (in GEOM_Object theShape, in GEOM_Object thePoint) |
Get max radius of curvature of surface in the given point. More... | |
double | MinSurfaceCurvatureByParam (in GEOM_Object theShape, in double theUParam, in double theVParam) |
Get min radius of curvature of surface in the point determinated by params. More... | |
double | MinSurfaceCurvatureByPoint (in GEOM_Object theShape, in GEOM_Object thePoint) |
Get min radius of curvature of surface in the given point. More... | |
Public Member Functions inherited from GEOM::GEOM_IOperations | |
boolean | IsDone () |
To know, if the operation was successfully performed. More... | |
void | SetErrorCode (in string theErrorID) |
Set the operation error code. More... | |
string | GetErrorCode () |
Get the operation error code. More... | |
long | GetStudyID () |
Get ID of study, where the operation is defined. More... | |
void | StartOperation () |
Opens a new transaction. More... | |
void | FinishOperation () |
Closes the previously opened trasaction. More... | |
void | AbortOperation () |
Aborts the previously opened transaction. More... | |
typedef sequence<ShapeError> GEOM::GEOM_IMeasureOperations::ShapeErrors |
ListOfBool GEOM::GEOM_IMeasureOperations::AreCoordsInside | ( | in GEOM_Object | theShape, |
in ListOfDouble | coords, | ||
in double | tolerance | ||
) |
theShape | Shape to check. |
coords | list of coordinates. |
tolerance | tolerance. |
boolean GEOM::GEOM_IMeasureOperations::CheckBOPArguments | ( | in GEOM_Object | theShape | ) |
theShape | the agrument of an operation to be checked. |
boolean GEOM::GEOM_IMeasureOperations::CheckSelfIntersections | ( | in GEOM_Object | theShape, |
in long | theCheckLevel, | ||
out ListOfLong | theIntersections | ||
) |
theShape | Shape to check validity of. |
theCheckLevel | the level of self-interference check. |
theIntersections | Output. List of intersected sub-shapes IDs, it contains pairs of IDs. |
boolean GEOM::GEOM_IMeasureOperations::CheckSelfIntersectionsFast | ( | in GEOM_Object | theShape, |
in float | theDeflection, | ||
in double | theTolerance, | ||
out ListOfLong | theIntersections | ||
) |
theShape | Shape to check validity of. |
theDeflection | Linear deflection coefficient that specifies quality of tesselation. |
theTolerance | Specifies a distance between sub-shapes used for detecting gaps:
|
theIntersections | Output. List of intersected sub-shapes IDs, it contains pairs of IDs. |
boolean GEOM::GEOM_IMeasureOperations::CheckShape | ( | in GEOM_Object | theShape, |
out ShapeErrors | theErrors | ||
) |
theShape | Shape to check validity of. |
theErrors | Structure, containing discovered errors and incriminated sub-shapes. |
boolean GEOM::GEOM_IMeasureOperations::CheckShapeWithGeometry | ( | in GEOM_Object | theShape, |
out ShapeErrors | theErrors | ||
) |
theShape | Shape to check validity of. |
theErrors | Structure, containing discovered errors and incriminated sub-shapes. |
long GEOM::GEOM_IMeasureOperations::ClosestPoints | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2, | ||
out ListOfDouble | theCoords | ||
) |
theShape1,theShape2 | Shapes to find closest points of. |
theCoords | Output. List of (X, Y, Z) coordinates for all couples of points. |
double GEOM::GEOM_IMeasureOperations::CurveCurvatureByParam | ( | in GEOM_Object | theShape, |
in double | theParam | ||
) |
theShape | - curve. |
theParam | - parameter on curve |
double GEOM::GEOM_IMeasureOperations::CurveCurvatureByPoint | ( | in GEOM_Object | theShape, |
in GEOM_Object | thePoint | ||
) |
theShape | - curve. |
thePoint | - point |
boolean GEOM::GEOM_IMeasureOperations::FastIntersect | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2, | ||
in double | theTolerance, | ||
in float | theDeflection, | ||
out ListOfLong | theIntersections1, | ||
out ListOfLong | theIntersections2 | ||
) |
theShape1 | First source object |
theShape2 | Second source object |
theTolerance | Specifies a distance between shapes used for detecting gaps:
|
theDeflection | Linear deflection coefficient that specifies quality of tesselation:
|
theIntersections1 | Output: contains list of sub-shapes IDs from 1st shape that localize intersection |
theIntersections2 | Output: contains list of sub-shapes IDs from 2nd shape that localize intersection |
double GEOM::GEOM_IMeasureOperations::GetAngle | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2 | ||
) |
theShape1,theShape2 | Shapes to find angle between. Lines or linear edges. |
double GEOM::GEOM_IMeasureOperations::GetAngleBtwVectors | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2 | ||
) |
theShape1,theShape2 | Vectors to find angle between. |
void GEOM::GEOM_IMeasureOperations::GetBasicProperties | ( | in GEOM_Object | theShape, |
in double | theTolerance, | ||
out double | theLength, | ||
out double | theSurfArea, | ||
out double | theVolume | ||
) |
theShape | Shape to define properties of. |
theTolerance | maximal relative error of area and volume computation. |
theLength | Output. Summarized length of all wires of the given shape. |
theSurfArea | Output. Area of surface of the given shape. |
theVolume | Output. Volume of the given shape. |
void GEOM::GEOM_IMeasureOperations::GetBoundingBox | ( | in GEOM_Object | theShape, |
in boolean | precise, | ||
out double | Xmin, | ||
out double | Xmax, | ||
out double | Ymin, | ||
out double | Ymax, | ||
out double | Zmin, | ||
out double | Zmax | ||
) |
theShape | Shape to obtain bounding box of. |
precise | TRUE for precise computation; FALSE for fast one. |
Xmin,Xmax | Output. Limits of shape along OX axis. |
Ymin,Ymax | Output. Limits of shape along OY axis. |
Zmin,Zmax | Output. Limits of shape along OZ axis. |
GEOM_Object GEOM::GEOM_IMeasureOperations::GetCentreOfMass | ( | in GEOM_Object | theShape | ) |
theShape | Shape to define centre of mass of. |
void GEOM::GEOM_IMeasureOperations::GetInertia | ( | in GEOM_Object | theShape, |
out double | I11, | ||
out double | I12, | ||
out double | I13, | ||
out double | I21, | ||
out double | I22, | ||
out double | I23, | ||
out double | I31, | ||
out double | I32, | ||
out double | I33, | ||
out double | Ix, | ||
out double | Iy, | ||
out double | Iz | ||
) |
theShape | Shape to calculate inertia of. |
I11,I12,I13,I21,I22,I23,I31,I32,I33 | Output. Components of the inertia matrix of the given shape. |
Ix,Iy,Iz | Output. Moments of inertia of the given shape. |
double GEOM::GEOM_IMeasureOperations::GetMinDistance | ( | in GEOM_Object | theShape1, |
in GEOM_Object | theShape2, | ||
out double | X1, | ||
out double | Y1, | ||
out double | Z1, | ||
out double | X2, | ||
out double | Y2, | ||
out double | Z2 | ||
) |
theShape1,theShape2 | Shapes to find minimal distance between. |
X1,Y1,Z1 | Output. Coordinates of point on theShape1, nearest to theShape2. |
X2,Y2,Z2 | Output. Coordinates of point on theShape2, nearest to theShape1. |
GEOM_Object GEOM::GEOM_IMeasureOperations::GetNormal | ( | in GEOM_Object | theFace, |
in GEOM_Object | theOptionalPoint | ||
) |
theFace | Shape (face) to define the normal of. |
theOptionalPoint | Shape (point) to define the normal at. Can be NULL in case of planar face. |
void GEOM::GEOM_IMeasureOperations::GetPosition | ( | in GEOM_Object | theShape, |
out double | Ox, | ||
out double | Oy, | ||
out double | Oz, | ||
out double | Zx, | ||
out double | Zy, | ||
out double | Zz, | ||
out double | Xx, | ||
out double | Xy, | ||
out double | Xz | ||
) |
theShape | Shape to calculate position of. |
Ox,Oy,Oz | Output. Coordinates of shape's location origin. Origin of the LCS is situated at the shape's center of mass. |
Zx,Zy,Zz | Output. Coordinates of shape's location normal(main) direction. |
Xx,Xy,Xz | Output. Coordinates of shape's location X direction. Axes of the LCS are obtained from shape's location or, if the shape is a planar face, from position of its plane. |
void GEOM::GEOM_IMeasureOperations::GetTolerance | ( | in GEOM_Object | theShape, |
out double | FaceMin, | ||
out double | FaceMax, | ||
out double | EdgeMin, | ||
out double | EdgeMax, | ||
out double | VertMin, | ||
out double | VertMax | ||
) |
theShape | Shape, to get tolerances of. |
FaceMin,FaceMax | Output. Min and max tolerances of the faces. |
EdgeMin,EdgeMax | Output. Min and max tolerances of the edges. |
VertMin,VertMax | Output. Min and max tolerances of the vertices. |
GEOM_Object GEOM::GEOM_IMeasureOperations::GetVertexByIndex | ( | in GEOM_Object | theShape, |
in long | index | ||
) |
string GEOM::GEOM_IMeasureOperations::IsGoodForSolid | ( | in GEOM_Object | theShape | ) |
theShape | Shape to be described. |
GEOM_IKindOfShape::shape_kind GEOM::GEOM_IMeasureOperations::KindOfShape | ( | in GEOM_Object | theShape, |
out ListOfLong | theIntegers, | ||
out ListOfDouble | theDoubles | ||
) |
theShape | Shape to get a kind of. |
theIntegers | Output. Integer and enumerated shape's parameters (kind of surface, closed/unclosed, number of edges, etc.) |
theDoubles | Output. Double shape's parameters (coordinates, dimensions, etc.) |
GEOM_Object GEOM::GEOM_IMeasureOperations::MakeBoundingBox | ( | in GEOM_Object | theShape, |
in boolean | precise | ||
) |
theShape | Shape to obtain bounding box of. |
precise | TRUE for precise computation; FALSE for fast one. |
double GEOM::GEOM_IMeasureOperations::MaxSurfaceCurvatureByParam | ( | in GEOM_Object | theShape, |
in double | theUParam, | ||
in double | theVParam | ||
) |
theShape | - surface. |
theUParam | - U-parameter on surface |
theVParam | - V-parameter on surface |
double GEOM::GEOM_IMeasureOperations::MaxSurfaceCurvatureByPoint | ( | in GEOM_Object | theShape, |
in GEOM_Object | thePoint | ||
) |
theShape | - surface. |
thePoint | - point |
double GEOM::GEOM_IMeasureOperations::MinSurfaceCurvatureByParam | ( | in GEOM_Object | theShape, |
in double | theUParam, | ||
in double | theVParam | ||
) |
theShape | - surface. |
theUParam | - U-parameter on surface |
theVParam | - V-parameter on surface |
double GEOM::GEOM_IMeasureOperations::MinSurfaceCurvatureByPoint | ( | in GEOM_Object | theShape, |
in GEOM_Object | thePoint | ||
) |
theShape | - surface. |
thePoint | - point |
void GEOM::GEOM_IMeasureOperations::PointCoordinates | ( | in GEOM_Object | theShape, |
out double | X, | ||
out double | Y, | ||
out double | Z | ||
) |
string GEOM::GEOM_IMeasureOperations::PrintShapeErrors | ( | in GEOM_Object | theShape, |
in ShapeErrors | theErrors | ||
) |
theShape | the invalid shape. |
theErrors | The sequence of theShape errors. |
string GEOM::GEOM_IMeasureOperations::WhatIs | ( | in GEOM_Object | theShape | ) |
O
theShape | Shape to be described. |