8#include "RshPluginScript/RshPluginScriptDefines.h"
9#include "RshGeometry/Texture/RshTextureMap.h"
10#include "RshPluginScript/SClass/SComp.h"
13namespace rsh::ScriptBinding
200 Boolean iIsOnlyIfClosed
226 Boolean iIsOnlyIfClosed
265 SPoint iSecondPointOnAxis,
271 Number iMaxAngleInRadian
287 SPoint iSecondPointOnAxis,
289 SPoint iPointOnTheFirstCylinder,
291 Number iNumberOfCylinders,
294 Number iDistanceBeetweenCylinders
342 Array<Number> iListDist,
400 Boolean iHadIntermediatePt
421 Boolean iIsSignedProjection
444 Boolean iHadIntermediatePt,
447 Boolean iIsSignedProjection
493 Number iSmallestSize,
554 Array<SClippingPlane>
713 Number iMaxiDeviation,
716 Boolean iIsReorganise,
718 Number iMinAngleReorg,
723 Number iRefineDistProj = -1.0,
729 Number iRefineVrtxAngle =
732 Number iAngleSharpEdge = -1.0,
792 Number iMaxiTriNumber,
804 Number iDistanceWrongPoints,
815 Number iMaxCosAngle = -1
834 Number iTargetNbVertex,
861 Number iMappingObject,
864 Boolean iIsIgnoreEdge,
871 Number iMaxCosAngle = 0.,
877 Boolean iIsCheckThinParts
912 Number iMappingObject,
915 Boolean iIsIgnoreEdge,
922 Number iMaxCosAngle = -2,
928 Boolean iIsCheckForThinParts
988 Number iDeviationError,
998 Boolean iIsKeepSharpEdge,
1001 Number iDeviationOnSharpEdges,
1006 Number iSharpEdgeAngleValue,
1009 Number iMaxEdgeLength,
1012 Number iDeviationOnBorders
1018 Array
Contours(Boolean iIsExportSuspiciousTriangles =
false);
1038 Array<SPoint> iPointTable,
1054 Number iWallThickness = -1
1070 Array<SMultiline> iContourTable,
1072 Number iTension = 0.732f,
1086 Number iWallThickness = -1,
1089 Boolean iIsForceNonSmoothShape
1110 Array<SPoint> iPointTable,
1137 Array<SPoint> iPointTable,
1139 Number iMaxEdgeLength
1150 Array<SMultiline> iMultiTbl,
1152 Number iRemeshDistance
1168 Array<SSetMultiline> iSetMultiTbl,
1175 Number iRemeshDistance,
1177 Number iCleaningDistance
1212 Boolean iIsTextExport,
1216 SMatrix iCoordinateSystemMatrix = {}
1250 return SComp::LoadColorGradient(iFilePath);
1274 return SComp::SaveColorGradient(iFilePath);
1342 SVector iDirectionVector = {},
1356 Number iSmoothingIntensity = 0.0
1384 Number iPropag = -1,
1395 Boolean iIsRecalculateBorder
1428 Number iDistanceWrongPoints,
1435 Boolean iIsReorganize,
1443 Boolean iIsNoiseReduct
1498 Number iMinClosedLine,
1500 Number iMinUnclosedLine,
1520 String iFilePathName,
1524 Number iNbRepHeight,
1565 Array<SCloud> iCloudsTbl,
1581 Number iDefaultGreen,
1637 String iTextToWrite,
1641 SVector iTextHorizontalNormal,
1651 String iFont =
"Arial",
1657 Number iWritingStyle
1717 Number iMaxDistToCloud = 0.f,
1725 Number iMaxCosAngle = -1
1745 Number iMaxDistToCloud =
1749 Number iMaxAngle = -1
1773 SPoly iMeshToStitch,
1793 Array<Number> iElevations,
1795 SVector iProjDir = { 0., 0., 1. }
1810 Number iMaxEdgeLength,
1812 Boolean iIgnoreFreeEdges,
1814 Number iLimitCos = 0.,
1816 Boolean iPreserveGeometry
1841 Number iAngleThreshold = 15.0,
1843 Number iMergeMaxDistance = 0.,
1846 Number iMinRegionArea = 0.,
1848 Number iClassificationMaxDistance = 0.,
1871 :
public SObjectStatic
1927 Array<SPoly> iMeshes,
1944 static Array
FromClick() {
return SComp::GetFromClick<SPoly>(SV_POLY); }
1949 static Array
FromName( String iName) {
return SComp::GetFromName<SPoly>(iName); }
1969 return SComp::GetAll<SPoly>(iVisCrit);
2044 Number iDeviationError,
2046 Number iMiniAverageDist,
2068 Number iSizeTriHole,
2070 Boolean iIsIgnoreScanDir
2110 Array<SCloud> iCloudOfPoints,
2115 Number iRegularSampling,
2122 Number iDeviationErr,
2127 Number iMaxiNbTriangle,
2129 Number iAlphaShapeThreshold,
2138 Number iMaxSizeThreshold,
2140 Number iMinSizeThreshold,
2162 Boolean iTurnWithPath,
2164 Boolean iPerpendicularToPath,
2198 Array<SPoly> iPolyTable,
2206 Number iAccuracyPoint = 1.E-5,
2209 Number iAccuracyBorders = 0.001
2230 Array<SPoly> iPolyTable,
2238 Number iAccuracyPoint = 1.E-5,
2241 Number iAccuracyBorders = 0.001
2281 Number iTension = 0.732,
2285 Boolean iReorganize,
2305 Array<SPoly> iTablePoly,
2327 Boolean iCloseExtremities,
2328 Array<SComp> iComps);
2345 Boolean iCloseExtremities,
2346 Array<SComp> iComps);
2352Q_DECLARE_METATYPE(SPoly::_SPolyDummy);
2353Q_DECLARE_METATYPE(
SPoly);
2360namespace rsh::Script::ScriptConvert
2363struct TblConvert<
SPoly>
2365 static char GetClassName() {
return "SPoly"; }
2367 typedef SPoly ScriptClass;
2368 typedef SPoly DCompClass;
2370 static SPoly GetGCompClass(
SPoly _iCompClass)
2372 return _iCompClass.GetGPoly();
2375 static SPoly ForDCompConstructor(
SPoly _iEnt) {
return _iEnt; }
The SCloud class provides point cloud manipulation. The SCloud creation can be done by calling the st...
Definition: SCloud.h:41
The SComp class is an abstract class. Use derived classes SCircle, SCylinder, SCloud,...
Definition: SComp.h:32
Matrix with 3 lines and 4 columns to make any transformation. This class should be used in order to a...
Definition: SMatrix.h:21
Class to store a multiline, that is: an ordered list of points. The SMultiline creation can be done b...
Definition: SMultiLine.h:24
3D point manipulation class. The SPoint creation can be done by calling the static functions:
Definition: SPoint.h:23
The SPoly class provides triangular mesh(es) manipulation. The SPoly creation can be done by calling ...
Definition: SPoly.h:39
Number GetTrianglesNumber()
Array WriteOnMesh(String iTextToWrite, SVector iTextNormal, SVector iTextHorizontalNormal, SPoint iTextPosition, Number iTextDepth, Number iPlaneDepth, Number iScale, String iFont="Arial", Boolean isBold, Boolean isItalic, Number iWritingStyle)
Write a text on a mesh. The mesh will be engraved.
static SPoly New()
Default constructor to create an empty new SPoly.
static Array SphericalMesh(Array< SCloud > iCloudOfPoints, SPoint iScanPos, Number iRegularSampling, Number iDeviationErr, Number iMaxiNbTriangle, Number iAlphaShapeThreshold, Number iMaxSizeThreshold, Number iMinSizeThreshold, Number iDeleteSmall)
Makes a spherical 3D mesh from point cloud(s)
SetPolyRepresentation(PolyRepresentationTypeEnum Representation)
The representation of the component is modified.
static Array Direct3DMesh(SCloud iCloudToMesh, Number iDeviationError, Number iMiniAverageDist, HoleOptionEnum iOptionHole, Number iSizeTriHole, Boolean iIsIgnoreScanDir)
Makes a direct 3D mesh of a point cloud according different strategies (regular, deviation,...
Array ExtractPlane(SPoint iSeedPoint, Number iTolerance)
Extract the planar region on the current cloud starting from seed point(s).
static Array Extrusion(SMultiline iProfile, SMultiline iPath, Boolean iTurnWithPath, Boolean iPerpendicularToPath, SMultiline iSecondPath, RotateEnum iOption, SPoint iRotatePt)
Create a mesh from a path and a profile, the profile is extracted along the path.
Array Proj3D(SMultiline iMultilineToProject, Boolean iHadIntermediatePt)
Calculates the 3D projection of a SMultiline on an SPoly.
Array FillHolesDirection(SVector iDirection, Array< SPoint > iPointTable, Number iTension)
To fill the holes that have at least one point listed in the table of points.
Array SectionCylindric(SPoint iFirstPointOnAxis, SPoint iSecondPointOnAxis, SPoint iPointOnTheFirstCylinder, Number iNumberOfCylinders, Number iDistanceBeetweenCylinders)
Intersection of a Polyhedron by parallel cylinders.
OffsetEnum
Definition: SPoly.h:81
@ NORMAL_OFFSET
Definition: SPoly.h:82
HoleOptionEnum
Definition: SPoly.h:1883
@ INSIDE_CLOSED
Definition: SPoly.h:1885
@ NO_CLOSED
Definition: SPoly.h:1884
Array SeparateTriangleWithActivatedClippingPlanes(Array< SClippingPlane > iClippingPlanes, SeparateTriBoxEnum iSelType)
Separate triangles of a mesh according to clipping planes. Depending of iWhichPartToKeep,...
Array Reduce(Number iTargetNbVertex, Number iMinAngle)
Function to reduce a mesh according to the angle between facets to minimize the visual degradation.
static Array FromName(String iName)
Search all the component with the given name.
Definition: SPoly.h:1949
static Array LinearExtrusion(Number iLength, SVector iDirection, Boolean iCloseExtremities, Array< SComp > iComps)
Compute poly(s) corresponding to the extrusion of profile(s) -polyline, linear feature,...
Array TakeColorFromClouds(Array< SCloud > iCloudsTbl, Number iIgnoreOver, Number iResetColor, Number iDefaultRed, Number iDefaultGreen, Number iDefaultBlue)
Uses the color (or the color of inspection) of point clouds to color the vertices on the current mesh...
static Array FromFile(String iFileName)
Array LoadColorGradient(String iFilePath)
Loads the color gradient from a file (*.rsi binary file).
Definition: SPoly.h:1246
Array ConstraintMesh3D(SCloud iCloudOfPoints, Array< SMultiline > iSetOfMultilines, Number iTolerance, Number iZoneType)
Makes a 3D meshing on a mesh (this), a set of multilines and a point cloud; both are optional but at ...
Array ExtractSphere(Array< SPoint > iSeedPoint, Number iTolerance, SphereEnum iForce, SPoint Center={}, Number iRadius)
Extract the spherical region on the current polyhedron starting from seed point(s).
Clear()
To deallocate memory of the object.
Array Cubature(SPoly iSecondPoly, SVector iProjDir={})
Calculate volumes between 2 surfaces to make cubature of embankments and excavations....
Array SmoothBorders(Array< SPoint > iPointTable, Number iMaxEdgeLength)
3D smoothing of free borders. The function creates triangles on the edges of the holes to create smoo...
Array ImproveBorders(Array< SSetMultiline > iSetMultiTbl, Number iRemeshDistance, Number iCleaningDistance)
Create a new SPoly by updating the input one in order to make it fit the input border.
Array GetTriangleSize()
To retrieve the triangle size of current SPoly.
BordersEnum
Definition: SPoly.h:88
@ REFINE
Definition: SPoly.h:90
@ NO_CHANGE
Definition: SPoly.h:89
Array RemoveSpikes(Number iLoopNumber, Number iPropag=-1, Number iIntensity, Boolean iIsRecalculateBorder)
This function will suppress or correct absurd points (ie spikes) of the current SPoly.
Array FillHoles(Array< SPoint > iPointTable, Number iTension, Number iWallThickness=-1)
3D Hole filling. The function creates triangles on the edges of the holes to fill the concave parts....
Array ExplodeColor()
Explodes a compound mesh into several parts according to the color of the triangles.
Array Proj3D(SPoint iPoint)
Calculates the 3D projection of a point on an SPoly. This function always returns the nearest point.
SmoothEnum
Definition: SPoly.h:69
@ POLY_SMOOTH_SMOOTH_BORDERS
Definition: SPoly.h:77
@ POLY_SMOOTH_LIMIT_DIST_BY_PROJ
Definition: SPoly.h:73
@ POLY_SMOOTH_COMPLEX_SURF
Definition: SPoly.h:75
@ POLY_SMOOTH_KEEP_DETAILS
Definition: SPoly.h:72
Array SeparateTriangleSize(Number iSmallestSize, Number iBiggestSize)
Separate a mesh into parts according to the triangle size.
CylinderEnum
Bit mask to know which parameter(s) are forced and do not need to be computed.
Definition: SPoly.h:123
@ CYL_FORCE_DIRECTION
Definition: SPoly.h:129
@ CYL_INIT_RADIUS
Definition: SPoly.h:126
@ CYL_INIT_CENTER
Definition: SPoly.h:128
@ CYL_FORCE_NOTHING
Definition: SPoly.h:124
@ CYL_FORCE_RADIUS
Definition: SPoly.h:125
@ CYL_FORCE_CENTER
Definition: SPoly.h:127
Array Smooth(Number iLoopNumber, SmoothEnum iOptionMask, Number iMaxiDeviation, Boolean iIsReorganise, Number iMinAngleReorg, Number iRefineDistProj=-1.0, Number iRefineVrtxAngle=-1.0, Number iAngleSharpEdge=-1.0, Number iNbTriMax=-1)
Smooth the surface of the current SPoly.
static Array PipeTubeAlongPath(Number iRadius, Boolean iCloseExtremities, Array< SComp > iComps)
Compute mesh(es) corresponding to the extrusion of a circle with a given radius along a given path.
static Array Fusion(Array< SPoly > iPolyTable, FusionOptionEnum iOption, Number iAccuracyPoint=1.E-5, Number iAccuracyBorders=0.001)
Sew common edges of a SPoly list, or rebuild topology of existing Polyhedron(s).
static String toString()
Get the type of the variable.
Array GetContours()
Extract free contour(s) from the current SPoly. Returns a table of SMultilines containing all the fre...
static Array ConstraintMesh2D(SCloud iCloudOfPoints, Array< SMultiline > iSetOfMultilines, SVector iMeshDir, Number iTolerance, Number iZoneType)
Makes a 2D1/2 meshing on a set of multilines and a point cloud; both are optional but at least one is...
StitchOverlapEnum
Definition: SPoly.h:134
@ STITCHOVERLAP_MAKE_SEWING_ZONE_INVISIBLE
Definition: SPoly.h:135
@ STITCHOVERLAP_REORGANIZE_SEWING_ZONE
Definition: SPoly.h:136
@ STITCHOVERLAP_MODIFY_OVERLAP_IN_MIDDLE_ZONE
Definition: SPoly.h:137
@ STITCHOVERLAP_ONLY_CONSISTENT_NORMALES
Definition: SPoly.h:138
Number GetNumberOfTextureMaps()
Returns the number of dynamic textures (texture maps) applied to the mesh.
Array StitchOverlap(SPoly iMeshToStitch, Number iTolDist, StitchOverlapEnum iOptions)
Stitch a SPoly (meshToStitch) with the current SPoly.
Array GetVolume(Boolean iIsOnlyIfClosed)
To retrieve the polyhedron's volume.
DeviationOptionEnum
Definition: SPoly.h:95
@ BEST_POS
Definition: SPoly.h:97
@ KEEP_EQUI
Definition: SPoly.h:96
Array SetBorders(Array< SMultiline > iMultiTbl, Number iRemeshDistance)
Create a new SPoly by updating the input one in order to make it fit the input border.
Array SubdivideTriangles(Number iMaxEdgeLength, Boolean iIgnoreFreeEdges, Number iLimitCos=0., Boolean iPreserveGeometry)
Subdivide triangles when at least one of its edges is longer than the maximum allowed edge length.
static Array FromClick()
Launches a click interaction to select a SComp in the scene.
Definition: SPoly.h:1944
Array BooleanCutIn(SPoly iPoly)
To cut the current SPoly against the parameter SPoly and keep the part of the current SPoly that is I...
static Array MergeCommonBorders(Array< SPoly > iPolyTable, FusionOptionEnum iOption, Number iAccuracyPoint=1.E-5, Number iAccuracyBorders=0.001)
Sew common edges of a SPoly list, or rebuild topology of existing Polyhedron(s).
Array SectionOnMultiReg(SMultiline iMultiLine, Number iDist, Number iMaxDist, Number iOptBitMask)
Compute the sections of a SPoly (for example a tube or a tunnel) along a SMultiline (normal to the SM...
Array GetSurface()
To retrieve the polyhedron's surface.
ProjectionTypeEnum
Enumeration of all available texturage projection types.
Definition: SPoly.h:104
@ EQUIRECTANGULAR
Definition: SPoly.h:106
@ FISH_EYE
Definition: SPoly.h:108
@ PERSPECTIVE
Definition: SPoly.h:105
@ REPETITIVE
Definition: SPoly.h:107
static Array FromSel()
To get all the selected SComp.
Array SeparateTriangleBox(SPoint iLowerPoint, SPoint iUpperPoint, SeparateTriBoxEnum iSelType, SeparateTriBoxSelectEnum iWhichPartToKeep)
Separate triangles of a mesh according to a box. Depending of iWhichPartToKeep, the current poly is u...
Array Intersect(SPoly iPoly, Number iOption)
To make an intersection between two objects (the current object and a given parameter).
PolyRepresentationTypeEnum
The different representation types for polyhedrons. Use SPoly.SMOOTH.
Definition: SPoly.h:52
@ POLY_WIRE
Definition: SPoly.h:56
@ POLY_TEXTURE
Definition: SPoly.h:60
@ POLY_FLAT
Definition: SPoly.h:55
@ POLY_SMOOTH
Definition: SPoly.h:54
@ POLY_COLORED
Definition: SPoly.h:61
@ POLY_FLAT_TEXTURE_COLOR
Definition: SPoly.h:63
@ POLY_INSPECTION
Definition: SPoly.h:62
@ POLY_TEXTURE_ASYNC
Definition: SPoly.h:64
@ POLY_FLAT_WIRE
Definition: SPoly.h:58
@ POLY_SMOOTH_WIRE
Definition: SPoly.h:57
@ POLY_SMOOTH_REALTIME
Definition: SPoly.h:59
Array SeparateTriangleInPrism(SMultiline iProfil, Number iDistance, SeparateTriBoxEnum iSelType, SeparateTriBoxSelectEnum iWhichPartToKeep)
Separate triangles of a mesh according to a prism. Depending of iWhichPartToKeep, the current poly is...
Array RemoveTrianglesOnHoles(SCloud iCloud, Number iHoleSize, Number iMaxDistToCloud=-1, Number iMaxAngle=-1)
Remove triangles which are considered to be over a hole of a certain diameter regarding iCloud.
Array GetTextureName(Number iTextureIdx)
Returns the original name of a dynamic texture (texture map) applied to the mesh.
Array Save(String iFilePath, Boolean iIsTextExport, SMatrix iCoordinateSystemMatrix={})
Saves the mesh into a file.
Array MeshSegmentation(Number iAngleThreshold=15.0, Number iMergeMaxDistance=0., Number iMinRegionArea=0., Number iClassificationMaxDistance=0., SegmentationFeaturesEnum iFeatures)
Segment a mesh in several regions matching with geometric features (Plane, Sphere,...
String toString()
Get the type of the variable.
Array InterInfLine(SPoint iPoint, SVector iVect)
Calculates the intersection with an infinite line.
Array GetHighestPoint(SVector iDirection)
Get the highest point according to the Direction.
Array Tolerance3DMesh(SCloud iCloud, Number iDeviation, Number iDistanceWrongPoints, Number iSizeTriMax, Boolean iIsReorganize, Number iExtension, Boolean iIsNoiseReduct)
Upgrade the current SPoly by using its topology.
Array ProjDir(SMultiline iMultilineToProject, SVector iDirection, Boolean iHadIntermediatePt, Boolean iIsSignedProjection)
Calculates the projection of a SMultiline on an SPoly with a direction.
SeparateTriBoxSelectEnum
Definition: SPoly.h:149
@ SEPARATETRIBOX_KEEP_OUTSIDE_TRI
Definition: SPoly.h:151
@ SEPARATETRIBOX_KEEP_INSIDE_TRI
Definition: SPoly.h:150
@ SEPARATETRIBOX_KEEP_BOTH
Definition: SPoly.h:152
Array ExtractCylinder(Array< SPoint > iSeedPoint, Number iTolerance, CylinderEnum iForce, SPoint iCenter={}, SVector iDirectionVector={}, Number iRadius)
Extract the cylindrical region on the current polyhedron starting from a seed point.
Array Explode()
Explodes a compound mesh into several parts.
Array RemeshRefineDev(Number iDeviation, Number iSizeMin, Number iMaxiTriNumber, BordersEnum iBorderOption, Number iDistanceWrongPoints, Number iReorganize, SCloud iCloud, Number iMaxCosAngle=-1)
Refines an existing SPoly with deviation error and optionally better fitting on a SCloud.
FusionOptionEnum
Definition: SPoly.h:1889
@ SIMPLE
Definition: SPoly.h:1890
@ REMESH
Definition: SPoly.h:1891
@ FILL_HOLES
Definition: SPoly.h:1892
Array Offset(Boolean iIsDirect, Number iDistCoef, OffsetEnum iOptBitMask)
Calculates and returns a new parallel polyhedron.
SegmentationFeaturesEnum
Definition: SPoly.h:156
@ SEGMENTATION_CONE
Definition: SPoly.h:159
@ SEGMENTATION_SPHERE
Definition: SPoly.h:158
@ SEGMENTATION_PLANE
Definition: SPoly.h:157
@ SEGMENTATION_CYLINDER
Definition: SPoly.h:160
static Array All(Number iVisCrit)
To get all the SComp in the document.
Definition: SPoly.h:1961
static Array CreateCompound(Array< SPoly > iTablePoly, Boolean iOptOrient)
Make a compound SPoly from a table of SPoly.
RotateEnum
How the extrusion rotate point is compute.
Definition: SPoly.h:1899
@ ROTATE_CENTROID
Definition: SPoly.h:1901
@ ROTATE_AUTO
Definition: SPoly.h:1900
@ ROTATE_INTERSECTION
Definition: SPoly.h:1902
static Array JoinContour(Array< SMultiline > iMultiLines, Array< SPoly > iPolyhedrons, Number iTangency1, Number iTangency2, Number iTension=0.732, Boolean iReorganize, Number iNbPoint)
Create a meshed surface from two contours or mesh holes, which optionally preserves tangency continui...
Array DestructTrianglesOnHoles(SCloud iCloud, Number iHoleSize, Number iMaxDistToCloud=0.f, Number iOptions, Number iMaxCosAngle=-1)
Remove triangles which are considered over a hole of a certain diameter regarding iCloud.
Array ProjDir(SPoint iPoint, SVector iDirection, Boolean iIsSignedProjection)
Calculates the projection of a point on an SPoly with a direction. The point to project is considered...
Array GetLowestPoint(SVector iDirection)
Get the lowest point according to the Direction.
Array Compare(SPoly iMeasPoly, Number iDistMax, Number iMappingObject, Boolean iIsIgnoreEdge, SVector iDirection, Number iMaxCosAngle=0., Boolean iIsCheckThinParts)
Calculates the distances between 2 components for further inspection purpose (color mapping)
Array Contours(Boolean iIsExportSuspiciousTriangles=false)
static Array ColorAlongDir(Array< SPoly > iMeshes, SVector iDirectionVect, SPoint iOrigin={})
Color the mesh along a direction with a gradient.
Array GetInertiaMatrix(Boolean iIsOnlyIfClosed)
Calculates the solid's inertia matrix.
Array Compare(SCloud iMeasCloud, Number iDistMax, Number iMappingObject, Boolean iIsIgnoreEdge, SVector iDirection, Number iMaxCosAngle=-2, Boolean iIsCheckForThinParts)
Calculates the distances between 2 components for further inspection purpose (color mapping)
SeparateTriBoxEnum
Definition: SPoly.h:142
@ SEPARATETRIBOX_STRICLTY_INSIDE
Definition: SPoly.h:143
@ SEPARATETRIBOX_ONLY_CROSSING
Definition: SPoly.h:144
@ SEPARATETRIBOX_CROSSING_AND_INSIDE
Definition: SPoly.h:145
Array BooleanAdd(SPoly iPoly)
To make a boolean addition with the current SPoly.
Array LocalizeValues(Array< Number > iThresholdList)
Extract the points or the lines at threshold values of an inspected mesh.
Array RemeshSharpEdge(Array< SMultiline > iLines, SPoint iReferencePoint)
Modifies locally the existing mesh to recreate sharp edge(s)
Array FillContours(Array< SMultiline > iContourTable, Number iTension=0.732f, Number iWallThickness=-1, Boolean iIsForceNonSmoothShape)
3D Hole filling. The function creates triangles on the edges of the holes to fill the concave parts.
SphereEnum
Bit mask to know which parameter(s) are forced and do not need to be computed.
Definition: SPoly.h:114
@ SPHERE_FORCE_RADIUS
Definition: SPoly.h:116
@ SPHERE_FORCE_NOTHING
Definition: SPoly.h:115
Array BooleanCommon(SPoly iPoly)
To get the boolean common part between two closed volumes (the current object and a given parameter).
Array ReduceDeviation(Number iDeviationError, DeviationOptionEnum iCriteria, Boolean iIsKeepSharpEdge, Number iDeviationOnSharpEdges, Number iSharpEdgeAngleValue, Number iMaxEdgeLength, Number iDeviationOnBorders)
Reduces the mesh by deleting some vertices and triangles according to a deviation error.
Array GetNumberOfTextures()
Returns the number of textures applied to the mesh.
Array TextureAddRepetitive(String iFilePathName, Number iNbRepWidth, Number iNbRepHeight, SVector iDirXScreen, SVector iDirYScreen, SPoint iImageOrigin)
Adds repetitive texture to a mesh.
static SPoly New(SPoly iOther)
Constructs an SPoly by copying the SPoly Other.
Array GetSilhouette(SVector iViewDirection, Number iDraftAngle, Number iMinClosedLine, Number iMinUnclosedLine, Number iResultType)
Calculates the silhouette or external contour of a SPoly according to a direction and possibly a draf...
static Array DirectionMesh(SCloud iCloudOfPoints, SVector iMeshingDirection, Number iTolerance, Boolean iIsFindCntr)
Meshes a cloud of points according to a certain tolerance and direction (2D1/2 meshing)
Array BooleanSub(SPoly iPoly)
To make a boolean subtraction with the current object.
Array ExplodeWithInspectionSteps()
Split the mesh according to the inspection steps.
Array BooleanOperation(SPoly iPoly, Boolean iIsCutPoly)
To make a boolean operation between two SPoly.
Array BooleanCutOut(SPoly iPoly)
To cut the current SPoly against the parameter SPoly and keep the part of the current SPoly that is O...
Array RemoveTexture()
Removes all textures applied on the current mesh.
Array VolumeFromElevation(Array< Number > iElevations, SVector iProjDir={ 0., 0., 1. })
Calculate the Polyhedron volume above and below the given elevation.
Array SaveColorGradient(String iFilePath)
Saves the color gradient into a file (*.rsi binary file).
Definition: SPoly.h:1270
Array ExtractFeatureLines(Number iSmoothingIntensity=0.0)
Extract all the feature lines on the mesh.
Array SectionPlane(SVector iPlaneNormal, SPoint iPtFirstPlane, Number iNbPlanes, Number iDistance)
Intersection between an SPoly and a parallel plane.
Array SectionOnMulti(SMultiline iMultiLine, Array< Number > iListDist, Number iMaxDist, Number iOptBitMask)
Compute the sections of a SPoly (for example a tube or a tunnel) along a SMultiline (normal to the SM...
Array GetColorGradient()
To get the color gradient of the SPoly.
Definition: SPoly.h:1227
Array SectionRadial(SPoint iFirstPointOnAxis, SPoint iSecondPointOnAxis, SPoint iPtFirstPlane, Number iNbSections, Number iMaxAngleInRadian)
Intersection of a Polyhedron by radial planes.
The mathematical object vector.
Definition: SVector3.h:26