Class managing solid (BRep) geometry. More...
Public Member Functions | |
GO2SEnum::GO2SError | ApplyChamfer (Array< GO2SEdge > edges, Number len, Boolean tg_propagate=false) |
GO2SEnum::GO2SError | ApplyFillet (Array< GO2SEdge > edges, Number radius, Boolean tg_propagate=false) |
GO2SEnum::GO2SError | CreateCone (GO2SXYZ center, Number radiusBase, Number radiusTop, Number height) |
GO2SEnum::GO2SError | CreateFace (GO2SProfile prf) |
GO2SEnum::GO2SError | CreateLofting (Array< GO2SProfile > profiles, Boolean periodic, Boolean surfacic) |
GO2SEnum::GO2SError | CreateOffsetFace (GO2SFace face, Number len) |
GO2SMultipleGeometry | CreateSilhouette (GO2SXYZ direction, Number altitude, Number tolerance) |
Given a direction, creates a projection silhouette from the solid. | |
GO2SMultipleGeometry | CreateSilhouetteRevolution (GO2SXYZ direction, GO2SEnum::GO2SSilhouetteType type, Number tolerance) |
Given a direction, creates a revolution silhouette from a Solid. | |
GO2SMultipleGeometry | CreateSlice (GO2SXYZ direction, Number altitude, Number tolerance) |
Given a direction, creates a slice on the solid at a given altitude. | |
GO2SEnum::GO2SError | CreateSphere (GO2SXYZ center, Number radius) |
GO2SEnum::GO2SError | CreateTorus (GO2SXYZ center, Number radius, Number height) |
GO2SGeometry | ExtractEdge (GO2SEdge edge, Number tol=0.01) |
Extract a curve from an edge of a solid. | |
GO2SEdge | FindEdgeNear (GO2SXYZ pt, Number tol=0.01) |
Array< GO2SEdge > | GetEdges () |
Array< GO2SFace > | GetFaces () |
GO2SEnum::GO2SError | Intersection (GO2SSolid other) |
GO2SEnum::GO2SError | MultiIntersection (Array< GO2SSolid > others) |
GO2SEnum::GO2SError | MultiSubtract (Array< GO2SSolid > others) |
GO2SEnum::GO2SError | MultiSubtractHoles (Array< GO2SHole > holes) |
Subtract holes to the solid. | |
GO2SEnum::GO2SError | MultiUnion (Array< GO2SSolid > others) |
GO2SEnum::GO2SError | Subtract (GO2SSolid other) |
GO2SEnum::GO2SError | SubtractHole (GO2SHole hole) |
Subtract a hole to the solid. | |
GO2SEnum::GO2SError | ToFile (String dir, String name) |
GO2SEnum::GO2SError | ToFile (String filename) |
GO2SMesh | ToMesh (Number tol=0.1) override |
Convert a solid into a mesh according to a given tolerance. | |
GO2SEnum::GO2SError | Union (GO2SSolid other) |
Public Member Functions inherited from T_GO2SSolid< TShape, TExtrusion, TRevol, TBool > | |
GO2SEnum::GO2SError | CreateCuboid (GO2SXYZ Org, GO2SXYZ ptX, GO2SXYZ ptY, Number h) |
GO2SEnum::GO2SError | CreateCylinder (GO2SXYZ center, Number radius, Number height) |
GO2SEnum::GO2SError | CreateExtrusion (GO2SProfile profile, GO2SXYZ direction, Number height, Number taperAngle, Boolean surfacic) |
GO2SEnum::GO2SError | CreateMultiExtrusion (Array< GO2SProfile > profiles, GO2SXYZ direction, Number height, Number taperAngle, Boolean surfacic) |
GO2SEnum::GO2SError | CreateMultiRevolution (Array< GO2SProfile > profiles, GO2SXYZ axis, Number angle, Boolean surfacic) |
GO2SEnum::GO2SError | CreateRevolution (GO2SProfile profile, GO2SXYZ axis, Number angle, Boolean surfacic) |
Public Member Functions inherited from GO2SSolidGeometry | |
Number | GetSurface () |
Number | GetVolume () |
GO2SMesh | ToMesh (Number tol=0.1) |
Public Member Functions inherited from GO2SGeometry | |
GO2SEnum::GO2SError | ChangePlane (Number plane) |
GO2SGeometry | Copy () |
GO2SEnum::GO2SError | Delete () |
Array< GO2SXYZ > | Discretize (Number accuracy=0.01) |
Boolean | Equals (GO2SGeometry other) |
Array< GO2SXYZ > | GetBoundingBox () |
Number | GetColor () |
Array< GO2SEnum::GO2SParam > | GetEditableParams () |
Number | GetLayer () |
Number | GetLineType () |
Number | GetLineWidth () |
String | GetName () |
Number | GetParam (GO2SEnum::GO2SParam param) |
GO2SGeometry | GetParent () |
Number | GetPlane () |
GO2SXYZ | GetPosition () |
Boolean | IsCircular () |
Boolean | IsLinear () |
Boolean | IsParamEditable (GO2SEnum::GO2SParam param) |
Boolean | IsPoint () |
Boolean | IsPositionEditable () |
Boolean | IsSolid () |
Boolean | IsValid () |
Boolean | IsVisible () |
Boolean | IsWireframe () |
GO2SGeometry | Rotated (GO2SXYZ xyz, Number angle, Boolean xyzDir) |
GO2SEnum::GO2SError | SetColor (Number color) |
GO2SEnum::GO2SError | SetLayer (Number layer) |
GO2SEnum::GO2SError | SetLineType (ELineType type) |
GO2SEnum::GO2SError | SetLineWidth (Number width) |
GO2SEnum::GO2SError | SetName (String p1) |
GO2SEnum::GO2SError | SetParam (GO2SEnum::GO2SParam param, Number value) |
GO2SEnum::GO2SError | SetPlane (Number plane) |
GO2SEnum::GO2SError | SetPolarPosition (Number radius, Number angle, Number altitude=0) |
GO2SEnum::GO2SError | SetPosition (GO2SXYZpos) |
GO2SEnum::GO2SError | SetPosition (Number x, Number y, Number z) |
GO2SEnum::GO2SError | SetVisible (Boolean visibility) |
String | toString () |
GO2SEnum::GO2SError | Transform (GO2SMatrix matrix) |
GO2SGeometry | Transformed (GO2SMatrix matrix) |
GO2SGeometry | Translated (GO2SXYZ origin, GO2SXYZ p) |
Class managing solid (BRep) geometry.
GO2SEnum::GO2SError GO2SSolid::ApplyChamfer | ( | Array< GO2SEdge > | edges, |
Number | len, | ||
Boolean | tg_propagate = false ) |
Create chamfers on the solid.
[in] | edges | the edges on which we apply the chamfer |
[in] | len | symetrical distance of the chamfer |
[in] | tg_propagate | if true, propagate the fillet creation in tangency |
GO2SEnum::GO2SError GO2SSolid::ApplyFillet | ( | Array< GO2SEdge > | edges, |
Number | radius, | ||
Boolean | tg_propagate = false ) |
Create fillets on the solid.
[in] | edges | the edges on which we apply the fillet |
[in] | radius | radius of the fillet |
[in] | tg_propagate | if true, propagate the fillet creation in tangency |
GO2SEnum::GO2SError GO2SSolid::CreateCone | ( | GO2SXYZ | center, |
Number | radiusBase, | ||
Number | radiusTop, | ||
Number | height ) |
Create a cone shape
[in] | center | the center of the basis of the cone (bottom face) |
[in] | radiusBase | radius of base circle |
[in] | radiusTop | radius of top circle |
[in] | height | height of the cone |
GO2SEnum::GO2SError GO2SSolid::CreateFace | ( | GO2SProfile | prf | ) |
Create a face from a profile
[in] | prf | the edges of the face |
GO2SEnum::GO2SError GO2SSolid::CreateLofting | ( | Array< GO2SProfile > | profiles, |
Boolean | periodic, | ||
Boolean | surfacic ) |
Create a lofting from several profiles.
[in] | profiles | the profiles to loft |
[in] | periodic | if the loft is periodic |
[in] | surfacic | if the loft is surfacic |
GO2SEnum::GO2SError GO2SSolid::CreateOffsetFace | ( | GO2SFace | face, |
Number | len ) |
Create a face. The function creates a new solid (1 face solid)
[in] | face | the face to offset |
[in] | len | the offset distance |
|
inline |
Given a direction, creates a projection silhouette from the solid.
[in] | direction | Direction of the silhouette generated from the object |
[in] | altitude | Change position of the silhouette generated in the given direction. |
[in] | tolerance |
GO2SMultipleGeometry GO2SSolid::CreateSilhouetteRevolution | ( | GO2SXYZ | direction, |
GO2SEnum::GO2SSilhouetteType | type, | ||
Number | tolerance ) |
Given a direction, creates a revolution silhouette from a Solid.
[in] | direction | Direction of the silhouette generated from the object |
[in] | type | Revoution type. See GO2SEnum::GO2SSilhouetteType |
[in] | tolerance |
|
inline |
Given a direction, creates a slice on the solid at a given altitude.
[in] | direction | Direction of the silhouette generated from the object |
[in] | altitude | Change position of the silhouette generated in the given direction. |
[in] | tolerance |
GO2SEnum::GO2SError GO2SSolid::CreateSphere | ( | GO2SXYZ | center, |
Number | radius ) |
Create a sphere shape
[in] | center | the center of the basis of the cylinder (bottom face) |
[in] | radius | the radius of the sphere |
GO2SEnum::GO2SError GO2SSolid::CreateTorus | ( | GO2SXYZ | center, |
Number | radius, | ||
Number | height ) |
Create a torus shape
[in] | center | the center of the basis of the cylinder (bottom face) |
[in] | radius | diameter of the torus |
[in] | height | height of the torus |
GO2SGeometry GO2SSolid::ExtractEdge | ( | GO2SEdge | edge, |
Number | tol = 0.01 ) |
Extract a curve from an edge of a solid.
[in] | edge | |
[in] | tol | maximum deviation between edge and created curve |
Get an edge of a solid
[in] | pt | point (x,y,z) close to the wanted edge |
[in] | tol | maximum deviation between edge and created curve |
Array< GO2SEdge > GO2SSolid::GetEdges | ( | ) |
Get all solid edges
Array< GO2SFace > GO2SSolid::GetFaces | ( | ) |
Get all solid faces
|
inline |
Compute the intersection between 2 solid entities
|
inline |
Compute the intersection between several solids
|
inline |
Compute the subtraction between several solids
GO2SEnum::GO2SError GO2SSolid::MultiSubtractHoles | ( | Array< GO2SHole > | holes | ) |
Subtract holes to the solid.
holes | an array containing holes to be removed |
|
inline |
Compute the union between several solids
|
inline |
Compute the subtraction between 2 solid entities
GO2SEnum::GO2SError GO2SSolid::SubtractHole | ( | GO2SHole | hole | ) |
Subtract a hole to the solid.
hole | the hole to be removed |
GO2SEnum::GO2SError GO2SSolid::ToFile | ( | String | dir, |
String | name ) |
Save the solid to a file
[in] | dir | directory |
[in] | name | filename, must end with '.X_T' |
GO2SEnum::GO2SError GO2SSolid::ToFile | ( | String | filename | ) |
Save the solid to a file
[in] | filename | absolute filename, must end with '.X_T' |
|
inline |
Compute the union between 2 solid entities