SHAPER  9.12.0
GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI Class Reference

Static Public Member Functions

static std::shared_ptr< GeomAPI_ShapemakeBox (const double theDx, const double theDy, const double theDz)
 Creates a box using the dimensions. More...
 
static std::shared_ptr< GeomAPI_ShapemakeBox (std::shared_ptr< GeomAPI_Pnt > theFirstPoint, std::shared_ptr< GeomAPI_Pnt > theSecondPoint)
 Creates a box using the two points that defined a diagonal. More...
 
static std::shared_ptr< GeomAPI_ShapemakeCylinder (std::shared_ptr< GeomAPI_Pnt > theBasePoint, std::shared_ptr< GeomAPI_Edge > theEdge, double theRadius, double theHeight)
 Creates a cylinder using a center, an axis, a radius and a height. More...
 
static std::shared_ptr< GeomAPI_ShapemakeCylinder (std::shared_ptr< GeomAPI_Pnt > theBasePoint, std::shared_ptr< GeomAPI_Edge > theEdge, double theRadius, double theHeight, double theAngle)
 Creates a portion of cylinder using a center, an axis, a radius, a height and an angle. More...
 
static std::shared_ptr< GeomAPI_ShapemakeCylinder (double theRadius, double theHeight)
 Creates a cylinder using the origin, the OZ axis, a radius and a height. More...
 
static std::shared_ptr< GeomAPI_ShapemakeCylinder (double theRadius, double theHeight, double theAngle)
 Creates a portion of cylinder using the origin, the OZ axis, a radius, a height and an angle. More...
 
static std::shared_ptr< GeomAPI_ShapemakeSphere (std::shared_ptr< GeomAPI_Pnt > theCenterPoint, double theRadius)
 Creates a sphere using a center and a radius. More...
 
static std::shared_ptr< GeomAPI_ShapemakeSphere (double theRadius)
 Creates a sphere using the origin and a radius. More...
 
static std::shared_ptr< GeomAPI_ShapemakeTorus (std::shared_ptr< GeomAPI_Pnt > theBasePoint, std::shared_ptr< GeomAPI_Edge > theEdge, double theRadius, double theRingRadius)
 Creates a torus using a base point, an axis, a radius and a ring radius. More...
 
static std::shared_ptr< GeomAPI_ShapemakeTorus (double theRadius, double theRingRadius)
 Creates a torus using a radius and a ring radius. More...
 
static std::shared_ptr< GeomAPI_ShapemakeCone (std::shared_ptr< GeomAPI_Pnt > theBasePoint, std::shared_ptr< GeomAPI_Edge > theEdge, double theBaseRadius, double theTopRadius, double theHeight)
 Creates a cone using a base point, an axis, a base radius, a top radius and a height. More...
 
static std::shared_ptr< GeomAPI_ShapemakeCone (double theBaseRadius, double theTopRadius, double theHeight)
 Creates a cone using a base radius, a top radius and a height. More...
 
static std::shared_ptr< GeomAPI_ShapemakeTranslation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theAxis, const double theDistance)
 Performs a translation from an axis and a distance. More...
 
static std::shared_ptr< GeomAPI_ShapemakeTranslation (std::shared_ptr< GeomAPI_Shape > theSourceShape, const double theDx, const double theDy, const double theDz)
 Performs a translation from dimensions. More...
 
static std::shared_ptr< GeomAPI_ShapemakeTranslation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Pnt > theStartPoint, std::shared_ptr< GeomAPI_Pnt > theEndPoint)
 Performs a translation from two points. More...
 
static std::shared_ptr< GeomAPI_ShapemakeRotation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theAxis, const double theAngle)
 Performs a rotation from an axis and an angle. More...
 
static std::shared_ptr< GeomAPI_ShapemakeRotation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Pnt > theCenterPoint, std::shared_ptr< GeomAPI_Pnt > theStartPoint, std::shared_ptr< GeomAPI_Pnt > theEndPoint)
 Performs a rotation from three points. More...
 
