Blender V2.61 - r43446
|
#include <BOP_Segment.h>
Public Member Functions | |
BOP_Segment () | |
void | invert () |
void | sort () |
unsigned int | getConfig () |
Static Public Member Functions | |
static bool | isIn (unsigned int cfg) |
static bool | isEdge (unsigned int cfg) |
static bool | isVertex (unsigned int cfg) |
static bool | isDefined (unsigned int cfg) |
static bool | isUndefined (unsigned int cfg) |
static unsigned int | getEdge (unsigned int cfg) |
static BOP_Index | getVertex (unsigned int cfg) |
static unsigned int | createEdgeCfg (unsigned int edge) |
static unsigned int | createVertexCfg (BOP_Index vertex) |
static unsigned int | createInCfg () |
static unsigned int | createUndefinedCfg () |
Public Attributes | |
unsigned int | m_cfg1 |
unsigned int | m_cfg2 |
BOP_Index | m_v1 |
BOP_Index | m_v2 |
Friends | |
std::ostream & | operator<< (std::ostream &stream, const BOP_Segment &c) |
Definition at line 39 of file BOP_Segment.h.
BOP_Segment::BOP_Segment | ( | ) |
Constructs a new segment.
Definition at line 40 of file BOP_Segment.cpp.
unsigned int BOP_Segment::createEdgeCfg | ( | unsigned int | edge | ) | [static] |
Returns the end segment configuration for the specified relative edge index.
Definition at line 172 of file BOP_Segment.cpp.
Referenced by BOP_splitFace(), and getConfig().
unsigned int BOP_Segment::createInCfg | ( | ) | [static] |
Returns the end segment IN configuration.
Definition at line 190 of file BOP_Segment.cpp.
Referenced by getConfig().
unsigned int BOP_Segment::createUndefinedCfg | ( | ) | [static] |
Returns the end segment UNDEFINED configuration.
Definition at line 199 of file BOP_Segment.cpp.
References UNDEFINED.
Referenced by BOP_createXS(), and BOP_splitFace().
unsigned int BOP_Segment::createVertexCfg | ( | BOP_Index | vertex | ) | [static] |
Returns the end segment configuration for the specified relative vertex index.
Definition at line 181 of file BOP_Segment.cpp.
Referenced by BOP_intersectCoplanarFaces(), and BOP_splitFace().
unsigned int BOP_Segment::getConfig | ( | ) |
Returns the inner segment configuration.
Definition at line 208 of file BOP_Segment.cpp.
References createEdgeCfg(), createInCfg(), getEdge(), getVertex(), isEdge(), isUndefined(), isVertex(), m_cfg1, and m_cfg2.
Referenced by BOP_createXS().
unsigned int BOP_Segment::getEdge | ( | unsigned int | cfg | ) | [static] |
Returns the relative edge index from the specified end segment configuration.
Definition at line 154 of file BOP_Segment.cpp.
Referenced by BOP_getPoints(), getConfig(), and triangulate().
BOP_Index BOP_Segment::getVertex | ( | unsigned int | cfg | ) | [static] |
Returns the relative vertex index from the specified end segment configuration.
Definition at line 163 of file BOP_Segment.cpp.
Referenced by BOP_getPoints(), and getConfig().
void BOP_Segment::invert | ( | ) |
Inverts the segment, swapping ends data.
Definition at line 77 of file BOP_Segment.cpp.
References m_cfg1, m_cfg2, m_v1, and m_v2.
Referenced by BOP_createXS(), and sort().
bool BOP_Segment::isDefined | ( | unsigned int | cfg | ) | [static] |
Returns if the specified end segment configuration is DEFINED (not UNDEFINED).
Definition at line 136 of file BOP_Segment.cpp.
References UNDEFINED.
Referenced by BOP_getPoints(), BOP_intersectCoplanarFaces(), and BOP_intersectNonCoplanarFaces().
bool BOP_Segment::isEdge | ( | unsigned int | cfg | ) | [static] |
Returns if the specified end segment configuration is EDGE.
Definition at line 118 of file BOP_Segment.cpp.
Referenced by BOP_getPoints(), getConfig(), and triangulate().
bool BOP_Segment::isIn | ( | unsigned int | cfg | ) | [static] |
Returns if the specified end segment configuration is IN.
Definition at line 109 of file BOP_Segment.cpp.
Referenced by triangulate().
bool BOP_Segment::isUndefined | ( | unsigned int | cfg | ) | [static] |
Returns if the specified end segment configuration is UNDEFINED.
Definition at line 145 of file BOP_Segment.cpp.
References UNDEFINED.
Referenced by getConfig(), and triangulate().
bool BOP_Segment::isVertex | ( | unsigned int | cfg | ) | [static] |
Returns if the specified end segment configuration is VERTEX.
Definition at line 127 of file BOP_Segment.cpp.
References UNDEFINED.
Referenced by BOP_getPoints(), BOP_getVertexIndex(), getConfig(), and triangulate().
void BOP_Segment::sort | ( | ) |
Sorts the segment according to ends configuration. The criterion to sort is ...
UNDEFINED < VERTEX < EDGE < IN cfg1 > cfg2
so ...
VERTEX(cfg1) => UNDEFINED(cfg2) || VERTEX(cfg2) EDGE(cfg1) => UNDEFINED(cfg2) || VERTEX(cfg2) || EDGE(cfg2) IN(cfg1) => UNDEFINED(cfg2) || VERTEX(cfg2) || EDGE(cfg2) || IN(cfg2)
Definition at line 100 of file BOP_Segment.cpp.
References invert(), m_cfg1, and m_cfg2.
Referenced by BOP_createXS().
std::ostream& operator<< | ( | std::ostream & | stream, |
const BOP_Segment & | c | ||
) | [friend] |
Implements operator <<
Definition at line 245 of file BOP_Segment.cpp.
unsigned int BOP_Segment::m_cfg1 |
Definition at line 52 of file BOP_Segment.h.
Referenced by BOP_createXS(), BOP_getPoints(), BOP_intersectCoplanarFaces(), BOP_intersectNonCoplanarFaces(), BOP_Segment(), BOP_splitFace(), getConfig(), invert(), operator<<(), sort(), and triangulate().
unsigned int BOP_Segment::m_cfg2 |
Definition at line 52 of file BOP_Segment.h.
Referenced by BOP_createXS(), BOP_getPoints(), BOP_intersectCoplanarFaces(), BOP_Segment(), BOP_splitFace(), getConfig(), invert(), operator<<(), sort(), and triangulate().
Definition at line 53 of file BOP_Segment.h.
Referenced by BOP_createXS(), BOP_getPoints(), BOP_intersectCoplanarFaces(), BOP_splitFace(), invert(), operator<<(), and triangulate().
Definition at line 53 of file BOP_Segment.h.
Referenced by BOP_createXS(), BOP_getPoints(), BOP_intersectCoplanarFaces(), BOP_splitFace(), invert(), operator<<(), and triangulate().