- Class SFCGAL::algorithm::BoundaryVisitor
MultiPolygon, PolyhedralSurface, TriangulatedSurface (same graph algorithm, edges without parallel or opposite)
MultiSolid : faced elimination
GeometryCollection : complex for heterogeneous collection (not supported in GEOS)
- Member SFCGAL::algorithm::BoundaryVisitor::getBoundaryFromPolygons (const graph::GeometryGraph &g)
- merge resulting edges
- Member SFCGAL::algorithm::convexHull3D (const Geometry &g)
- improve to handle collinear points and coplanar points
- Member SFCGAL::algorithm::distance3D (const Geometry &gA, const Geometry &gB)
- complete with solid Compute distance between two 3D Geometries
- Precondition
- gA is a valid geometry
-
gB is a valid geometry
- Member SFCGAL::algorithm::distanceLineStringPolygon3D (const LineString &gA, const Polygon &gB)
same method than distancePointPolygon3D (unify if triangulate is available)
- Member SFCGAL::algorithm::extrude (const Geometry &g, const Kernel::Vector_3 &v)
Improve extrude for 3D surfaces - Extrude only faces whose scalar_product(v,normal) > 0 and use Polyhedron union to get output geometries with a clean topology.
- Member SFCGAL::algorithm::minkowskiSum (const Geometry &gA, const Polygon &gB, NoValidityCheck)
- missing cases (union)
- Precondition
- gA and gB are valid geometries
- Warning
- @ No actual validity check is done.
- Member SFCGAL::algorithm::minkowskiSum (const Geometry &gA, const Polygon &gB)
- missing cases (union)
- Precondition
- gA and gB are valid geometries
- Member SFCGAL::algorithm::straightSkeleton (const Geometry &geom, bool autoOrientation=true, bool innerOnly=false, bool outputDistanceInM=false, const double &toleranceAbs=EPSILON) -> std::unique_ptr< MultiLineString >
- add supports for TriangulatedSurface and PolyhedralSurface
- Parameters
-
| geom | input geometry |
| autoOrientation | check and fix polygon orientation |
| innerOnly | Skip non-inner edges if requested |
| outputDistanceInM | whether to output the distance to border as M |
| toleranceAbs | Distance tolerance between returned points. A line must have a maximum distance of toleranceAbs. |
- Precondition
- geom is a valid geometry
- Exceptions
-
- Class SFCGAL::algorithm::SurfaceGraph
unittest
- Class SFCGAL::detail::EnvelopeVisitor
- ConstPointVisitor
- Member SFCGAL::detail::io::WktReader::readPointCoordinate (Point &p)
- ZM management
- Member SFCGAL::detail::io::WktWriter::write (const Geometry &g, bool exact=false)
- replace with visitor dispatch
- Member SFCGAL::detail::polygonSetToMultiPolygon (const CGAL::Polygon_set_2< Kernel > &polygonSet)
- unittest
- Class SFCGAL::Envelope
add asText instead of "print"?
add basic operations (especialy intersects/intersects3D)
- Namespace SFCGAL::generator
- should be moved from detail to SFCGAL folder
- Member SFCGAL::generator::building (const Geometry &g, const Kernel::FT &wallHeight, const Kernel::FT &roofSlope)
- unittest
- Member SFCGAL::generator::disc (const Point ¢er, const double &radius, const unsigned int &nQuadrantSegments=8U)
- unittest
- Member SFCGAL::generator::hoch (const unsigned int &order)
- unittest
- Member SFCGAL::generator::sierpinski (const unsigned int &order)
- unittest
- Namespace SFCGAL::graph
- should be moved from detail to SFCGAL folder
- Class SFCGAL::graph::GeometryGraphBuilderT< Graph >
- wrap vertex_descriptor, std::vector< edge_descriptor >, etc. in SharedPoint, SharedLineString, SharedPolygon, etc. and add utility method on the Graph?
- Member SFCGAL::operator== (const Geometry &ga, const Geometry &gb) -> bool
- only compare coordinate points
- Precondition
- the two geometries must be valid
- Class SFCGAL::Point
- strong typing on coordinate dimension?
- Class SFCGAL::PolyhedralSurface
- do better than a "polygon soup" or add topological view?
- Namespace SFCGAL::transform
- should be moved from detail to SFCGAL folder
- Class SFCGAL::transform::AffineTransform2
- unittest
- Class SFCGAL::transform::AffineTransform3
- unittest
- Class SFCGAL::transform::ForceOrderPoints
unittest
move outside (it's not a coordinate transform)?
- Class SFCGAL::transform::ForceZOrderPoints
unittest
move outside (it's not a coordinate transform)?
- Namespace SFCGAL::triangulate
- should be moved into algorithm namespace/folder
- Member SFCGAL::triangulate::opentriangulatePolygon3D (const GeometryCollection &g, TriangulatedSurface &triangulatedSurface)
unittest
- Member SFCGAL::triangulate::triangulatePolygon3D (const Solid &g, TriangulatedSurface &triangulatedSurface)
unittest
- Member SFCGAL::triangulate::triangulatePolygon3D (const Triangle &g, TriangulatedSurface &triangulatedSurface)
unittest
- Member SFCGAL::triangulate::triangulatePolygon3D (const TriangulatedSurface &g, TriangulatedSurface &triangulatedSurface)
unittest
- Member SFCGAL::triangulate::triangulatePolygon3D (const Polygon &g, TriangulatedSurface &triangulatedSurface)
unittest
- Class SFCGAL::TriangulatedSurface
- do better than a "triangle soup" or add topological view?