static std::shared_ptr< GeomAPI_ShapemakeSymmetry (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Pnt > thePoint)
 Performs a symmetry by a point. More...
 
static std::shared_ptr< GeomAPI_ShapemakeSymmetry (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theAxis)
 Performs a symmetry by an axis. More...
 
static std::shared_ptr< GeomAPI_ShapemakeSymmetry (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax2 > thePlane)
 Performs a symmetry by a plane. More...
 
static std::shared_ptr< GeomAPI_ShapemakeScale (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Pnt > theCenterPoint, const double theScaleFactor)
 Performs a scale by a scale factor. More...
 
static std::shared_ptr< GeomAPI_ShapemakeScale (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Pnt > theCenterPoint, const double theScaleFactorX, const double theScaleFactorY, const double theScaleFactorZ)
 Performs a scale by dimensions. More...
 
static std::shared_ptr< GeomAPI_ShapemakeMultiTranslation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theAxis, const double theStep, const int theNumber)
 Performs a multi translation along one axis, at a distance and a number of times. More...
 
static std::shared_ptr< GeomAPI_ShapemakeMultiTranslation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theFirstAxis, const double theFirstStep, const int theFirstNumber, std::shared_ptr< GeomAPI_Ax1 > theSecondAxis, const double theSecondStep, const int theSecondNumber)
 Performs a multi translation along two axis : a different distance on each axis and a different number of times for each axis. More...
 
static std::shared_ptr< GeomAPI_ShapemakeMultiRotation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theAxis, const int theNumber)
 Performs a multi rotation along one axis and a number of times. More...
 
static std::shared_ptr< GeomAPI_ShapemakeMultiRotation (std::shared_ptr< GeomAPI_Shape > theSourceShape, std::shared_ptr< GeomAPI_Ax1 > theAxis, const double theStep, const int theNumber)
 Performs a multi rotation along one axis, at a step and a number of times. More...
 
static std::shared_ptr< GeomAPI_ShapemakeConeSegment (const double theRMin1, const double theRMax1, const double theRMin2, const double theRMax2, const double theZ, const double theStartPhi, const double theDeltaPhi)
 Creates a cone segment using standard GDML parameters. More...
 

Member Function Documentation

◆ makeBox() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeBox ( const double  theDx,
const double  theDy,
const double  theDz 
)
static

Creates a box using the dimensions.

Parameters
theDxThe dimension on X
theDyThe dimension on Y
theDzThe dimension on Z
Returns
a shape

◆ makeBox() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeBox ( std::shared_ptr< GeomAPI_Pnt theFirstPoint,
std::shared_ptr< GeomAPI_Pnt theSecondPoint 
)
static

Creates a box using the two points that defined a diagonal.

Parameters
theFirstPointOne extermity of the diagonal
theSecondPointThe other extremity of the diagonal
Returns
a shape

◆ makeCylinder() [1/4]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeCylinder ( std::shared_ptr< GeomAPI_Pnt theBasePoint,
std::shared_ptr< GeomAPI_Edge theEdge,
double  theRadius,
double  theHeight 
)
static

Creates a cylinder using a center, an axis, a radius and a height.

Parameters
theBasePointThe center of the lower base of the cylinder
theEdgeThe axis of the cylinder
theRadiusThe radius of the cylinder
theHeightThe heigth of the cylinder

◆ makeCylinder() [2/4]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeCylinder ( std::shared_ptr< GeomAPI_Pnt theBasePoint,
std::shared_ptr< GeomAPI_Edge theEdge,
double  theRadius,
double  theHeight,
double  theAngle 
)
static

Creates a portion of cylinder using a center, an axis, a radius, a height and an angle.

Parameters
theBasePointThe center of the lower base of the cylinder
theEdgeThe axis of the cylinder
theRadiusThe radius of the cylinder
theHeightThe heigth of the cylinder
theAngleThe angle defining the portion

