SFCGAL
|
Enumerations | |
enum | SFCGAL::GeometryType { SFCGAL::TYPE_POINT = 1 , SFCGAL::TYPE_LINESTRING = 2 , SFCGAL::TYPE_POLYGON = 3 , SFCGAL::TYPE_MULTIPOINT = 4 , SFCGAL::TYPE_MULTILINESTRING = 5 , SFCGAL::TYPE_MULTIPOLYGON = 6 , SFCGAL::TYPE_GEOMETRYCOLLECTION = 7 , SFCGAL::TYPE_POLYHEDRALSURFACE = 15 , SFCGAL::TYPE_TRIANGULATEDSURFACE = 16 , SFCGAL::TYPE_TRIANGLE = 100 , SFCGAL::TYPE_SOLID = 101 , SFCGAL::TYPE_MULTISOLID = 102 } |
[OGC/SFA]8.2.3 "A common list of codes for geometric types" More... | |
enum | SFCGAL::CoordinateType { SFCGAL::COORDINATE_XY = 0 , SFCGAL::COORDINATE_XYZ = 1000 , SFCGAL::COORDINATE_XYM = 2000 , SFCGAL::COORDINATE_XYZM = 3000 } |
coordinate types (XY, XYZ, XYM, etc.) More... | |
Functions | |
auto | SFCGAL::algorithm::alphaShapes (const Geometry &g, double alpha=1, bool allow_holes=false) -> std::unique_ptr< Geometry > |
Compute the 2D alpha shapes for a geometry https://doc.cgal.org/latest/Alpha_shapes_2/index.html#Chapter_2D_Alpha_Shapes. More... | |
auto | SFCGAL::algorithm::optimal_alpha_shapes (const Geometry &g, bool allow_holes=false, size_t nb_components=1) -> std::unique_ptr< Geometry > |
Compute the optimal 2D alpha shapes for a geometry https://doc.cgal.org/latest/Alpha_shapes_2/index.html#Chapter_2D_Alpha_Shapes. More... | |
auto | SFCGAL::algorithm::area (const Geometry &g) |
Compute the 2D area for a Geometry. More... | |
auto | SFCGAL::algorithm::area3D (const Geometry &g) |
Returns 3D area for a Geometry. More... | |
auto | SFCGAL::algorithm::convexHull (const Geometry &g) |
Compute the 2D convex hull for a geometry. More... | |
auto | SFCGAL::algorithm::convexHull3D (const Geometry &g) |
Compute the 3D convex hull for a geometry. More... | |
auto | SFCGAL::algorithm::difference (const Geometry &ga, const Geometry &gb) |
Difference on 2D geometries. More... | |
auto | SFCGAL::algorithm::difference3D (const Geometry &ga, const Geometry &gb) |
Difference on 3D geometries. More... | |
auto | SFCGAL::algorithm::distance (const Geometry &gA, const Geometry &gB) |
Compute the distance between two Geometries. More... | |
auto | SFCGAL::algorithm::distance3D (const Geometry &gA, const Geometry &gB) |
dispatch distance between two Geometries More... | |
auto | SFCGAL::algorithm::extrude (const Geometry &g, Kernel::FT dx, Kernel::FT dy, Kernel::FT dz) |
Returns a Geometry equal to the specified Geometry, extruded by the specified displacement. More... | |
auto | SFCGAL::algorithm::intersection (const Geometry &ga, const Geometry &gb) |
Intersection on 2D geometries. More... | |
auto | SFCGAL::algorithm::intersection3D (const Geometry &ga, const Geometry &gb) |
Intersection on 3D geometries. More... | |
auto | SFCGAL::algorithm::intersects (const Geometry &ga, const Geometry &gb) |
Robust intersection test on 2D geometries. More... | |
auto | SFCGAL::algorithm::intersects3D (const Geometry &ga, const Geometry &gb) |
Robust intersection test on 3D geometries. More... | |
auto | SFCGAL::algorithm::isValid (const Geometry &g, const double &toleranceAbs=1e-9) |
Check validity of a geometry. More... | |
void | SFCGAL::algorithm::propagateValidityFlag (Geometry &g, bool valid) |
Sets the geometry flag on a geometry and propagate to every internal geometries. More... | |
auto | SFCGAL::algorithm::minkowskiSum (const Geometry &gA, const Polygon &gB) |
2D minkowski sum (p+q) More... | |
auto | SFCGAL::algorithm::offset (const Geometry &g, const double &r) |
[experimental]compute polygon offset More... | |
template<typename Kernel > | |
bool | SFCGAL::algorithm::hasPlane3D (const Polygon &polygon, CGAL::Point_3< Kernel > &a, CGAL::Point_3< Kernel > &b, CGAL::Point_3< Kernel > &c) |
Test if a 3D plane can be extracted from a Polygon. More... | |
auto | SFCGAL::algorithm::approximateMedialAxis (const Geometry &g) |
build an approximate medial axis for a Polygon More... | |
auto | SFCGAL::algorithm::straightSkeleton (const Geometry &g, bool autoOrientation=true, bool innerOnly=false, bool outputDistanceInM=false, const double &toleranceAbs=1e-8) |
build a 2D straight skeleton for a Polygon More... | |
auto | SFCGAL::algorithm::straightSkeleton (const Geometry &g, bool autoOrientation, NoValidityCheck, bool innerOnly=false, bool outputDistanceInM=false, const double &toleranceAbs=1e-8) |
build a 2D straight skeleton for a Polygon More... | |
auto | SFCGAL::algorithm::tesselate (const Geometry &) |
Tesselate a geometry: this will triangulate surfaces (including polyhedral and solid's surfaces) and keep untouched points, lines, etc. More... | |
auto | SFCGAL::algorithm::union_ (const Geometry &ga, const Geometry &gb) |
Union on 2D geometries. More... | |
auto | SFCGAL::algorithm::union3D (const Geometry &ga, const Geometry &gb) |
Union on 3D geometries. More... | |
auto | SFCGAL::algorithm::volume (const Geometry &g) |
Computes the volume of a geometry. More... | |
enum SFCGAL::GeometryType |
[OGC/SFA]8.2.3 "A common list of codes for geometric types"
SFCGAL_API auto SFCGAL::algorithm::alphaShapes | ( | const Geometry & | g, |
double | alpha = 1 , |
||
bool | allow_holes = false |
||
) | -> std::unique_ptr< Geometry > |
Compute the 2D alpha shapes for a geometry https://doc.cgal.org/latest/Alpha_shapes_2/index.html#Chapter_2D_Alpha_Shapes.
SFCGAL_API std::unique_ptr< MultiLineString > SFCGAL::algorithm::approximateMedialAxis | ( | const Geometry & | g | ) |
build an approximate medial axis for a Polygon
g | input geometry |
NotImplementedException | If g is a Polygon with point touching rings. |
SFCGAL_API double SFCGAL::algorithm::area | ( | const Geometry & | g | ) |
Compute the 2D area for a Geometry.
SFCGAL_API double SFCGAL::algorithm::area3D | ( | const Geometry & | g | ) |
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::convexHull | ( | const Geometry & | g | ) | -> std::unique_ptr< Geometry > |
Compute the 2D convex hull for a geometry.
Compute the 3D convex hull for a geometry.
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::difference | ( | const Geometry & | ga, |
const Geometry & | gb | ||
) |
Difference on 2D geometries.
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::difference3D | ( | const Geometry & | ga, |
const Geometry & | gb | ||
) |
Difference on 3D geometries.
Assume z = 0 if needed
Compute the distance between two Geometries.
dispatch distance between two Geometries
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::extrude | ( | const Geometry & | g, |
Kernel::FT | dx, | ||
Kernel::FT | dy, | ||
Kernel::FT | dz | ||
) |
Returns a Geometry equal to the specified Geometry, extruded by the specified displacement.
g | The specified Geometry. |
dx | The component of the specified displacement in the x-direction. |
dy | The component of the specified displacement in the y-direction. |
dz | The component of the specified displacement in the z-direction. |
bool SFCGAL::algorithm::hasPlane3D | ( | const Polygon & | polygon, |
CGAL::Point_3< Kernel > & | a, | ||
CGAL::Point_3< Kernel > & | b, | ||
CGAL::Point_3< Kernel > & | c | ||
) |
Test if a 3D plane can be extracted from a Polygon.
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::intersection | ( | const Geometry & | ga, |
const Geometry & | gb | ||
) |
Intersection on 2D geometries.
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::intersection3D | ( | const Geometry & | ga, |
const Geometry & | gb | ||
) |
Intersection on 3D geometries.
Assume z = 0 if needed
Robust intersection test on 2D geometries.
Force projection to z=0 if needed
Robust intersection test on 3D geometries.
Assume z = 0 if needed
SFCGAL_API const Validity SFCGAL::algorithm::isValid | ( | const Geometry & | g, |
const double & | toleranceAbs | ||
) | -> const Validity |
Check validity of a geometry.
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::minkowskiSum | ( | const Geometry & | gA, |
const Polygon & | gB | ||
) |
2D minkowski sum (p+q)
SFCGAL_API std::unique_ptr< MultiPolygon > SFCGAL::algorithm::offset | ( | const Geometry & | g, |
const double & | r | ||
) |
[experimental]compute polygon offset
SFCGAL_API auto SFCGAL::algorithm::optimal_alpha_shapes | ( | const Geometry & | g, |
bool | allow_holes = false , |
||
size_t | nb_components = 1 |
||
) | -> std::unique_ptr< Geometry > |
Compute the optimal 2D alpha shapes for a geometry https://doc.cgal.org/latest/Alpha_shapes_2/index.html#Chapter_2D_Alpha_Shapes.
SFCGAL_API void SFCGAL::algorithm::propagateValidityFlag | ( | Geometry & | g, |
bool | valid | ||
) |
Sets the geometry flag on a geometry and propagate to every internal geometries.
SFCGAL_API std::unique_ptr< MultiLineString > SFCGAL::algorithm::straightSkeleton | ( | const Geometry & | g, |
bool | autoOrientation, | ||
NoValidityCheck | , | ||
bool | innerOnly = false , |
||
bool | outputDistanceInM = false , |
||
const double & | toleranceAbs = 1e-8 |
||
) |
build a 2D straight skeleton for a Polygon
g | input geometry |
autoOrientation | check and fix polygon orientation |
outputM | whether to output the distance to border as M |
toleranceAbs | Distance tolerance between returned points. A line must have a maximum distance of toleranceAbs. |
NotImplementedException | If g is a Polygon with point touching rings. |
SFCGAL_API std::unique_ptr< MultiLineString > SFCGAL::algorithm::straightSkeleton | ( | const Geometry & | g, |
bool | autoOrientation = true , |
||
bool | innerOnly = false , |
||
bool | outputDistanceInM = false , |
||
const double & | toleranceAbs = 1e-8 |
||
) |
build a 2D straight skeleton for a Polygon
g | input geometry |
autoOrientation | check and fix polygon orientation |
outputM | whether to output the distance to border as M |
toleranceAbs | Distance tolerance between returned points. A line must have a maximum distance of toleranceAbs. |
NotImplementedException | If g is a Polygon with point touching rings. |
SFCGAL_API std::unique_ptr< SFCGAL::Geometry > SFCGAL::algorithm::tesselate | ( | const Geometry & | ) |
Tesselate a geometry: this will triangulate surfaces (including polyhedral and solid's surfaces) and keep untouched points, lines, etc.
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::union3D | ( | const Geometry & | ga, |
const Geometry & | gb | ||
) |
Union on 3D geometries.
Assume z = 0 if needed
SFCGAL_API std::unique_ptr< Geometry > SFCGAL::algorithm::union_ | ( | const Geometry & | ga, |
const Geometry & | gb | ||
) |
Union on 2D geometries.