16 #ifndef __IPSDKGEOMETRY_SHAPE2D_H__ 17 #define __IPSDKGEOMETRY_SHAPE2D_H__ 21 #pragma warning (push) 22 #pragma warning (disable : 4251) 24 #include <IPSDKGeometry/Entity/2d/BaseTypedGeometryEntity2d.h> 87 inline bool hasRowIntersections()
const;
105 inline bool hasRowIntersection(
const ipUInt64 rowIdx)
const;
116 void clearRowIntersections();
125 inline bool isPolygonWithHolesCollSet()
const;
134 ipUInt64 getNbExteriorPoints()
const;
147 void clearPolygonWithHolesColl();
177 IPSDK_FORCEINLINE
bool 213 IPSDK_FORCEINLINE
bool 219 IPSDK_FORCEINLINE
bool 255 #pragma warning (pop) 257 #endif // __IPSDKGEOMETRY_SHAPE2D_H__ Defines the IPSDK_FORCEINLINE.
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Shape2dPolygonWithHolesColl PolygonWithHolesColl
collection of polygon with holes
Definition: Shape2d.h:61
PolygonWithHolesIterator endPolygonWithHoles()
iterator used to parse polygon
Definition: Shape2d.h:244
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
Basic operators used for shape 2d management.
RowSegmentsColl _rowSegColl
row intersections collections
Definition: GeometryEntityTypes.h:77
Definition: GeometryEntityTypes.h:71
std::vector< Shape2dPolygonWithHolesPtr > Shape2dPolygonWithHolesColl
collection of polygon with holes
Definition: Shape2dTypes.h:78
IPSDKGEOMETRY_API ipUInt64 getNbPixels(const ipsdk::geom::RowIntersections &)
return the number of pixels in the input RowIntersections data structure
Closed polygon potentially associated to interior polygonal holes.
Definition: PolygonWithHoles2d.h:40
eCoordinateSystem2dType
Enumerate describing coordinate system 2d type.
Definition: GeometryEntity2dTypes.h:76
bool isPolygonWithHolesCollSet() const
check whether polygon with holes collection has been set
Definition: Shape2d.h:220
ipUInt64 getStartY() const
retrieve starting row index for shape
Definition: Shape2d.h:196
PolygonWithHolesIterator beginPolygonWithHoles()
iterator used to parse polygon
Definition: Shape2d.h:238
Shape2dPolygonWithHolesConstColl PolygonWithHolesConstColl
collection of const polygon with holes
Definition: Shape2d.h:58
Shape.
Definition: GeometryEntity2dTypes.h:52
#define IPSDKGEOMETRY_API
Import/Export macro for library IPSDKGeometry.
Definition: IPSDKGeometryExports.h:25
Base class for typed 3d geometry entities.
Definition: BaseTypedGeometryEntity2d.h:27
boost::shared_ptr< const Shape2dPolygonWithHoles > Shape2dPolygonWithHolesConstPtr
shared pointer to const polygon with holes associated to shape
Definition: Shape2dTypes.h:72
#define IPSDK_DECLARE_GEOMETRY_ENTITY_2D(libraryName, className)
Macro allowing to declare a geometry entity 2d.
Definition: GeometryEntity2dHdrMacros.h:131
bool hasRowIntersections() const
check whether row intersections have been set
Definition: Shape2d.h:178
PolygonWithHolesColl _polygonWithHolesColl
collection of polygon holes associated to shape 2d
Definition: Shape2d.h:159
std::vector< RowSegment > RowSegments
collection of row segments
Definition: GeometryEntityTypes.h:63
static const eEntity2dType::domain g_entity2dType
type associated to entity
Definition: Shape2d.h:46
bool hasRowIntersection(const ipUInt64 rowIdx) const
check whether shape has an intersection with a given row
Definition: Shape2d.h:214
eEntity2dType getEntity2dType() const
method allowing to retrieve entity 2d type
Definition: Shape2d.h:172
eEntity2dType
Enumerate describing entity 2d type.
Definition: GeometryEntity2dTypes.h:38
Shape2dPolygonWithHolesColl::iterator PolygonWithHolesIterator
iterator to collection of polygon with holes
Definition: Shape2d.h:64
Shape2dPolygonWithHolesConstPtr PolygonWithHolesConstPtr
shared pointer to polygon with holes
Definition: Shape2d.h:55
eCoordinateSystem2dType getCoordinateSystem2dType() const
method allowing to retrieve coordinate system 2d type
Definition: Shape2d.h:166
Shape2dPolygonWithHolesPtr PolygonWithHolesPtr
shared pointer to polygon with holes
Definition: Shape2d.h:52
Shape2dPolygonWithHoles PolygonWithHolesType
polygon with holes type associated to object
Definition: Shape2d.h:49
ipUInt64 getSizeY() const
retrieve number of rows associated to shape
Definition: Shape2d.h:202
Shape 2d associated to one or more closed polygon 2d.
Definition: Shape2d.h:35
Predefined types for shape 2d management.
ipUInt64 _yOffset
y coordinate of first row intersections
Definition: GeometryEntityTypes.h:74
RowIntersections _rowIntersections
structure describing shape/row intersections
Definition: Shape2d.h:156
ipUInt64 getEndY() const
retrieve ending row index for shape
Definition: Shape2d.h:208
static const eCoordinateSystem2dType::domain g_coordinateSystem2dType
coordinate system associated to entity
Definition: Shape2d.h:43
const PolygonWithHolesConstColl & getPolygonWithHolesColl() const
access to polygon with holes collection
Definition: Shape2d.h:226
const RowIntersections & getRowIntersections() const
retrieve row intersections collection
Definition: Shape2d.h:184
std::vector< Shape2dPolygonWithHolesConstPtr > Shape2dPolygonWithHolesConstColl
collection of const polygon with holes
Definition: Shape2dTypes.h:75
Cartesian coordinate system.
Definition: GeometryEntity2dTypes.h:78
boost::shared_ptr< Shape2dPolygonWithHoles > Shape2dPolygonWithHolesPtr
shared pointer to polygon with holes associated to shape
Definition: Shape2dTypes.h:69