◆ makeCylinder() [3/4]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeCylinder ( double  theRadius,
double  theHeight 
)
static

Creates a cylinder using the origin, the OZ axis, a radius and a height.

Parameters
theRadiusThe radius of the cylinder
theHeightThe heigth of the cylinder

◆ makeCylinder() [4/4]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeCylinder ( double  theRadius,
double  theHeight,
double  theAngle 
)
static

Creates a portion of cylinder using the origin, the OZ axis, a radius, a height and an angle.

Parameters
theRadiusThe radius of the cylinder
theHeightThe heigth of the cylinder
theAngleThe angle defining the portion

◆ makeSphere() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeSphere ( std::shared_ptr< GeomAPI_Pnt theCenterPoint,
double  theRadius 
)
static

Creates a sphere using a center and a radius.

Parameters
theCenterPointThe center of the sphere
theRadiusThe radius of the sphere

◆ makeSphere() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeSphere ( double  theRadius)
static

Creates a sphere using the origin and a radius.

Parameters
theRadiusThe radius of the sphere

◆ makeTorus() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeTorus ( std::shared_ptr< GeomAPI_Pnt theBasePoint,
std::shared_ptr< GeomAPI_Edge theEdge,
double  theRadius,
double  theRingRadius 
)
static

Creates a torus using a base point, an axis, a radius and a ring radius.

Parameters
theBasePointThe center of the torus
theEdgeThe axis of the torus
theRadiusThe radius of the torus
theRingRadiusThe ring radius of the torus

◆ makeTorus() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeTorus ( double  theRadius,
double  theRingRadius 
)
static

Creates a torus using a radius and a ring radius.

Parameters
theRadiusThe radius of the torus
theRingRadiusThe ring radius of the torus

◆ makeCone() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeCone ( std::shared_ptr< GeomAPI_Pnt theBasePoint,
std::shared_ptr< GeomAPI_Edge theEdge,
double  theBaseRadius,
double  theTopRadius,
double  theHeight 
)
static

Creates a cone using a base point, an axis, a base radius, a top radius and a height.

Parameters
theBasePointThe center of the lower base of the cone
theEdgeThe axis of the cone
theBaseRadiusThe base radius of the cone
theTopRadiusThe top radius of the cone
theHeightThe height of the cone

◆ makeCone() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeCone ( double  theBaseRadius,
double  theTopRadius,
double  theHeight 
)
static

Creates a cone using a base radius, a top radius and a height.

Parameters
theBaseRadiusThe base radius of the cone
theTopRadiusThe top radius of the cone
theHeightThe height of the cone

◆ makeTranslation() [1/3]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeTranslation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theAxis,
const double  theDistance 
)
static

Performs a translation from an axis and a distance.

Parameters
theSourceShapeShape to be moved
theAxisMovement axis
theDistanceMovement distance
Returns
a shape

◆ makeTranslation() [2/3]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeTranslation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
const double  theDx,
const double  theDy,
const double  theDz 
)
static

Performs a translation from dimensions.

Parameters
theSourceShapeShape to be moved
theDxMovement dimension on X
theDyMovement dimension on Y
theDzMovement dimension on Z
Returns
a shape

◆ makeTranslation() [3/3]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeTranslation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Pnt theStartPoint,
std::shared_ptr< GeomAPI_Pnt theEndPoint 
)
static

Performs a translation from two points.

Parameters
theSourceShapeShape to be moved
theStartPointMovement start point
theEndPointMovement end point
Returns
a shape

◆ makeRotation() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeRotation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theAxis,
const double  theAngle 
)
static

Performs a rotation from an axis and an angle.

Parameters
theSourceShapeShape to be rotated
theAxisMovement axis
theAngleMovement angle
Returns
a shape

◆ makeRotation() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeRotation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Pnt theCenterPoint,
std::shared_ptr< GeomAPI_Pnt theStartPoint,
std::shared_ptr< GeomAPI_Pnt theEndPoint 
)
static

Performs a rotation from three points.

