SFCGAL 1.4.0
Typedefs | Functions
SFCGAL::generator Namespace Reference

Typedefs

typedef Kernel::Point_2 Point_2
 
typedef Kernel::Point_3 Point_3
 
typedef CGAL::Polygon_2< KernelPolygon_2
 
typedef CGAL::Polygon_with_holes_2< KernelPolygon_with_holes_2
 
typedef CGAL::Straight_skeleton_2< KernelStraight_skeleton_2
 

Functions

std::unique_ptr< Geometrybuilding (const Polygon &g, const Kernel::FT &wallHeight, const Kernel::FT &roofSlope)
 Basic building generator relying on a straight skeleton. More...
 
std::unique_ptr< Geometrybuilding (const MultiPolygon &g, const Kernel::FT &wallHeight, const Kernel::FT &roofSlope)
 Basic building generator relying on a straight skeleton. More...
 
void _buildingWall (const Polygon_2 &ring, const Kernel::FT &wallHeight, PolyhedralSurface &shell)
 
std::unique_ptr< Geometrybuilding (const Geometry &g, const Kernel::FT &wallHeight, const Kernel::FT &roofSlope)
 Basic building generator relying on a straight skeleton. More...
 
std::unique_ptr< Polygondisc (const Point &center, const double &radius, const unsigned int &nQuadrantSegments=8U)
 Generate a discrete circle. More...
 
std::vector< Kernel::Vector_2 > _hoch (const std::vector< Kernel::Vector_2 > &points)
 
std::unique_ptr< Polygonhoch (const unsigned int &order)
 generate hoch snowflake More...
 
std::vector< Kernel::Triangle_2 > _sierpinski (const std::vector< Kernel::Triangle_2 > &triangles)
 
std::unique_ptr< MultiPolygonsierpinski (const unsigned int &order)
 generate hoch snowflake More...
 

Typedef Documentation

◆ Point_2

typedef Kernel::Point_2 SFCGAL::generator::Point_2

◆ Point_3

typedef Kernel::Point_3 SFCGAL::generator::Point_3

◆ Polygon_2

typedef CGAL::Polygon_2<Kernel> SFCGAL::generator::Polygon_2

◆ Polygon_with_holes_2

typedef CGAL::Polygon_with_holes_2<Kernel> SFCGAL::generator::Polygon_with_holes_2

◆ Straight_skeleton_2

typedef CGAL::Straight_skeleton_2<Kernel> SFCGAL::generator::Straight_skeleton_2

Function Documentation

◆ _buildingWall()

void SFCGAL::generator::_buildingWall ( const Polygon_2 ring,
const Kernel::FT &  wallHeight,
PolyhedralSurface shell 
)

◆ _hoch()

std::vector< Kernel::Vector_2 > SFCGAL::generator::_hoch ( const std::vector< Kernel::Vector_2 > &  points)

◆ _sierpinski()

std::vector< Kernel::Triangle_2 > SFCGAL::generator::_sierpinski ( const std::vector< Kernel::Triangle_2 > &  triangles)

◆ building() [1/3]

SFCGAL_API std::unique_ptr< Geometry > SFCGAL::generator::building ( const Geometry g,
const Kernel::FT &  wallHeight,
const Kernel::FT &  roofSlope 
)

Basic building generator relying on a straight skeleton.

Warning
only supports Polygon and MultiPolygon
Todo:
unittest

◆ building() [2/3]

std::unique_ptr< Geometry > SFCGAL::generator::building ( const MultiPolygon g,
const Kernel::FT &  wallHeight,
const Kernel::FT &  roofSlope 
)

Basic building generator relying on a straight skeleton.

◆ building() [3/3]

std::unique_ptr< Geometry > SFCGAL::generator::building ( const Polygon g,
const Kernel::FT &  wallHeight,
const Kernel::FT &  roofSlope 
)

Basic building generator relying on a straight skeleton.

◆ disc()

SFCGAL_API std::unique_ptr< Polygon > SFCGAL::generator::disc ( const Point center,
const double &  radius,
const unsigned int &  nQuadrantSegments = 8U 
)

Generate a discrete circle.

Todo:
unittest

◆ hoch()

SFCGAL_API std::unique_ptr< Polygon > SFCGAL::generator::hoch ( const unsigned int &  order)

generate hoch snowflake

Todo:
unittest

◆ sierpinski()

SFCGAL_API std::unique_ptr< MultiPolygon > SFCGAL::generator::sierpinski ( const unsigned int &  order)

generate hoch snowflake

Todo:
unittest