#include <corefine-3d.hh>
Inherits GMap3d::CCorefine.
Public Member Functions | |
CCorefine3d (CGMapVertex *AMap, bool ACalculateOrientation=true, TCoordinate AEpsilon=1E-4, int AVertexDI=-1) | |
~CCorefine3d () | |
void | computeOnlyFirstIntersection (bool ABoolean) |
void | setGridResolution (int ARes) |
virtual int | corefine (CDart *&AMesh1, CDart *&AMesh2, std::bitset< NB_MARKS > ACopyMarks=0) |
const CTime & | getInitialisationTime () const |
const CTime & | getGridCreationTime () const |
const CTime & | getResearchTime () const |
const CTime & | getLineCreationTime () const |
const CTime & | getUpdateTime () const |
Protected Member Functions | |
virtual unsigned long | initMesh (CDart *AMesh) |
virtual void | cleanMesh (CDart *AMesh) |
void | createGrid (CDart *AMesh, unsigned long ANbFaces) |
void | destroyGrid () |
unsigned int | getMaxVerticesDegree (std::list< CDart * > *AList) |
CVertex | normalizeGridSize (const CVertex &AGridSize) |
void | getGridResolution (const CVertex &AGridSize, unsigned int AMinRes, unsigned int AMaxRes, unsigned int *AResX, unsigned int *AResY, unsigned int *AResZ) |
void | computeGridResolution (const CVertex &AGridSize, unsigned long ANbFaces, TCoordinate ANbFacesPerCell, unsigned int *AResX, unsigned int *AResY, unsigned int *AResZ, unsigned int AMinRes=1, unsigned int AMaxRes=512) |
unsigned int | refineGrid (unsigned int AMaxSubDiv, unsigned int AMaxNumberOfFaces) |
void | addFaceToGrid (TFaceGrid *AGrid, CDart *AFace) |
void | removeFaceFromGrid (TFaceGrid *AGrid, CDart *AFace) |
void | updateVertexLinks (CDart *ADart, CAttributeVertex *AVertex) |
void | updateVertexLinks (CDart *ADart) |
CVertex * | getVertex (CDart *ADart) |
void | updateFaceLinks (CDart *AFace) |
CDart * | getFace (CDart *ADart) |
CDart * | createEdge () |
virtual CDart * | insertVertexInFace (CDart *AFace, const CVertex &APoint) |
virtual CDart * | insertEdgeInFace (CDart *AVertex1, const CVertex &AVertex2) |
virtual CDart * | splitFace (CDart *AVertex1, CDart *AVertex2) |
virtual CDart * | splitEdge (CDart *AVertex, const CVertex &APoint) |
virtual CDart * | removeEdge (CDart *AEdge, int ADeleteMark=-1) |
CVertex | getProjectionOnPlane (CDart *AVertex, const CPlane &APlane) |
bool | isSameEdge_Naive (CDart *AEdge1, CDart *AEdge2) |
bool | isSameEdge_Optimized (CDart *AEdge1, CDart *AEdge2) |
bool | areFacesLinked (CDart *AFace1, CDart *AFace2) |
CEdgeIntersection | findNearestIntersectionInGrid (const CVertex &AVertex1, const CVertex &AVertex2) |
CDart * | findFirstIntersectionInGrid (const CVertex &AVertex, int *ADim) |
void | followIntersection (CDart *AVertex1, CDart *AVertex2, int AMark) |
bool | manageFacesIntersection (CDart *AFace1, const CPlane &APlane1, CDart *AFace2, const CPlane &APlane2, int AMark, std::list< CDart * > *AList) |
void | createIntersectionEdge (CDart *AFace1, CDart *AFace2, const CPlane &APlane1, const CPlane &APlane2, const CEdgeIntersection &AInter1, const CEdgeIntersection &AInter2, int AMark, std::list< CDart * > *AList) |
void | applyModifications (CDart *AMesh) |
void | extractIntersectionLines (CDart *AMesh) |
Private Attributes | |
int | FVertexDI |
int | FFaceDI |
int | FAlpha2DI |
int | FOrientMark |
int | FFictiveMark |
int | FIntersectionMark |
int | FNumberOfIntersectionLines |
int | FNumberOfIntersectionEdges |
bool | FLocalVertexDirectInfo |
bool | FCalculateOrientation |
bool | FComputeOnlyFirstIntersection |
int | FGridResolution |
CTime | FInitialisationTime |
CTime | FGridCreationTime |
CTime | FResearchTime |
CTime | FLineCreationTime |
CTime | FUpdateTime |
CCorefine3dTools | FTools |
TFaceGrid * | FGrid |
Definition at line 41 of file corefine-3d.hh.
CCorefine3d::CCorefine3d | ( | CGMapVertex * | AMap, | |
bool | ACalculateOrientation = true , |
|||
TCoordinate | AEpsilon = 1E-4 , |
|||
int | AVertexDI = -1 | |||
) |
Definition at line 100 of file corefine-3d.cc.
CCorefine3d::~CCorefine3d | ( | ) |
Definition at line 125 of file corefine-3d.cc.
Definition at line 832 of file corefine-3d.cc.
void CCorefine3d::applyModifications | ( | CDart * | AMesh | ) | [protected] |
Definition at line 1908 of file corefine-3d.cc.
Definition at line 1286 of file corefine-3d.cc.
void CCorefine3d::cleanMesh | ( | CDart * | AMesh | ) | [protected, virtual] |
Definition at line 496 of file corefine-3d.cc.
void CCorefine3d::computeGridResolution | ( | const CVertex & | AGridSize, | |
unsigned long | ANbFaces, | |||
TCoordinate | ANbFacesPerCell, | |||
unsigned int * | AResX, | |||
unsigned int * | AResY, | |||
unsigned int * | AResZ, | |||
unsigned int | AMinRes = 1 , |
|||
unsigned int | AMaxRes = 512 | |||
) | [protected] |
Definition at line 756 of file corefine-3d.cc.
void CCorefine3d::computeOnlyFirstIntersection | ( | bool | ABoolean | ) |
Definition at line 137 of file corefine-3d.cc.
virtual int GMap3d::CCorefine3d::corefine | ( | CDart *& | AMesh1, | |
CDart *& | AMesh2, | |||
std::bitset< NB_MARKS > | ACopyMarks = 0 | |||
) | [virtual] |
Implements GMap3d::CCorefine.
CDart * CCorefine3d::createEdge | ( | ) | [protected] |
Definition at line 917 of file corefine-3d.cc.
void CCorefine3d::createGrid | ( | CDart * | AMesh, | |
unsigned long | ANbFaces | |||
) | [protected] |
Definition at line 587 of file corefine-3d.cc.
void GMap3d::CCorefine3d::createIntersectionEdge | ( | CDart * | AFace1, | |
CDart * | AFace2, | |||
const CPlane & | APlane1, | |||
const CPlane & | APlane2, | |||
const CEdgeIntersection & | AInter1, | |||
const CEdgeIntersection & | AInter2, | |||
int | AMark, | |||
std::list< CDart * > * | AList | |||
) | [protected] |
void CCorefine3d::destroyGrid | ( | ) | [protected] |
Definition at line 634 of file corefine-3d.cc.
void CCorefine3d::extractIntersectionLines | ( | CDart * | AMesh | ) | [protected] |
Definition at line 1938 of file corefine-3d.cc.
CDart * CCorefine3d::findFirstIntersectionInGrid | ( | const CVertex & | AVertex, | |
int * | ADim | |||
) | [protected] |
Definition at line 1482 of file corefine-3d.cc.
CEdgeIntersection CCorefine3d::findNearestIntersectionInGrid | ( | const CVertex & | AVertex1, | |
const CVertex & | AVertex2 | |||
) | [protected] |
Definition at line 1300 of file corefine-3d.cc.
Definition at line 1568 of file corefine-3d.cc.
Definition at line 40 of file corefine-3d.icc.
const CTime& GMap3d::CCorefine3d::getGridCreationTime | ( | ) | const [inline] |
Definition at line 56 of file corefine-3d.hh.
void CCorefine3d::getGridResolution | ( | const CVertex & | AGridSize, | |
unsigned int | AMinRes, | |||
unsigned int | AMaxRes, | |||
unsigned int * | AResX, | |||
unsigned int * | AResY, | |||
unsigned int * | AResZ | |||
) | [protected] |
Definition at line 735 of file corefine-3d.cc.
const CTime& GMap3d::CCorefine3d::getInitialisationTime | ( | ) | const [inline] |
Definition at line 55 of file corefine-3d.hh.
const CTime& GMap3d::CCorefine3d::getLineCreationTime | ( | ) | const [inline] |
Definition at line 58 of file corefine-3d.hh.
unsigned int GMap3d::CCorefine3d::getMaxVerticesDegree | ( | std::list< CDart * > * | AList | ) | [protected] |
Definition at line 1212 of file corefine-3d.cc.
const CTime& GMap3d::CCorefine3d::getResearchTime | ( | ) | const [inline] |
Definition at line 57 of file corefine-3d.hh.
const CTime& GMap3d::CCorefine3d::getUpdateTime | ( | ) | const [inline] |
Definition at line 59 of file corefine-3d.hh.
Definition at line 32 of file corefine-3d.icc.
unsigned long CCorefine3d::initMesh | ( | CDart * | AMesh | ) | [protected, virtual] |
Definition at line 435 of file corefine-3d.cc.
CDart * CCorefine3d::insertEdgeInFace | ( | CDart * | AVertex1, | |
const CVertex & | AVertex2 | |||
) | [protected, virtual] |
Definition at line 974 of file corefine-3d.cc.
CDart * CCorefine3d::insertVertexInFace | ( | CDart * | AFace, | |
const CVertex & | APoint | |||
) | [protected, virtual] |
Definition at line 957 of file corefine-3d.cc.
Definition at line 1238 of file corefine-3d.cc.
Definition at line 1258 of file corefine-3d.cc.
bool GMap3d::CCorefine3d::manageFacesIntersection | ( | CDart * | AFace1, | |
const CPlane & | APlane1, | |||
CDart * | AFace2, | |||
const CPlane & | APlane2, | |||
int | AMark, | |||
std::list< CDart * > * | AList | |||
) | [protected] |
Definition at line 720 of file corefine-3d.cc.
unsigned int CCorefine3d::refineGrid | ( | unsigned int | AMaxSubDiv, | |
unsigned int | AMaxNumberOfFaces | |||
) | [protected] |
Definition at line 779 of file corefine-3d.cc.
Definition at line 1192 of file corefine-3d.cc.
Definition at line 849 of file corefine-3d.cc.
void CCorefine3d::setGridResolution | ( | int | ARes | ) |
Definition at line 144 of file corefine-3d.cc.
Definition at line 1150 of file corefine-3d.cc.
Definition at line 1054 of file corefine-3d.cc.
void CCorefine3d::updateFaceLinks | ( | CDart * | AFace | ) | [protected] |
Definition at line 904 of file corefine-3d.cc.
void CCorefine3d::updateVertexLinks | ( | CDart * | ADart | ) | [protected] |
Definition at line 889 of file corefine-3d.cc.
void CCorefine3d::updateVertexLinks | ( | CDart * | ADart, | |
CAttributeVertex * | AVertex | |||
) | [protected] |
Definition at line 876 of file corefine-3d.cc.
int GMap3d::CCorefine3d::FAlpha2DI [private] |
Definition at line 138 of file corefine-3d.hh.
bool GMap3d::CCorefine3d::FCalculateOrientation [private] |
Definition at line 148 of file corefine-3d.hh.
bool GMap3d::CCorefine3d::FComputeOnlyFirstIntersection [private] |
Definition at line 149 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FFaceDI [private] |
Definition at line 136 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FFictiveMark [private] |
Definition at line 141 of file corefine-3d.hh.
TFaceGrid* GMap3d::CCorefine3d::FGrid [private] |
Definition at line 160 of file corefine-3d.hh.
CTime GMap3d::CCorefine3d::FGridCreationTime [private] |
Definition at line 153 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FGridResolution [private] |
Definition at line 150 of file corefine-3d.hh.
Definition at line 152 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FIntersectionMark [private] |
Definition at line 142 of file corefine-3d.hh.
CTime GMap3d::CCorefine3d::FLineCreationTime [private] |
Definition at line 155 of file corefine-3d.hh.
bool GMap3d::CCorefine3d::FLocalVertexDirectInfo [private] |
Definition at line 147 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FNumberOfIntersectionEdges [private] |
Definition at line 145 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FNumberOfIntersectionLines [private] |
Definition at line 144 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FOrientMark [private] |
Definition at line 140 of file corefine-3d.hh.
CTime GMap3d::CCorefine3d::FResearchTime [private] |
Definition at line 154 of file corefine-3d.hh.
CCorefine3dTools GMap3d::CCorefine3d::FTools [private] |
Definition at line 158 of file corefine-3d.hh.
CTime GMap3d::CCorefine3d::FUpdateTime [private] |
Definition at line 156 of file corefine-3d.hh.
int GMap3d::CCorefine3d::FVertexDI [private] |
Definition at line 135 of file corefine-3d.hh.