Parameters
theSourceShapeShape to be rotated
theCenterPointMovement center point
theStartPointMovement start point
theEndPointMovement end point
Returns
a shape

◆ makeSymmetry() [1/3]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeSymmetry ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Pnt thePoint 
)
static

Performs a symmetry by a point.

Parameters
theSourceShapeShape be symmetrized
thePointPoint of symmetry

◆ makeSymmetry() [2/3]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeSymmetry ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theAxis 
)
static

Performs a symmetry by an axis.

Parameters
theSourceShapeShape be symmetrized
theAxisAxis of symmetry

◆ makeSymmetry() [3/3]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeSymmetry ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax2 thePlane 
)
static

Performs a symmetry by a plane.

Parameters
theSourceShapeShape be symmetrized
thePlanePlane of symmetry

◆ makeScale() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeScale ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Pnt theCenterPoint,
const double  theScaleFactor 
)
static

Performs a scale by a scale factor.

Parameters
theSourceShapeShape be scaled
theCenterPointPoint of scale
theScaleFactorFactor of scale

◆ makeScale() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeScale ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Pnt theCenterPoint,
const double  theScaleFactorX,
const double  theScaleFactorY,
const double  theScaleFactorZ 
)
static

Performs a scale by dimensions.

Parameters
theSourceShapeShape be scaled
theCenterPointPoint of scale
theScaleFactorXFactor of scale in X
theScaleFactorYFactor of scale in Y
theScaleFactorZFactor of scale in Z

◆ makeMultiTranslation() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeMultiTranslation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theAxis,
const double  theStep,
const int  theNumber 
)
static

Performs a multi translation along one axis, at a distance and a number of times.

Parameters
theSourceShapeShape to be moved
theAxisMovement axis
theStepMovement step
theNumberMovement number
Returns
a shape

◆ makeMultiTranslation() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeMultiTranslation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theFirstAxis,
const double  theFirstStep,
const int  theFirstNumber,
std::shared_ptr< GeomAPI_Ax1 theSecondAxis,
const double  theSecondStep,
const int  theSecondNumber 
)
static

Performs a multi translation along two axis : a different distance on each axis and a different number of times for each axis.

Parameters
theSourceShapeShape to be moved
theFirstAxisFirst movement axis
theFirstStepFirst movement step
theFirstNumberFirst movement number
theSecondAxisFirst movement axis
theSecondStepFirst movement step
theSecondNumberFirst movement number
Returns
a shape

◆ makeMultiRotation() [1/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeMultiRotation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theAxis,
const int  theNumber 
)
static

Performs a multi rotation along one axis and a number of times.

Parameters
[in]theSourceShapeShape to be rotated
[in]theAxisAxis for the rotation
[in]theNumberNumber of copies

◆ makeMultiRotation() [2/2]

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeMultiRotation ( std::shared_ptr< GeomAPI_Shape theSourceShape,
std::shared_ptr< GeomAPI_Ax1 theAxis,
const double  theStep,
const int  theNumber 
)
static

Performs a multi rotation along one axis, at a step and a number of times.

Parameters
theSourceShapeShape to be moved
[in]theAxisAxis for the rotation
[in]theStepAngle for each rotation
[in]theNumberNumber of copies

◆ makeConeSegment()

std::shared_ptr< GeomAPI_Shape > GeomAlgoAPI_ShapeAPI::GeomAlgoAPI_ShapeAPI::makeConeSegment ( const double  theRMin1,
const double  theRMax1,
const double  theRMin2,
const double  theRMax2,
const double  theZ,
const double  theStartPhi,
const double  theDeltaPhi 
)
static

Creates a cone segment using standard GDML parameters.

Parameters
theRMin1Inner radius at base of cone
theRMax1Outer radius at base of cone
theRMin2Inner radius at top of cone
theRMax2Outer radius at top of cone
theZHeight of cone segment
theStartPhiStart angle of the segment
theDeltaPhiAngle of the segment