Moka kernel
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GMap3d::CGMapVertex Class Reference

#include <g-map-vertex.hh>

Inheritance diagram for GMap3d::CGMapVertex:
GMap3d::CGMapGeneric GMap3d::CGMap GMap3d::CGMapBasic

Public Member Functions

 CGMapVertex ()
 
virtual ~CGMapVertex ()
 
void empty ()
 
virtual CDartnewDart ()
 
virtual void delDart (CDart *ADart)
 
CDartaddMapDart ()
 
CDartVertexaddMapDart (const CVertex &AVertex)
 
TCoordinate getBurstCoef (int ADim) const
 
void setBurstCoef (int ADim, TCoordinate ACoef)
 
CAttributeVertexfindVertex (CDart *ADart)
 
CAttributeVertexgetVertex (CDart *ADart) const
 
void setVertex (CDart *ADart, const CVertex &AVertex)
 
void setVertex (CDart *ADart, CAttributeVertex *AVertex)
 
void updateVertex (CDart *ADart, const CVertex &AVertex)
 
void delVertex (CDart *ADart)
 
CAttributeVertexremoveVertex (CDart *ADart)
 
CVertexgetBurstVertex (CDart *ADart) const
 
void setBurstVertex (CDart *ADart, const CVertex &AVertex)
 
CVertex computeBurstExtremity (CDart *ADart) const
 
CAttributeVertexgetDirectInfoAsAttributeVertex (CDart *ADart, int ADirectInfoIndex) const
 
CVertexgetDirectInfoAsVertex (CDart *ADart, int ADirectInfoIndex) const
 
TCoordinategetDirectInfoAsCoord (CDart *ADart, int ADirectInfoIndex) const
 
CDartprolongPolyline (CDart *ADart, const CVertex &AVertex)
 
bool isPlanarPolyline (CDart *ADart)
 
bool markNonPlanarPolylines (int AMarkNumber)
 
CDartcreatePolyline (const std::vector< CVertex > &AVector)
 
CDartcreatePole (int An, const CVertex &AVertex)
 
CDartcreateOpenedPole (int An, const CVertex &AVertex)
 
CDartcreateRegularPolygon (int An)
 
void createSphere (int AMeridians, int AParallels, CDart **ASouthPole, CDart **ANorthPole)
 
CDartcreateSphere (int AMeridians, int AParallels)
 
void createCylinder (int AMeridians, int AParallels, CDart **ABorder1, CDart **ABorder2, bool AClose1=true, bool AClose2=true)
 
CDartcreateCylinder (int AMeridians, int AParallels, bool AClose1=true, bool AClose2=true)
 
void createPyramid (int AMeridians, int AParallels, CDart **ABaseDart, CDart **APoleDart, bool ACloseBase=true)
 
CDartcreatePyramid (int AMeridians, int AParallels, bool ACloseBase=true)
 
void createTorus (int AMeridians, int AParallels, TCoordinate ARadiusProportion, CDart **AEquator)
 
CDartcreateTorus (int AMeridians, int AParallels, TCoordinate ARadiusProportion)
 
void createSquareIMeshed (int ASx, int ASy, int AMeshDimension, CDart *ASquareCorners[2][2])
 
CDartcreateSquareIMeshed (int ASx, int ASy, int AMeshDimension)
 
void createCubeIMeshed (int ASx, int ASy, int ASz, int AMeshDimension, bool ACreatedFaces[3][2], CDart *AFacesCorners[3][2][2][2])
 
void createCubeIMeshed (int ASx, int ASy, int ASz, int AMeshDimension, bool ACreatedFaces[3][2], CDart **ADart1, CDart **ADart2)
 
void computeRegressionLine (int AMarkNumber, CVertex *ABarycenter, CVertex *ADirection)
 
void computeRegressionPlane (int AMarkNumber, TCoordinate *AA, TCoordinate *AB, TCoordinate *AC, TCoordinate *AD)
 
bool canPlate (CDart *ADart1, CDart *ADart2)
 
int getPlateDimension (CDart *ADart1, CDart *ADart2)
 
void plate (CDart *ADart1, CDart *ADart2, int ADimbool, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
bool intuitivePlate (CDart *ADart1, CDart *ADart2, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
void borderPlate (CDart *ADart1, CDart *ADart2, int ADim, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
void geoSew (CDart *ADart1, CDart *ADart2, int ADim, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
bool intuitiveGeoSew (CDart *ADart1, CDart *ADart2, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
void geoBorderSew (CDart *ADart1, CDart *ADart2, int ADim, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
bool intuitiveGeoBorderSew (CDart *ADart1, CDart *ADart2, bool ARotateCells=true, bool AScaleCells=true, bool ATranslateCells=true)
 
CDartinsertVertex (CDart *ADart)
 
int deleteNullLengthEdges ()
 
int deleteMarkedNullLengthEdges (int AMarkNumber)
 
CDartmaterializeBarycenter (int AMarkNumber)
 
CDartmaterializeAxe (CDart *ADart1, CDart *ADart2)
 
CDartmaterializePlane (CDart *ADart1, CDart *ADart2, CDart *ADart3)
 
CDartmaterializeNormalVector (CDart *ADart)
 
CDartmaterializeNormalPlane (CDart *ADart1, CDart *ADart2)
 
CDartmaterializeReferential ()
 
CDartimportOff2D (std::istream &AStream)
 
CDartimportOff3D (std::istream &AStream)
 
CDartaddEdgeOFF (std::vector< CVertex > &AInitVertices, unsigned long int AV1, unsigned long int AV2, int AIndex, CDart *APrec)
 
void linkFaceAlpha2OFF (std::vector< std::list< CDart * > > &ATestVertices, int AIndex, CDart *ADart)
 
int getOffDimension (const char *AFilename)
 
CDartimportOff (const char *AFilename)
 
bool exportOff2D (std::ostream &AStream)
 
bool exportOff3D (std::ostream &AStream)
 
bool exportOff (const char *AFilename)
 
bool exportOff3D (const char *AFilename)
 
int dualOfMarkedDarts (int ADim, int AMarkNumber)
 
void stopUp (CDart *ADart, int ADim)
 
CDarttriangulateEdge (CDart *ADart)
 
CDarttriangulateFace (CDart *ADart)
 
CDarttriangulateVolume (CDart *ADart)
 
bool shouldSwapEdge (CDart *AEdge, int AVertexDI=-1)
 
bool swapEdge (CDart *AEdge, int AVertexDI=-1)
 
void triangulateGeoFace (CDart *AFace, int ANewEdgesMark=-1, int AVertexDI=-1)
 
void triangulateMarkedFaces (int AMark, int ANewEdgesMark=-1, int AVertexDI=-1)
 
bool isPointInTriangle (const CVertex &APoint, const CVertex &AVertex1, const CVertex &AVertex2, const CVertex &AVertex3, const CVertex &ANormal)
 
TCoordinate getTriangleCoef (const CVertex &AVertex1, const CVertex &AVertex2, const CVertex &AVertex3)
 
CDartquadrangulateFace (CDart *ADart, bool AInsertVertices=true)
 
void allocCoordToDirectInfo (int AMarkNumber, int ADirectInfoIndex, TOrbit AOrbitUsed=ORBIT_NONE)
 
void allocCoordToDirectInfo (CDart *ADart, TOrbit AOrbit, int ADirectInfoIndex, TOrbit AOrbitUsed=ORBIT_NONE)
 
void duplicateVertexToDirectInfo (int AMarkNumber, int ADirectInfoNumber)
 
void deleteDuplicatedVertex (int ADirectInfoNumber)
 
void updateDirectInfoWithVertex (int ADirectInfoNumber)
 
void pointDirectInfoToAttributeVertex (int ADirectInfoIndex)
 
void pointDirectInfoToAttributeVertex (int ADirectInfoIndex, CDart *ADart)
 
void pointDirectInfoToAttributeVertex (int ADirectInfoIndex, CDart *ADart, TOrbit AOrbit)
 
void applyMatrix (const CTransformationMatrix &AMatrix, CDart *ADart, TOrbit AOrbit, int ADirectInfoVertex=-1)
 
void applyMatrix (const CTransformationMatrix &AMatrix, int AMarkNumber, int ADirectInfoVertex=-1)
 
void computeDistanceToVertex (int AMarkNumber, int ADirectInfoIndex, const CVertex &AVertex)
 
void computeDistanceToLine (int AMarkNumber, int ADirectInfoIndex, const CVertex &ALineVertex, const CVertex &ALineDirection)
 
void computeDistanceToPlane (int AMarkNumber, int ADirectInfoIndex, const CVertex &APlaneVertex, const CVertex &APlaneNormal)
 
void normalizeParameter (int AMarkNumber, int ADirectInfoIndex, TCoordinate AMin, TCoordinate AMax)
 
void applyFunctionOnParameter (int AMarkNumber, int ADirectInfoIndex, TFunctionType AFunctionType)
 
void translate (int AMarkNumber, const CVertex &AVector, int ADirectInfoVertex=-1, int ADirectInfoParam=-1)
 
void rotate (int AMarkNumber, const CVertex &AAxeVertex, const CVertex &AAxeDirection, TCoordinate AAngle, int ADirectInfoVertex=-1, int ADirectInfoParam=-1)
 
void scale (int AMarkNumber, const CVertex &ACenter, const CVertex &ACoef, int ADirectInfoVertex=-1, int ADirectInfoParam=-1)
 
void scale (int AMarkNumber, const CVertex &ACenter, TCoordinate ACoef, int ADirectInfoVertex=-1, int ADirectInfoParam=-1)
 
void axialScale (int AMarkNumber, const CVertex &AAxeVertex, const CVertex &AAxeDirection, TCoordinate ACoef, int ADirectInfoVertex=-1, int ADirectInfoParam=-1)
 
void planarScale (int AMarkNumber, const CVertex &APlaneVertex, const CVertex &APlaneNormal, TCoordinate ACoef, int ADirectInfoVertex=-1, int ADirectInfoParam=-1)
 
void orthoProjectOnPlane (int AMarkNumber, TCoordinate AA, TCoordinate AB, TCoordinate AC, TCoordinate AD)
 
int thickenMarkedDarts (int AMarkNumber, TCoordinate AExtrusionCoef)
 
int mergeMarkedColinearEdges (int AMarkNumber, bool ADeleteDarts)
 
int mergeMarkedCoplanarFaces (int AMarkNumber, bool ADeleteDarts)
 
int mergeMarkedAlignedCells (int ADim, int AMarkNumber, bool ADeleteDarts)
 
unsigned int simplify3DObject (int AMark0, int AMark1, int AMark2=-1)
 
unsigned int simplify2DObject (int AMark0, int AMark1)
 
unsigned int simplify2DObject (unsigned int optosimplify=EDGE_REMOVAL|VERTEX_REMOVAL|EDGE_CONTRACTION|FACE_CONTRACTION)
 
unsigned int simplify2DObjectRemoval (unsigned int optosimplify)
 
unsigned int simplify2DObjectContraction (unsigned int optosimplify)
 
unsigned int simplify3DObject (unsigned int optosimplify=FACE_REMOVAL|EDGE_REMOVAL|VERTEX_REMOVAL|EDGE_CONTRACTION|FACE_CONTRACTION|VOLUME_CONTRACTION)
 
unsigned int simplify3DObjectRemoval (unsigned int optosimplify)
 
unsigned int simplify3DObjectContraction (unsigned int optosimplify)
 
bool exportToPov (std::ofstream &AOutStream)
 
int findMotif (CGMapVertex *AMap, unsigned int *ANbMatched=NULL)
 
unsigned int countNumberOfMotifs (CGMapVertex *AMap, unsigned int *ANbMatched=NULL)
 
bool findMotifFrom (CDart *AFromDart, unsigned int AMarkTreated, unsigned int AIndex, CGMapVertex *AMap, CDart *ADestDart, unsigned int AMarkTreated2, unsigned int *ANbMatched=NULL)
 
void unmarkMotifMark (CDart *ADart, int AMark, int AIndex, CGMapVertex *AMap, CDart *ADart2, int AMark2)
 
- Public Member Functions inherited from GMap3d::CGMapGeneric
 CGMapGeneric ()
 
virtual ~CGMapGeneric ()
 
CDartalpha01 (CDart *ADart) const
 
CDartalpha010 (CDart *ADart) const
 
CDartalpha0101 (CDart *ADart) const
 
CDartalpha0101210 (CDart *ADart) const
 
CDartalpha01010 (CDart *ADart) const
 
CDartalpha01021 (CDart *ADart) const
 
CDartalpha0102101 (CDart *ADart) const
 
CDartalpha010212 (CDart *ADart) const
 
CDartalpha012 (CDart *ADart) const
 
CDartalpha0121 (CDart *ADart) const
 
CDartalpha0123 (CDart *ADart) const
 
CDartalpha012321 (CDart *ADart) const
 
CDartalpha02 (CDart *ADart) const
 
CDartalpha020 (CDart *ADart) const
 
CDartalpha021 (CDart *ADart) const
 
CDartalpha0210 (CDart *ADart) const
 
CDartalpha02101 (CDart *ADart) const
 
CDartalpha02121 (CDart *ADart) const
 
CDartalpha023 (CDart *ADart) const
 
CDartalpha03 (CDart *ADart) const
 
CDartalpha030 (CDart *ADart) const
 
CDartalpha10 (CDart *ADart) const
 
CDartalpha101 (CDart *ADart) const
 
CDartalpha1010 (CDart *ADart) const
 
CDartalpha10101 (CDart *ADart) const
 
CDartalpha1010101 (CDart *ADart) const
 
CDartalpha1012 (CDart *ADart) const
 
CDartalpha10121 (CDart *ADart) const
 
CDartalpha101201 (CDart *ADart) const
 
CDartalpha1012101 (CDart *ADart) const
 
CDartalpha101232 (CDart *ADart) const
 
CDartalpha102 (CDart *ADart) const
 
CDartalpha1021 (CDart *ADart) const
 
CDartalpha12 (CDart *ADart) const
 
CDartalpha121 (CDart *ADart) const
 
CDartalpha1210 (CDart *ADart) const
 
CDartalpha12101 (CDart *ADart) const
 
CDartalpha1212 (CDart *ADart) const
 
CDartalpha123 (CDart *ADart) const
 
CDartalpha1232 (CDart *ADart) const
 
CDartalpha12321 (CDart *ADart) const
 
CDartalpha123210 (CDart *ADart) const
 
CDartalpha13 (CDart *ADart) const
 
CDartalpha20 (CDart *ADart) const
 
CDartalpha201 (CDart *ADart) const
 
CDartalpha21 (CDart *ADart) const
 
CDartalpha210 (CDart *ADart) const
 
CDartalpha2101 (CDart *ADart) const
 
CDartalpha21012 (CDart *ADart) const
 
CDartalpha210123 (CDart *ADart) const
 
CDartalpha212 (CDart *ADart) const
 
CDartalpha2121 (CDart *ADart) const
 
CDartalpha23 (CDart *ADart) const
 
CDartalpha231 (CDart *ADart) const
 
CDartalpha2310 (CDart *ADart) const
 
CDartalpha232 (CDart *ADart) const
 
CDartalpha2321 (CDart *ADart) const
 
CDartalpha232101 (CDart *ADart) const
 
CDartalpha30 (CDart *ADart) const
 
CDartalpha301 (CDart *ADart) const
 
CDartalpha3012 (CDart *ADart) const
 
CDartalpha30120 (CDart *ADart) const
 
CDartalpha302 (CDart *ADart) const
 
CDartalpha31 (CDart *ADart) const
 
CDartalpha312 (CDart *ADart) const
 
CDartalpha32 (CDart *ADart) const
 
CDartalpha3201 (CDart *ADart) const
 
CDartalpha321 (CDart *ADart) const
 
CDartalpha321012 (CDart *ADart) const
 
CDartalpha323 (CDart *ADart) const
 
CDartgetDirectInfoAsDart (CDart *ADart, int ADirectInfoIndex)
 
void allocMemoryToDirectInfo (int AMarkNumber, int ADirectInfoIndex, int ABytes, TOrbit AOrbitUsed=ORBIT_NONE)
 
void allocMemoryToDirectInfo (CDart *ADart, TOrbit AOrbit, int ADirectInfoIndex, int ABytes, TOrbit AOrbitUsed=ORBIT_NONE)
 
void freeMemoryFromDirectInfo (int AMarkNumber, int ADirectInfoIndex, TOrbit AOrbitUsed=ORBIT_NONE)
 
void freeMemoryFromDirectInfo (CDart *ADart, TOrbit AOrbit, int ADirectInfoIndex, TOrbit AOrbitUsed=ORBIT_NONE)
 
void saveAlphaInDirectInfo (int AAlphaIndex, int ADirectInfoIndex)
 
void initUnionFindTrees (int AIndex, TOrbit AOrbit)
 
void initTwoUnionFindTrees (int AIndex1, TOrbit AOrbit1, int AIndex2, TOrbit AOrbit2)
 
void initUnionFindTreesFaceVolume (int AIndexFace, int AIndexVol)
 
void initUnionFindTreesVerticesEdges (int AIndexVertex, int AIndexEdge)
 
CDartfindUnionFindTrees (CDart *ADart, int AIndex)
 
void mergeUnionFindTrees (CDart *ADart1, CDart *ADart2, int AIndex)
 
CDartcreateTopoTriangle ()
 
CDartcreateTopoSquare ()
 
CDartcreateTopoPolygon (int An)
 
CDartcreateTopoOpenedPole (int An)
 
CDartcreateTopoPole (int An)
 
void createTopoTube (int AMeridians, int AParallels, CDart **ABorder1, CDart **ABorder2)
 
CDartcreateTopoTube (int AMeridians, int AParallels)
 
void createTopoSphere (int AMeridians, int AParallels, CDart **ASouthPole, CDart **ANorthPole)
 
CDartcreateTopoSphere (int AMeridians, int AParallels)
 
void createTopoCylinder (int AMeridians, int AParallels, CDart **ABorder1, CDart **ABorder2, bool AClose1=true, bool AClose2=true)
 
CDartcreateTopoCylinder (int AMeridians, int AParallels, bool AClose1=true, bool AClose2=true)
 
void createTopoPyramid (int AMeridians, int AParallels, CDart **ABaseDart, CDart **APoleDart, bool ACloseBase=true)
 
CDartcreateTopoPyramid (int AMeridians, int AParallels, bool ACloseBase=true)
 
void createTopoTorus (int AMeridians, int AParallels, CDart **AEquator)
 
CDartcreateTopoTorus (int AMeridians, int AParallels)
 
void createTopoSquareIMeshed (int ASx, int ASy, int AMeshDimension, CDart *ASquareCorners[2][2])
 
void createTopoCubeIMeshed (int ASx, int ASy, int ASz, int AMeshDimension, bool ACreatedFaces[3][2], CDart *AFacesCorners[3][2][2][2])
 
void createTopoMesh1 (int ASx, CDart *AMesh1Corners[2], CDart *AModel=NULL)
 
CDartcreateTopoMesh1 (int ASx, CDart *AModel=NULL)
 
void createTopoMesh2 (int ASx, int ASy, CDart *AMesh2Corners[2][2], bool A3Sewed=false)
 
CDartcreateTopoMesh2 (int ASx, int ASy, bool A3Sewed=false)
 
void createTopoMesh3 (int ASx, int ASy, int ASz, CDart *AMesh3Corners[2][2][2])
 
CDartcreateTopoMesh3 (int ASx, int ASy, int ASz)
 
bool isIsolatedPolyline (CDart *ADart)
 
bool isClosedPolyline (CDart *ADart)
 
int getNbPolylineVertices (CDart *ADart)
 
int getNbPolylineEdges (CDart *ADart, bool AConsider0FreeDartsAsEdges=true)
 
CDartprolongPolyline (CDart *ADart)
 
CDartshortenPolyline (CDart *ADart)
 
CDartclosePolyline (CDart *ADart)
 
bool belongToSameOrientedOrbit (CDart *ADart1, CDart *ADart2, TOrbit AOrbit)
 
bool isOrientable (CDart *ADart, TOrbit AOrbit)
 
void countBorders (int AMarkNumber, int *ANb0, int *ANb1, int *ANb2, int *ANb3)
 
void countBorders (CDart *ADart, TOrbit AOrbit, int *ANb0, int *ANb1, int *ANb2, int *ANb3)
 
unsigned int countNonLocalDegreeTwoEdges ()
 
void countCells (int AMarkNumber, int *ANb0, int *ANb1, int *ANb2, int *ANb3, int *ANb4, int *ANbDarts=NULL)
 
void countCells (CDart *ADart, TOrbit AOrbit, int *ANb0, int *ANb1, int *ANb2, int *ANb3, int *ANb4, int *ANbDarts=NULL)
 
void getGlobalCharacteristics (int *ANbDarts, int *ANbVertices, int *ANbEdges, int *ANbFaces, int *ANbVolumes, int *ANbCC, int *ANb0Borders, int *ANb1Borders, int *ANb2Borders, int *ANb3Borders)
 
std::ostream & displayCharacteristics (std::ostream &AOs)
 
void getSurfaceCharacteristics (CDart *ADart, int *ANbDarts, int *ANbVertices, int *ANbEdges, int *ANbFaces, int *ANb0Borders, int *ANb1Borders, int *ANb2Borders, int *ANb2BordersWhenClosed, int *AEuler, int *AOrient, int *AGenus)
 
std::string getSurfaceName (int AB2, int AQ, int AG)
 
bool isConnex ()
 
bool checkTopology ()
 
bool checkEmbeddings (TOrbit AOrbit, int AAttributeIdentity, bool AEmbeddingMustExist=true)
 
bool isIClosedOrbit (CDart *ADart, int ADimension, TOrbit AOrbit)
 
bool isIFreeOrbit (CDart *ADart, int ADimension, TOrbit AOrbit)
 
int getMapDimension ()
 
bool isDanglingFace (CDart *ADart)
 
int degree (CDart *ADart, int ACellDim, int ABoundingCellDim=4)
 
bool isLocalDegreeTwoSup (CDart *ADart, int ACellDim)
 
bool isLocalDegreeTwoInf (CDart *ADart, int ACellDim)
 
int getSewDimension (CDart *ADart1, CDart *ADart2)
 
bool intuitiveSew (CDart *ADart1, CDart *ADart2)
 
int multiSew (CDart *ADart1, int AMarkNumber1, CDart *ADart2, int ADimension)
 
int unsewMarkedCells (int AMarkNumber, int ADim)
 
int intuitiveUnsewMarkedCells (int AMarkNumber)
 
int getBorderDimension (CDart *ADart)
 
bool markBorders (int AMarkNumber, int ADim)
 
bool markBorders (int AMarkNumber)
 
bool canSewBorders (CDart *ADart1, CDart *ADart2, int ADim, int An=0)
 
void borderTopoSew (CDart *ADart1, CDart *ADart2, int ADim, int An=0)
 
void borderSew (CDart *ADart1, CDart *ADart2, int ADim, int An=0)
 
bool intuitiveBorderSew (CDart *ADart1, CDart *ADart2, int An=0)
 
void border2TopoSew (CDart *ADart1, CDart *ADart2, int An=0)
 
void border2Sew (CDart *ADart1, CDart *ADart2, int An=0)
 
int stopUpMarkedBorders (int AMarkNumber, int ADim)
 
int intuitiveStopUpMarkedBorders (int AMarkNumber)
 
CDarttriangulate (CDart *ADart, int ADim)
 
int triangulateMarkedCells (int AMarkNumber, int ADim)
 
bool canQuadrangulateFace (CDart *ADart, bool AInsertVertices=true)
 
int quadrangulateMarkedFaces (int AMarkNumber, bool AInsertVertices=true)
 
virtual void shiftOneFictiveEdge (CDart *ADart, CDart *ADart2)
 
unsigned int shiftAllEdgesIncidentToVertex (CDart *ADart)
 
void shiftAllAdjacentFictiveEdges (CDart *ADart, int AMark)
 
void shiftAllFictiveEdges (CDart *ADart, int AMark)
 
void shiftAllFictiveEdgesAroundEdge (CDart *ADart, int AMark)
 
bool existFictiveEdgeIncidentTo (CDart *ADart, int AMark)
 
int findVertexType (CDart *ADart, CDart **AResDart, int AMark)
 
CDartfindIncidentEdgeNonLoop (CDart *ADart)
 
int markRealFace (CDart *ADart, int AMark, int AMark2)
 
int unmarkRealFace (CDart *ADart, int AMark, int AMark2)
 
virtual void shiftOneFictiveFace (CDart *ADart, int AFictiveFaceMark, int ADeleteMark)
 
virtual void shiftOneFictiveFaceAlongDanglingEdge (CDart *ADart, int AFictiveFaceMark, int ADeleteMark)
 
void shiftAllFictiveFaces (CDart *ADart, int AFictiveFaceMark, int ADeleteMark)
 
bool canShiftOneFictiveFace (CDart *ADart, int AFictiveFaceMark)
 
bool canShiftAllFictiveFaces (CDart *ADart, int AFictiveFaceMark)
 
int findEdgeType (CDart *ADart, CDart **AResDart, int AFictiveFaceMark)
 
unsigned int markOrbit (CDart *ADart, TOrbit AOrbit, int AMarkNumber)
 
void halfMarkOrbit (CDart *ADart, TOrbit AOrbit, int AMarkNumber)
 
void halfUnmarkOrbit (CDart *ADart, TOrbit AOrbit, int AMarkNumber)
 
void unmarkOrbit (CDart *ADart, TOrbit AOrbit, int AMarkNumber)
 
void unmarkAll (int AMarkNumber)
 
int markIncidentCells (TOrbit AOrbit, int AMarkNumberSrce, int AMarkNumberDest)
 
int markIncidentCells (TOrbit AOrbit, int AMarkNumber)
 
void halfMarkIncidentCells (TOrbit AOrbit, int AMarkNumberSrce, int AMarkNumberDest)
 
void halfMarkIncidentCells (TOrbit AOrbit, int AMarkNumber)
 
void markInterior (CDart *ADart, int ADimension, int AMarkBorder, int AMarkInterior=-1)
 
void markIntersection (int AMarkNumber1, int AMarkNumber2, TOrbit AOrbit1, TOrbit AOrbit2, int AMarkResult, bool AInitialMarkIncidentCells=false)
 
void markCopy (int AMarkNumberFrom, int AMarkNumberTo, CDart *ADart, TOrbit AOrbit)
 
void markCopy (int AMarkNumberFrom, int AMarkNumberTo)
 
void markAdd (int AMarkNumberFrom, int AMarkNumberTo)
 
void markAdd (int AMarkNumberFrom, int AMarkNumberTo, CDart *ADart, TOrbit AOrbit)
 
void markAnd (int AMarkNumberFrom, int AMarkNumberTo)
 
void markAnd (int AMarkNumberFrom, int AMarkNumberTo, CDart *ADart, TOrbit AOrbit)
 
void markSub (int AMarkNumberFrom, int AMarkNumberTo)
 
void markSub (int AMarkNumberFrom, int AMarkNumberTo, CDart *ADart, TOrbit AOrbit)
 
void markMove (int AMarkNumberFrom, int AMarkNumberTo)
 
void markMove (int AMarkNumberFrom, int AMarkNumberTo, CDart *ADart, TOrbit AOrbit)
 
bool isWholeCellMarked (CDart *ADart, TOrbit AOrbit, int AMarkNumber)
 
int getMarkedCells (TOrbit AOrbit, int AMarkNumber, CDart *ALastMarked=NULL, CDart **ADart1=NULL, CDart **ADart2=NULL, CDart **ADart3=NULL)
 
CDartgo (TMovement ADirection, CDart *ALastDart, TOrbit AOrbit, int AMarkNumber, bool ASelect=true)
 
CDartgoAsFarAsPossible (TMovement ADirection, CDart *ALastDart, TOrbit AOrbit, int AMarkNumber, bool ASelect=true)
 
int duplicateMarkedDarts (int AMarkNumber, CGMapGeneric *AMap=NULL, int ADirectInfoIndex=-1, bool ADuplicateEmbeddings=true, bool A0Sew=true, bool A1Sew=true, bool A2Sew=true, bool A3Sew=true)
 
CDartduplicateDarts (CDart *ADart, TOrbit AOrbit, CGMapGeneric *AMap=NULL, int ADirectInfoIndex=-1, bool ADuplicateEmbeddings=true)
 
int deleteMarkedDarts (int AMarkNumber)
 
int insertVertexOnMarkedEdges (int AMarkNumber)
 
virtual CDartinsertEdge (CDart *ADart1, CDart *ADart2)
 
int insertEdgeOnMarkedFaces (int AMarkNumber, bool ANoCrossedFace=false, bool ANoTwoEdgesFace=false)
 
bool canInsertFace (CDart *ADart, int AMarkNumber, bool ANoCrossedVolume=false, bool ANoTwoEdgesFace=false, bool ANoTwoFacesVolume=false)
 
virtual CDartinsertFace (CDart *ADart, int AMarkNumber, bool ANoCrossedVolume=false)
 
int insertFaceOnMarkedVolumes (int AMarkNumber, bool ANoCrossedVolume=false, bool ANoTwoEdgesFace=false, bool ANoTwoFacesVolume=false)
 
int getMergeDimension (CDart *ADart)
 
bool canMerge (CDart *ADart1, CDart *ADart2, int ADim)
 
void merge (CDart *ADart1, CDart *ADart2, int ADim, bool ADeleteDarts=false)
 
int isolateMarkedCells (int AMarkNumber, int ADim, bool ADeleteDarts=false)
 
int intuitiveIsolateMarkedCells (int AMarkNumber, bool ADeleteDarts=false)
 
int mergeMarkedCells (int AMarkNumber, int ADim, bool ADeleteDarts=false)
 
int intuitiveMergeMarkedCells (int AMarkNumber, bool ADeleteDarts=false)
 
bool canRemove (CDart *ADart, int ADim)
 
void remove (CDart *ADart, int ADim, bool ADeleteDarts=false)
 
int removeMarkedCells (int AMarkNumber, int ADim, bool ADeleteDarts=false)
 
int removeMarkedVerticesWithFictiveEdgeShifting (int AMarkNumber)
 
int removeMarkedEdgesWithoutDisconnectionForSurface (int AMarkNumber)
 
int removeMarkedEdgesWithoutDisconnection (int AMarkNumber)
 
int removeMarkedEdgesWithoutDisconnectionWithFaceShifting (int AMarkNumber)
 
int removeMarkedFacesButKeepBalls (int AMarkNumber)
 
bool canContract (CDart *ADart, int ADim)
 
void contract (CDart *ADart, int ADim, bool ADeleteDarts=false)
 
int contractMarkedCells (int AMarkNumber, int ADim, bool ADeleteDarts=false)
 
virtual int contractAndRemoveMarkedCells (int AMarkNumberC1, int AMarkNumberC2, int AMarkNumberC3, int AMarkNumberS0, int AMarkNumberS1, int AMarkNumberS2, bool ADeleteDarts=false)
 
int deleteFlatFaces ()
 
int deleteMarkedFlatFaces (int AMarkNumber)
 
int deleteFlatVolumes ()
 
int deleteMarkedFlatVolumes (int AMarkNumber)
 
int removeDanglingEdges ()
 
int removeMarkedDanglingEdges (int AMarkNumber)
 
bool canExtrudeHalfCell (CDart *ADart, int ADim, int AMarkToExtrude=-1)
 
bool canExtrudeCell (CDart *ADart, int ADim)
 
int getExtrusionDimension (CDart *ADart)
 
CDarttopoExtrude (CDart *ADart, int ADim, bool AExtrusionWithAdjacentSews, int AMarkExtruded=-1, int ADirectInfoIndex=-1)
 
int extrudeByNormalMarkedCells (int AMarkNumber, int ADim, bool AExtrusionWithAdjacentSews, TCoordinate AExtrusionCoef)
 
int intuitiveExtrudeByNormalMarkedCells (int AMarkNumber, bool AExtrusionWithAdjacentSews, TCoordinate AExtrusionCoef)
 
bool canExtrudeByPath (CDart *ADart, int ADim, CDart *APath)
 
virtual CDartextrudeByPath (CDart *ADart, int ADim, CDart *APath, bool AExtrusionWithAdjacentSews, int AMarkExtruded=-1, int ADirectInfoIndex=-1)
 
virtual int extrudeByPathMarkedCells (int AMarkNumber, int ADim, CDart *APath, bool AExtrusionWithAdjacentSews)
 
bool canExtrudeByRevolution (CDart *ADart, int ADim, bool AClosed)
 
virtual CDartcreateRevolutionPath (bool AClosed, int ANbEdges)
 
void destroyRevolutionPath (CDart *ADart)
 
virtual CDartextrudeByRevolution (CDart *ADart, int ADim, bool AClosed, int ANbEdges, bool AExtrusionWithAdjacentSews, int AMarkExtruded=-1, int ADirectInfoIndex=-1)
 
virtual int extrudeByRevolutionMarkedCells (int AMarkNumber, int ADim, bool AClosed, int ANbEdges, bool AExtrusionWithAdjacentSews)
 
virtual int thickenMarkedDarts (int AMarkNumber, int ADirectInfoIndex1, int ADirectInfoIndex2)
 
- Public Member Functions inherited from GMap3d::CGMap
bool canSew (CDart *ADart1, CDart *ADart2, int ADimension)
 
void sew (CDart *ADart1, CDart *ADart2, int ADimension)
 
void unsew (CDart *ADart, int ADimension)
 
 CGMap ()
 Constructeur.
 
virtual ~CGMap ()
 Destructeur.
 
bool canSew0 (CDart *ADart1, CDart *ADart2)
 
bool canSew1 (CDart *ADart1, CDart *ADart2)
 
bool canSew2 (CDart *ADart1, CDart *ADart2)
 
bool canSew3 (CDart *ADart1, CDart *ADart2)
 
void sew0 (CDart *ADart1, CDart *ADart2)
 
void sew1 (CDart *ADart1, CDart *ADart2)
 
void sew2 (CDart *ADart1, CDart *ADart2)
 
void sew3 (CDart *ADart1, CDart *ADart2)
 
void unsew0 (CDart *ADart)
 
void unsew1 (CDart *ADart)
 
void unsew2 (CDart *ADart)
 
void unsew3 (CDart *ADart)
 
CCoveragegetDynamicCoverage (const CDart *ADart, TOrbit AOrbit)
 
CCoveragegetStaticCoverage (const CDart *ADart, TOrbit AOrbit)
 
CCoveragegetMultiDynamicCoverage (const CDart *ADart, TOrbit AOrbit)
 
CCoveragegetBasicDynamicCoverage (const CDart *ADart, TOrbit AOrbit, int AMarkNumber)
 
CAttributegetAttribute (const CDart *ADart, TOrbit, TAttributeId)
 
void addAttribute (CDart *ADart, TOrbit, CAttribute *)
 
CAttributeremoveAttribute (CDart *ADart, TOrbit, TAttributeId)
 
void deleteAttribute (CDart *ADart, TOrbit, TAttributeId)
 
bool isSameOrbit (CDart *ADart1, CDart *ADart2, TOrbit AOrbit)
 
CDartgetEmbeddingOwner (const CDart *ADart, TOrbit AOrbit)
 
void dartSew0 (CDart *, CDart *ADart2)
 
void dartSew1 (CDart *, CDart *ADart2)
 
void dartSew2 (CDart *, CDart *ADart2)
 
void dartSew3 (CDart *, CDart *ADart2)
 
void dartSew (CDart *, CDart *ADart2, int ADimension)
 
void dartUnsew0 (CDart *ADart)
 
void dartUnsew1 (CDart *ADart)
 
void dartUnsew2 (CDart *ADart)
 
void dartUnsew3 (CDart *ADart)
 
void dartUnsew (CDart *ADart, int ADimension)
 
void topoSew0 (CDart *ADart1, CDart *ADart2)
 
void topoSew1 (CDart *ADart1, CDart *ADart2)
 
void topoSew2 (CDart *ADart1, CDart *ADart2)
 
void topoSew3 (CDart *ADart1, CDart *ADart2)
 
void topoSew (CDart *ADart1, CDart *ADart2, int ADimension)
 
void topoUnsew0 (CDart *ADart)
 
void topoUnsew1 (CDart *ADart)
 
void topoUnsew2 (CDart *ADart)
 
void topoUnsew3 (CDart *ADart)
 
void topoUnsew (CDart *ADart, int ADimension)
 
- Public Member Functions inherited from GMap3d::CGMapBasic
bool isFree (const CDart *ADart, int ADimension) const
 
CDartalpha (const CDart *ADart, int ADimension) const
 
void linkAlpha (CDart *ADart1, CDart *ADart2, int ADimension)
 
void unlinkAlpha (CDart *ADart, int ADimension)
 
 CGMapBasic ()
 Constructeur.
 
virtual ~CGMapBasic ()
 Destructeur.
 
void randomizeDarts ()
 
void removeAllDarts ()
 
int getNewDirectInfo ()
 
void freeDirectInfo (int ADirectIndex)
 
void * getDirectInfo (CDart *ADart, int ADirectIndex) const
 
void setDirectInfo (CDart *ADart, int ADirectIndex, void *APointer)
 
CDartgetFirstDart () const
 
void setFirstDart (CDart *ADart)
 
int getNewMark ()
 
bool getMaskMark (int AMarkNumber) const
 
void freeMark (int AMarkNumber)
 
void negateMaskMark (int AMarkNumber)
 
bool isWholeMapUnmarked (int AMarkNumber)
 
int getNbUsedMarks () const
 
bool isMarked (const CDart *ADart, int AMarkNumber) const
 
void setMarkTo (CDart *ADart, int AMarkNumber, bool AState)
 
void setMark (CDart *ADart, int AMarkNumber)
 
void unsetMark (CDart *ADart, int AMarkNumber)
 
void setMarks (CDart *ADart, const std::bitset< NB_MARKS > &AMarks) const
 
std::bitset< NB_MARKSgetMarks (CDart *ADart) const
 
bool isOrbitUsed (TOrbit AOrbit) const
 
void setOrbitUsed (TOrbit AOrbit)
 
void unsetOrbitUsed (TOrbit AOrbit)
 
bool isOrbitUsed (CDart *ADart, TOrbit AOrbit) const
 
CDartaddMapDart ()
 
void delMapDart (CDart *ADart)
 
bool isFree0 (const CDart *ADart) const
 
bool isFree1 (const CDart *ADart) const
 
bool isFree2 (const CDart *ADart) const
 
bool isFree3 (const CDart *ADart) const
 
CDartalpha0 (const CDart *ADart) const
 
CDartalpha1 (const CDart *ADart) const
 
CDartalpha2 (const CDart *ADart) const
 
CDartalpha3 (const CDart *ADart) const
 
void linkAlpha0 (CDart *ADart1, CDart *ADart2)
 
void linkAlpha1 (CDart *ADart1, CDart *ADart2)
 
void linkAlpha2 (CDart *ADart1, CDart *ADart2)
 
void linkAlpha3 (CDart *ADart1, CDart *ADart2)
 
void unlinkAlpha0 (CDart *ADart)
 
void unlinkAlpha1 (CDart *ADart)
 
void unlinkAlpha2 (CDart *ADart)
 
void unlinkAlpha3 (CDart *ADart)
 
enum  TEmbedMethod { GMV_NO = 0, GMV_YES, GMV_CHECK }
 
void diveMesh1 (CDart *AFirstDart, CMesh1Diver &ADiver, TEmbedMethod ADiveBorders=GMV_YES, int AMeshDimension=1)
 
void diveMesh2 (CDart *AFirstDart, CMesh2Diver &ADiver, TEmbedMethod ADiveBorders=GMV_YES, int AMeshDimension=2)
 
void diveMesh3 (CDart *AFirstDart, CMesh3Diver &ADiver, TEmbedMethod ADiveBorders=GMV_YES)
 
void createMesh1 (int ASx, CDart *AMesh1Corners[2], CMesh1Diver &ADiver)
 
CDartcreateMesh1 (int ASx, CMesh1Diver &ADiver)
 
CDartcreateMesh1 (int ASx)
 
void createMesh2 (int ASx, int ASy, CDart *AFaceCorners[2][2], CMesh2Diver &ADiver)
 
CDartcreateMesh2 (int ASx, int ASy, CMesh2Diver &ADiver)
 
CDartcreateMesh2 (int ASx, int ASy)
 
void createMesh3 (int ASx, int ASy, int ASz, CDart *AMesh3Corners[2][2][2], CMesh3Diver &ADiver)
 
CDartcreateMesh3 (int ASx, int ASy, int ASz, CMesh3Diver &ADiver)
 
CDartcreateMesh3 (int ASx, int ASy, int ASz)
 
CVertex basicBarycenter (CDart *ADart, TOrbit AOrbit, int AOrbitMark, int ATreatedMark, int ADirectInfoVertex=-1)
 
CVertex barycenter (CDart *ADart, TOrbit AOrbit, int ADirectInfoVertex=-1)
 
CVertex barycenter (int AMarkNumber)
 
CVertex directInfoBarycenter (int ADirectInfoVertex)
 
void boundingBox (int AMarkNumber, CVertex &AMin, CVertex &AMax)
 
CVertex centerOfBoundingBox (int AMarkNumber)
 
void boundingBox (CDart *ADart, TOrbit AOrbit, CVertex &AMin, CVertex &AMax)
 
CVertex centerOfBoundingBox (CDart *ADart, TOrbit AOrbit)
 
TCoordinate edgeLength (CDart *ADart)
 
TCoordinate facePerimeter (CDart *ADart)
 
TCoordinate border1Length (CDart *ADart)
 
TCoordinate border2Length (CDart *ADart)
 
CVertex edgeVector (CDart *ADart)
 
CVertex edgeNormalVector (CDart *ADart)
 
CVertex faceNormalVector (CDart *ADart)
 
CVertex cellNormalVector (int ADim, CDart *ADart)
 
CVertex border2NormalVector (CDart *ADart)
 
CVertex regionNormalVector (CDart *ADart, int ADim)
 
CVertex regionNormalVector (CDart *ADart, int ADim, int AMarkNumber)
 
CVertex cellDimensionNormalVector (CDart *ADart, int ADim)
 
TCoordinate orbitLength (CDart *ADart, TOrbit AOrbit)
 
CVertex orbitNormalVector (CDart *ADart, TOrbit AOrbit)
 
void giveNumberToDarts (int ADirectInfoIndex)
 
bool save (const char *AFilename, TSaveFormat AFormat=AsciiFormat)
 
virtual bool save (std::ostream &AStream, TSaveFormat AFormat=AsciiFormat)
 
CDartload (const char *AFilename, TSaveFormat AFormat)
 
virtual CDartload (std::istream &AStream, TSaveFormat AFormat)
 
CDartload (const char *AFilename)
 
static TSaveFormat getFileFormat (const char *AFilename)
 
static const char * getFileHeader (TSaveFormat AFormat)
 
void setBurstMethod (TBurstMethod AMethod)
 Sélection de la méthode de calcul des sommets éclatés :
 
TBurstMethod getBurstMethod () const
 
void updateAllBurstDarts ()
 Met à jour le plongement éclaté de tous les brins de la carte.
 
void updateMarkedBurstDarts (int AMarkNumber, bool AUpdateIncidentVolumes=true)
 
void updateMarkedDartsMethodScale (int AMarkNumber, bool AUpdateIncidentVolumes)
 
void updateMarkedDartsMethodShift (int AMarkNumber, bool AUpdateIncidentVolumes)
 
CDartextrudeByNormal (CDart *ADart, int ADim, bool AExtrusionWithAdjacentSews, TCoordinate AExtrusionCoef, int AMarkToExtrude=-1, int AMarkExtruded=-1)
 
CDartextrudeByPath (CDart *ADart, int ADim, CDart *APath, bool AExtrusionWithAdjacentSews, bool ARotateExtrudedCells, bool AScaleExtrudedCells, CDart *APonderationPath=NULL, int AMarkExtruded=-1, int ADirectInfoIndex=-1)
 
int extrudeByPathMarkedCells (int AMarkNumber, int ADim, CDart *APath, bool AExtrusionWithAdjacentSews, int AInitialTranslateExtrudedCells, int AInitialRotateExtrudedCells, bool ARotateExtrudedCells, bool AScaleExtrudedCells, CDart *APonderationPath=NULL)
 
CDartcreateRevolutionPath (const CVertex &AAxeVertex, const CVertex &AAxeDirection, const CVertex &AFirstVertex, TCoordinate AAngle, int ANbEdges)
 
CDartextrudeByRevolution (CDart *ADart, int ADim, const CVertex &AAxeVertex, const CVertex &AAxeDirection, const CVertex &AFirstVertex, TCoordinate AAngle, int ANbEdges, bool AExtrusionWithAdjacentSews, bool ARotateExtrudedCells, bool AScaleExtrudedCells, CDart *APonderationPath=NULL, int AMarkExtruded=-1, int ADirectInfoIndex=-1)
 
int extrudeByRevolutionMarkedCells (int AMarkNumber, int ADim, const CVertex &AAxeVertex, const CVertex &AAxeDirection, TCoordinate AAngle, int ANbEdges, bool AExtrusionWithAdjacentSews, int AInitialTranslateExtrudedCells, int AInitialRotateExtrudedCells, bool ARotateExtrudedCells, bool AScaleExtrudedCells, CDart *APonderationPath=NULL)
 
void markCellsToBeExtrudedByNormal (int ADim, int AMarkNumberSrce, int AMarkNumberDest)
 

Additional Inherited Members

- Public Types inherited from GMap3d::CGMapGeneric
enum  TMovement { Forward, Backward, Left, Right }
 
- Protected Member Functions inherited from GMap3d::CGMapGeneric
void sewDuplicatedDarts (CCoverage *ACoverage, int AMarkNumber, int ADirectInfoIndex, CGMapGeneric *AMap, bool A0Sew=true, bool A1Sew=true, bool A2Sew=true, bool A3Sew=true)
 
void duplicateEmbeddingsOfDuplicatedDarts (CCoverage *ACoverage, int AMarkInitial, int AMarkDuplicated, int ADirectInfoIndex, CGMapGeneric *AMap)
 
bool turnAroundVertex (CDart *ADart, bool ANoCrossedVolume, int AMarkNumber, CDart *&ANext, bool &ACrossed)
 
int isolateMarkedCells (int AMarkNumber, int ADim, bool ADeleteDarts, bool AVerif, int AMarkTreated=-1)
 
void markCellsToBeIsolated (int AMarkSource, int ADim, int AMarkDestination, int AMarkTreated=-1)
 
int extrudeByNormalMarkedCells (int AMarkNumber, int ADim, int AMarkTreated, bool AExtrusionWithAdjacentSews, TCoordinate AExtrusionCoef)
 
- Protected Member Functions inherited from GMap3d::CGMapBasic
void addDartInList (CDart *ADart)
 
void removeDartInList (CDart *ADart)
 
- Protected Attributes inherited from GMap3d::CGMapBasic
CDartFFirstDart
 Premier brin de la liste des brins de la carte.
 
std::bitset< NB_MARKSFUsedMarks
 Tableau indiquant quelles sont les marques prises.
 
std::bitset< NB_MARKSFMaskMarks
 Masque des marques (modifié par la méthode negateMaskMark())
 
int FMarks [NB_MARKS]
 Liste des marques libres.
 
std::bitset< 16 > FUsedOrbits
 Tableau indiquant quelles sont les orbites utilisées.
 
std::bitset< NB_DIRECT_INFOFUsedDirectInfo
 Tableau indiquant quels sont les champs direct-info utilisés.
 
int FDirectInfos [NB_DIRECT_INFO]
 Liste des champs directInfo libres.
 

Detailed Description

Définit la classe CGMapVertex (carte plongée sommets).

Author
MOKA TEAM

Definition at line 63 of file g-map-vertex.hh.

Member Enumeration Documentation

Enumerator:
GMV_NO 
GMV_YES 
GMV_CHECK 

Definition at line 32 of file g-map-vertex.hh.

Constructor & Destructor Documentation

CGMapVertex::CGMapVertex ( )

Constructeur par défaut Construction d'une nouvelle instance de la classe. La g-carte créée est vide.

Returns
Une nouvelle instance de la classe

Definition at line 28 of file gmv-instance.cc.

CGMapVertex::~CGMapVertex ( )
virtual

Destructeur Tous les brins de la carte ainsi que leurs plongements sont détruits.

Definition at line 40 of file gmv-instance.cc.

Member Function Documentation

CDart * CGMapVertex::addEdgeOFF ( std::vector< CVertex > &  AInitVertices,
unsigned long int  AV1,
unsigned long int  AV2,
int  AIndex,
CDart APrec 
)

Sous fonction utile pour ajouter une arête entre les sommets numéros AV1 et AV2. AInitVertices contient les sommets de départ AIndex est le numéro du direct info permettant d'étiquetter les brins par leur sommet incident, et APrec est le brin précédent de la face en cours de construction.

Definition at line 251 of file gmv-off.cc.

INLINE CDart * GMap3d::CGMapVertex::addMapDart ( )

Crée une nouvelle instance de CDartVertex. Le brin créé n'est pas plongé.

Returns
Un nouveau brin, de type CDartVertex

Definition at line 53 of file gmv-inline.icc.

INLINE CDartVertex * GMap3d::CGMapVertex::addMapDart ( const CVertex AVertex)

Crée une nouvelle instance de CDartVertex, dont le plongement est donné par AVertex.

Parameters
AVertexUn sommet
Returns
Un nouveau brin de type CDartVertex

Definition at line 59 of file gmv-inline.icc.

void CGMapVertex::allocCoordToDirectInfo ( int  AMarkNumber,
int  ADirectInfoIndex,
TOrbit  AOrbitUsed = ORBIT_NONE 
)

Alloue et si nécessaire initialise (dans le cas où la librairie GMP est utilisée) l'espace mémoire nécessaire pour stocker une valeur de type TCoordinate, ceci pour le champ directInfo[ADirectInfoIndex] des brins marqués avec la marque AMarkNumber.

Si AOrbitUsed est différent de ORBIT_NONE, l'allocation n'est faite que pour le brin porteur du plongement AOrbitUsed de chaque cellule d'orbite AOrbitUsed dont un brin au moins est marqué.

Parameters
AMarkNumberUn numéro de marque
ADirectInfoIndexL'indice du champ directInfo à utiliser
AOrbitUsedUne orbite quelconque

Definition at line 28 of file gmv-direct-info.cc.

void CGMapVertex::allocCoordToDirectInfo ( CDart ADart,
TOrbit  AOrbit,
int  ADirectInfoIndex,
TOrbit  AOrbitUsed = ORBIT_NONE 
)

Alloue et si nécessaire initialise (dans le cas où la librairie GMP est utilisée) l'espace mémoire nécessaire pour stocker une valeur de type TCoordinate, ceci pour le champ directInfo[ADirectInfoIndex] des brins correspondant à l'orbite donnée par le couple (ADart, AOrbit).

Si AOrbitUsed est différent de ORBIT_NONE, l'allocation n'est faite que pour le brin porteur du plongement AOrbitUsed de chaque cellule d'orbite AOrbitUsed dont un brin au moins est sur l'orbite (ADart, AOrbit).

Parameters
ADartUn brin quelconque de la carte
AOrbitUne orbite
ADirectInfoIndexL'indice du champ directInfo à utiliser
AOrbitUsedUne orbite quelconque

Definition at line 64 of file gmv-direct-info.cc.

void CGMapVertex::applyFunctionOnParameter ( int  AMarkNumber,
int  ADirectInfoIndex,
TFunctionType  AFunctionType 
)

Applique une fonction sur les valeurs (de type TCoordinate) pointées par le champ directInfo[ADirectInfoIndex] des brins porteurs d'un attribut sommet. Les sommets pris en compte sont ceux dont un brin au moins est marqué avec la marque AMarkNumber. Les différents types de fonctions sont répertoriés dans le fichier "math-extension.hh".

Parameters
AMarkNumberUn numéro de marque indiquant les sommets sélectionnés
ADirectInfoIndexUn indice indiquant où sont stockées les valeurs
AFunctionTypeLe type de fonction à appliquer

Definition at line 253 of file gmv-deformation.cc.

void CGMapVertex::applyMatrix ( const CTransformationMatrix AMatrix,
CDart ADart,
TOrbit  AOrbit,
int  ADirectInfoVertex = -1 
)

Applique la matrice à tous les sommets appartenant à l'orbite AOrbit incidente au brin ADart. Un sommet est modifié si au moins un brin de son orbite sommet appartient à l'orbite AOrbit incidente à ADart. Si ADirectInfoVertex est positif ou nul, la matrice de transformation est appliquée sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, la matrice de transformation modifie directement l'attribut sommet.

Parameters
AMatrixUne matrice de transformation
ADartUn brin de la carte
AOrbitUne orbite quelconque
ADirectInfoVertexIndique où récupérer les coordonnées initiales

Definition at line 29 of file gmv-deformation.cc.

void CGMapVertex::applyMatrix ( const CTransformationMatrix AMatrix,
int  AMarkNumber,
int  ADirectInfoVertex = -1 
)

Applique la matrice à tous les sommets marqués avec la marque AMarkNumber. Un sommet est modifié si au moins un brin de son orbite sommet est marqué. Si ADirectInfoVertex est positif ou nul, la matrice de transformation est appliquée sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, la matrice de transformation modifie directement l'attribut sommet.

Parameters
AMatrixUne matrice de transformation
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer la transformation
ADirectInfoVertexIndique où récupérer les coordonnées initiales

Definition at line 43 of file gmv-deformation.cc.

void CGMapVertex::axialScale ( int  AMarkNumber,
const CVertex AAxeVertex,
const CVertex AAxeDirection,
TCoordinate  ACoef,
int  ADirectInfoVertex = -1,
int  ADirectInfoParam = -1 
)

Applique une homothétie de coefficient ACoef selon l'axe déterminé par le sommet AAxeVertex et le vecteur AAxeDirection sur tous les sommets marqués avec la marque AMarkNumber.

Si ADirectInfoVertex est positif ou nul, l'homothétie est appliquée sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, l'attribut sommet est directement modifié.

Si ADirectInfoParam est positif ou nul, l'étirement est pondéré avec la valeur stockée dans le champ directInfo[ADirectInfoParam].

Parameters
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer l'homothétie
AAxeVertexUn sommet de l'axe d'homothétie
AAxeDirectionUn vecteur direction de l'axe d'homothétie
ACoefLe coefficient d'homothétie
ADirectInfoVertexIndique où récupérer les coordonnées initiales
ADirectInfoParamIndique où récupérer le paramètre de pondération

!AAxeDirection.isNull()

Definition at line 455 of file gmv-deformation.cc.

CVertex CGMapVertex::barycenter ( CDart ADart,
TOrbit  AOrbit,
int  ADirectInfoVertex = -1 
)

Calcule le barycentre d'un ensemble de sommets déterminé par un brin ADart et une orbite AOrbit.

Si ADirectInfoVertex est positif ou nul, le plongement des sommets n'est pas recherché à l'aide de la méthode 'findVertex' mais est accédé directement à l'aide du champ directInfo[ADirectInfoVertex].

Parameters
ADartUn brin de la carte
AOrbitUne orbite quelconque
ADirectInfoVertexUn indice correspondant à un champ directInfo

Definition at line 64 of file gmv-geometry.cc.

CVertex CGMapVertex::barycenter ( int  AMarkNumber)

Calcule le barycentre d'un ensemble de sommets marqués avec la marque AMarkNumber.

Parameters
AMarkNumberUn numéro de marque

Definition at line 118 of file gmv-geometry.cc.

CVertex CGMapVertex::basicBarycenter ( CDart ADart,
TOrbit  AOrbit,
int  AOrbitMark,
int  ATreatedMark,
int  ADirectInfoVertex = -1 
)

Calcule le barycentre d'un ensemble de sommets déterminé par un brin ADart et une orbite AOrbit. Les brins marqués ne sont pas démarqués à la fin du parcours.

La méthode utilise un itérateur qui marque les brins avec les marques ATreatedMark et AOrbitMark et qui n'effectue pas de démarquage à la fin.

Si ADirectInfoVertex est positif ou nul, le plongement des sommets n'est pas recherché à l'aide de la méthode 'findVertex' mais est accédé directement à l'aide du champ directInfo[ADirectInfoVertex].

Parameters
ADartUn brin de la carte
AOrbitUne orbite quelconque
AOrbitMarkLe numéro de marque utilisé par l'itérateur pour le marquage des brins atteints
ATreatedMarkLe numéro de marque utilisé pour le marquage des brins déjà traités
ADirectInfoVertexUn indice correspondant à un champ directInfo

AOrbit==ORBIT012 || AOrbit==ORBIT123 || AOrbit==ORBIT0123

Definition at line 29 of file gmv-geometry.cc.

TCoordinate CGMapVertex::border1Length ( CDart ADart)

Calcule la longueur d'un 1-bord, c'est-à-dire la longueur de l'arête qui permettrait de boucher ce 1-bord.

Parameters
ADartUn brin de la carte
Returns
La longueur du 1-bord incident à ADart

Definition at line 337 of file gmv-geometry.cc.

TCoordinate CGMapVertex::border2Length ( CDart ADart)

Calcule la longueur d'une 2-bord, c'est-à-dire la somme de la longueur de toutes les arêtes qui le constituent.

Parameters
ADartUn brin de la carte
Returns
La longueur du 2-bord incident à ADart

Definition at line 343 of file gmv-geometry.cc.

CVertex CGMapVertex::border2NormalVector ( CDart ADart)

Calcule le vecteur normal d'un 2-bord. Ce vecteur n'est jamais nul. Le 2-bord n'est pas forcément plan. Il peut être ouvert. Il peut comporter moins de 3 sommets (le résultat est alors OZ).

Parameters
ADartUn brin de la carte
Returns
Le vecteur normal du 2-bord incident à ADart

Definition at line 503 of file gmv-geometry.cc.

void CGMapVertex::borderPlate ( CDart ADart1,
CDart ADart2,
int  ADim,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Effectue un placage des bords de dimension ADim incidents aux brins ADart1 et ADart2. Tout comme pour la méthode 'plate', c'est le bord incident à ADart1 qui est déplacé vers le bord incident à ADart2.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADimUne dimension
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position

Definition at line 133 of file gmv-plating.cc.

void CGMapVertex::boundingBox ( int  AMarkNumber,
CVertex AMin,
CVertex AMax 
)

Calcule la boîte englobante d'un ensemble de sommets dont un brin au moins est marqué avec la marque AMarkNumber.

Parameters
AMarkNumberUn numéro de marque
AMinLe point minimum de la boîte englobante
AMaxLe point maximum de la boîte englobante

Definition at line 161 of file gmv-geometry.cc.

void CGMapVertex::boundingBox ( CDart ADart,
TOrbit  AOrbit,
CVertex AMin,
CVertex AMax 
)

Calcule la boîte englobante d'un ensemble de sommets situés sur l'orbite (ADart, AOrbit).

Parameters
ADartUn brin de la carte
AOrbitUne orbite quelconque
AMinLe point minimum de la boîte englobante
AMaxLe point maximum de la boîte englobante

Definition at line 211 of file gmv-geometry.cc.

bool CGMapVertex::canPlate ( CDart ADart1,
CDart ADart2 
)

Teste si les deux cellules incidentes aux brins passés en paramètres peuvent être plaquées (c'est le cas si elles ne sont pas dans la même composante connexe).

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
Unbooléen indiquant si les deux cellules incidentes aux brins donnés peuvent être plaquées

Definition at line 28 of file gmv-plating.cc.

CVertex CGMapVertex::cellDimensionNormalVector ( CDart ADart,
int  ADim 
)

Calcule la moyenne des vecteurs normaux des faces de la cellule de dimension ADim incidente à ADart. Si la cellule n'est pas orientable, le vecteur retourné est nul.

Parameters
ADartUn brin de la carte
ADimUne dimension (3 ou 4)
Returns
Un vecteur (éventuellement nul)

Definition at line 610 of file gmv-geometry.cc.

CVertex CGMapVertex::cellNormalVector ( int  ADim,
CDart ADart 
)

Calcule le vecteur normal d'une cellule en s'appuyant sur les méthodes 'edgeNormalVector' et 'faceNormalVector'.

Parameters
ADimLa dimension de la cellule (0, 1 ou 2)
ADartUn brin incident à la cellule
Returns
Le vecteur normal de la cellule

Definition at line 490 of file gmv-geometry.cc.

CVertex CGMapVertex::centerOfBoundingBox ( int  AMarkNumber)

Calcule la boîte englobante d'un ensemble de sommets dont un brin au moins est marqué avec la marque AMarkNumber puis retourne le centre de cette boîte englobante.

Parameters
AMarkNumberUn numéro de marque
Returns
Le centre de la boîte englobante

Definition at line 202 of file gmv-geometry.cc.

CVertex CGMapVertex::centerOfBoundingBox ( CDart ADart,
TOrbit  AOrbit 
)

Calcule la boîte englobante d'un ensemble de sommets situés sur l'orbite (ADart, AOrbit) puis retourne le centre de cette boîte englobante.

Parameters
ADartUn brin de la carte
AOrbitUne orbite quelconque
Returns
Le centre de la boîte englobante

Definition at line 251 of file gmv-geometry.cc.

INLINE CVertex GMap3d::CGMapVertex::computeBurstExtremity ( CDart ADart) const

Retourne le plongement éclaté de la deuxième extrémité du brin ADart donné.

Parameters
ADartUn brin de la carte
Returns
Le plongement éclaté de l'extrémité du brin ADart donné

Definition at line 166 of file gmv-inline.icc.

void CGMapVertex::computeDistanceToLine ( int  AMarkNumber,
int  ADirectInfoIndex,
const CVertex ALineVertex,
const CVertex ALineDirection 
)

Pour chaque sommet dont un brin au moins est marqué avec la marque AMarkNumber, calcule la distance euclidienne entre le plongement de ce sommet et la droite donnée par le sommet ALineVertex et le vecteur directeur ALineDirection puis place le résultat dans le champ directInfo[ADirectInfoIndex] du brin possédant le plongement sommet.

Avant d'appeler cette méthode, il convient de réserver de la mémoire pour stocker les résultats. Cette réservation se fait avec la méthode 'CGMapGeneric::allocMemoryToDirectInfo' avec ABytes = sizeof(TCoordinate) et AOrbitUsed = ORBIT_VERTEX.

Parameters
AMarkNumberUn numéro de marque
ADirectInfoIndexUn indice indiquant quel directInfo utiliser
ALineVertexUn sommet quelconque de la droite
ALineDirectionUn vecteur directeur de la droite

! ALineDirection.isNull()

Definition at line 110 of file gmv-deformation.cc.

void CGMapVertex::computeDistanceToPlane ( int  AMarkNumber,
int  ADirectInfoIndex,
const CVertex APlaneVertex,
const CVertex APlaneNormal 
)

Pour chaque sommet dont un brin au moins est marqué avec la marque AMarkNumber, calcule la distance euclidienne entre le plongement de ce sommet et le plan donné par le sommet APlaneVertex et le vecteur normal APlaneNormal puis place le résultat dans le champ directInfo[ADirectInfoIndex] du brin possédant le plongement sommet.

Avant d'appeler cette méthode, il convient de réserver de la mémoire pour stocker les résultats. Cette réservation se fait avec la méthode 'CGMapGeneric::allocMemoryToDirectInfo' avec ABytes = sizeof(TCoordinate) et AOrbitUsed = ORBIT_VERTEX.

Parameters
AMarkNumberUn numéro de marque
ADirectInfoIndexUn indice indiquant quel directInfo utiliser
APlaneVertexUn sommet quelconque du plan
APlaneNormalUn vecteur normal du plan

! APlaneNormal.isNull()

Definition at line 145 of file gmv-deformation.cc.

void CGMapVertex::computeDistanceToVertex ( int  AMarkNumber,
int  ADirectInfoIndex,
const CVertex AVertex 
)

Pour chaque sommet dont un brin au moins est marqué avec la marque AMarkNumber, calcule la distance euclidienne entre le plongement de ce sommet et le sommet AVertex puis place le résultat dans le champ directInfo[ADirectInfoIndex] du brin possédant le plongement sommet.

Avant d'appeler cette méthode, il convient de réserver de la mémoire pour stocker les résultats. Cette réservation se fait avec la méthode 'CGMapGeneric::allocMemoryToDirectInfo' avec ABytes = sizeof(TCoordinate) et AOrbitUsed = ORBIT_VERTEX.

Parameters
AMarkNumberUn numéro de marque
ADirectInfoIndexUn indice indiquant quel directInfo utiliser
AVertexUn sommet quelconque de l'espace

Definition at line 80 of file gmv-deformation.cc.

void CGMapVertex::computeRegressionLine ( int  AMarkNumber,
CVertex ABarycenter,
CVertex ADirection 
)

Calcule la droite de régression correspondant aux sommets dont un brin au moins est marqué avec la marque AMarkNumber. Cette droite est décrite par un sommet lui appartenant et un vecteur directeur.

Parameters
AMarkNumberUn numéro de marque
ABarycenterUn sommet de la droite
ADirectionUn vecteur directeur de la droite

Definition at line 28 of file gmv-regression.cc.

void CGMapVertex::computeRegressionPlane ( int  AMarkNumber,
TCoordinate AA,
TCoordinate AB,
TCoordinate AC,
TCoordinate AD 
)

Calcule le plan de régression correspondant aux sommets dont un brin au moins est marqué avec la marque AMarkNumber. Ce plan alpha pour équation cartésienne alpha*x + b*y + c*z + d = 0. Les paramètres alpha, b, c et d sont placés dans les paramètres A?.

Parameters
AMarkNumberUn numéro de marque
A?Des pointeurs sur les paramètres de l'équation du plan

Definition at line 86 of file gmv-regression.cc.

unsigned int CGMapVertex::countNumberOfMotifs ( CGMapVertex AMap,
unsigned int *  ANbMatched = NULL 
)

Compte le nombre de fois que la carte *this est motif de la carte AMap.

Parameters
AMapla carte dans laquelle on va chercher le motif.
ANbMatchedun pointeur vers un entier. Si non nul, paramètre retour qui va contenir le nombre de brins maximum matché.
Returns
le nombre de motifs trouvés.

Definition at line 106 of file gmv-isomorphisme.cc.

void CGMapVertex::createCubeIMeshed ( int  ASx,
int  ASy,
int  ASz,
int  AMeshDimension,
bool  ACreatedFaces[3][2],
CDart AFacesCorners[3][2][2][2] 
)

Appelle la méthode 'CGMapGeneric::createCubeIMeshed' puis plonge le cube créé. Le cube obtenu est centré sur l'origine et son côté vaut 1.

Parameters
ASxLe nombre de subdivisions selon la première dimension
ASyLe nombre de subdivisions selon la deuxième dimension
ASzLe nombre de subdivisions selon la troisième dimension
AMeshDimensionLa dimension du maillage (0, 1 ou 2)
ACreatedFacesUn tableau de dimension 3*2 de booléens
AFacesCornersUn tableau de dimension 3*2*2*2 de pointeurs sur brin

Definition at line 336 of file gmv-primitive.cc.

void CGMapVertex::createCubeIMeshed ( int  ASx,
int  ASy,
int  ASz,
int  AMeshDimension,
bool  ACreatedFaces[3][2],
CDart **  ADart1,
CDart **  ADart2 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createCubeIMeshed' ci-dessus et retourne un brin du cube.

ATTENTION: Selon les valeurs de AFace–, l'objet créé peut ne pas être connexe !

Si l'objet créé est connexe, ADart1 est positionné sur un de ses brins et la valeur NULL est affectée à ADart2. Si l'objet créé n'est pas connexe, ADart1 est positionné sur un brin de la première composante et ADart2 sur un brin de la deuxième composante.

Parameters
ASxLe nombre de subdivisions selon la première dimension
ASyLe nombre de subdivisions selon la deuxième dimension
ASzLe nombre de subdivisions selon la troisième dimension
AMeshDimensionLa dimension du maillage (0, 1 ou 2)
ACreatedFacesUn tableau de dimension 3*2 de booléens
ADart1Un brin du cube
ADart2Un brin du cube

Definition at line 420 of file gmv-primitive.cc.

void CGMapVertex::createCylinder ( int  AMeridians,
int  AParallels,
CDart **  ABorder1,
CDart **  ABorder2,
bool  AClose1 = true,
bool  AClose2 = true 
)

Appelle la méthode CGMapGeneric::createTopoCylinder puis plonge le cylindre créé. Le cylindre obtenu est axé sur OX, sa hauteur vaut 1, son rayon 1/2.

La face incidente à ABorder1 est dans le plan Z=-1/2. La face incidente à ABorder2 est dans le plan Z=+1/2.

Les brins AClose1 et AClose2 en sortie sont situés sur le méridien passant par le sommet (+1/2,0,0).

Parameters
AMeridiansLe nombre (non nul) de méridiens du cylindre
AParallelsLe nombre (non nul) de parallèles du cylindre
ABorder1L'adresse d'un pointeur sur brin
ABorder2L'adresse d'un pointeur sur brin
AClose1Un booléen indiquant s'il faut fermer le bord incident à ABorder1
AClose2Un booléen indiquant s'il faut fermer le bord incident à ABorder2

Definition at line 129 of file gmv-primitive.cc.

CDart * CGMapVertex::createCylinder ( int  AMeridians,
int  AParallels,
bool  AClose1 = true,
bool  AClose2 = true 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createCylinder' ci-dessus et retourne le brin correspondant à ABorder1.

Parameters
AMeridiansLe nombre (non nul) de méridiens du cylindre
AParallelsLe nombre (non nul) de parallèles du cylindre
AClose1Un booléen indiquant s'il faut fermer le bord incident à ABorder1 (voir méthode 'createCylinder' ci-dessus)
AClose2Un booléen indiquant s'il faut fermer le bord incident à ABorder2 (voir méthode 'createCylinder' ci-dessus)
Returns
Un brin du cylindre

Definition at line 170 of file gmv-primitive.cc.

void CGMapVertex::createMesh1 ( int  ASx,
CDart AMesh1Corners[2],
CMesh1Diver ADiver 
)

Appelle la méthode CGMapGeneric::createMesh1 et plonge la polyligne obtenue en utilisant ADiver.

Parameters
ASxLe nombre d'arêtes de la polyligne
AMesh1CornersUn tableau de 2 pointeurs sur brin
AExtremity2L'adresse d'un pointeur sur brin
ADiverUn calculateur des plongements du maillage 1d

Definition at line 160 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createMesh1 ( int  ASx,
CMesh1Diver ADiver 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createMesh1' ci-dessus et retourne le brin correspondant à AExtremity1.

Parameters
ASxLe nombre d'arêtes de la polyligne
ADiverUn calculateur des plongements du maillage 1d
Returns
Un brin 1-libre de la polyligne

Definition at line 170 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createMesh1 ( int  ASx)

Cette méthode appelle 'createMesh1' ci dessus. Le plongement est déterminé par le plongeur: CMesh1BasicDiver(-OX/2, OX, ASx).

Parameters
ASxLe nombre d'arêtes de la polyligne
Returns
Un brin 1-libre de la polyligne

Definition at line 179 of file gmv-primitive-mesh.cc.

void CGMapVertex::createMesh2 ( int  ASx,
int  ASy,
CDart AFaceCorners[2][2],
CMesh2Diver ADiver 
)

Appelle la méthode CGMapGeneric::createMesh2 et plonge la grille obtenue en utilisant ADiver.

Parameters
ASxLe nombre (non nul) de subdivisions de la grille sur l'axe OX
ASyLe nombre (non nul) de subdivisions de la grille sur l'axe OY
AMesh2CornersUn tableau de taille 2*2 de pointeurs sur brin correspondant aux coins du maillage 2d
ADiverUn calculateur des plongements de la grille

Definition at line 185 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createMesh2 ( int  ASx,
int  ASy,
CMesh2Diver ADiver 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createMesh2' ci-dessus et retourne le brin correspondant à ACornerBL.

Parameters
ASxLe nombre (non nul) de subdivisions de la grille sur l'axe OX
ASyLe nombre (non nul) de subdivisions de la grille sur l'axe OY
ADiverUn calculateur des plongements de la grille
Returns
Un brin de la grille

Definition at line 197 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createMesh2 ( int  ASx,
int  ASy 
)

Cette méthode appelle 'createMesh2' ci dessus. Le plongement est déterminé par le plongeur: CMesh2BasicDiver(-(OX+OY)/2, OX, ASx, OY, ASy).

Parameters
ASxLe nombre (non nul) de subdivisions de la grille sur l'axe OX
ASyLe nombre (non nul) de subdivisions de la grille sur l'axe OY
Returns
Un brin 1-libre de la grille

Definition at line 206 of file gmv-primitive-mesh.cc.

void CGMapVertex::createMesh3 ( int  ASx,
int  ASy,
int  ASz,
CDart AMesh3Corners[2][2][2],
CMesh3Diver ADiver 
)

Appelle la méthode CGMapGeneric::createMesh3 et plonge le maillage 3d obtenu en utilisant ADiver.

Parameters
ASxLe nombre (non nul) de subdivisions du maillage 3d sur l'axe OX
ASyLe nombre (non nul) de subdivisions du maillage 3d sur l'axe OY
ASzLe nombre (non nul) de subdivisions du maillage 3d sur l'axe OZ
AMesh3CornersUn tableau de taille 2*2*2 de pointeurs sur brin correspondant aux coins du maillage 3d
ADiverUn calculateur des plongements du maillage 3d

Definition at line 212 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createMesh3 ( int  ASx,
int  ASy,
int  ASz,
CMesh3Diver ADiver 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createMesh3' ci-dessus et retourne le brin correspondant à AMesh3Corners[0][0][0].

Parameters
ASxLe nombre (non nul) de subdivisions du maillage 3d sur l'axe OX
ASyLe nombre (non nul) de subdivisions du maillage 3d sur l'axe OY
ASzLe nombre (non nul) de subdivisions du maillage 3d sur l'axe OZ
ADiverUn calculateur des plongements du maillage 3d
Returns
Un brin du maillage 3d

Definition at line 225 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createMesh3 ( int  ASx,
int  ASy,
int  ASz 
)

Cette méthode appelle 'createMesh3' ci dessus. Le plongement est déterminé par le plongeur: CMesh3BasicDiver(-(OX+OY+OZ)/2, OX, ASx, OY, ASy, OZ, ASz).

Parameters
ASxLe nombre (non nul) de subdivisions de la grille sur l'axe OX
ASyLe nombre (non nul) de subdivisions de la grille sur l'axe OY
ASzLe nombre (non nul) de subdivisions de la grille sur l'axe OY
Returns
Un brin 1-libre de la grille

Definition at line 234 of file gmv-primitive-mesh.cc.

CDart * CGMapVertex::createOpenedPole ( int  An,
const CVertex AVertex 
)

Appelle la méthode CGMapGeneric::createTopoOpenedPole puis plonge le sommet central du pôle créé avec l'attribut AVertex.

Parameters
AnLe nombre de triangles qui composent le pôle
AVertexLe plongement du sommet central du pôle
Returns
Un brin 2-libre du sommet central du pôle

Definition at line 44 of file gmv-primitive.cc.

CDart * CGMapVertex::createPole ( int  An,
const CVertex AVertex 
)

Appelle la méthode CGMapGeneric::createTopoPole puis plonge le sommet central du pôle créé avec l'attribut AVertex.

Parameters
AnLe nombre de triangles qui composent le pôle
AVertexLe plongement du sommet central du pôle
Returns
Un brin du sommet central du pôle

Definition at line 35 of file gmv-primitive.cc.

CDart * CGMapVertex::createPolyline ( const std::vector< CVertex > &  AVector)

Utilise la méthode createMesh1 avec un CMesh1VectorDiver.

Parameters
AVectorUn vecteur contenant les sommets de la polyline
Returns
Un brin extrémité de la polyline

Definition at line 29 of file gmv-primitive.cc.

void CGMapVertex::createPyramid ( int  AMeridians,
int  AParallels,
CDart **  ABaseDart,
CDart **  APoleDart,
bool  ACloseBase = true 
)

Appelle la méthode CGMapGeneric::createTopoPyramid puis plonge la pyramide créée. La pyramide obtenue est axée sur OZ, sa hauteur vaut 1, le rayon de sa base 1/2.

La base (incidente à ABaseDart) est dans le plan Z=-1/2. La pointe (incidente à APoleDart) est aux coordonnées (0,0,+1/2).

Les brins ABaseDart et APoleDart en sortie sont situés sur le méridien passant par le sommet (+1/4,0,0).

Parameters
AMeridiansLe nombre (non nul) de méridiens de la pyramide
AParallelsLe nombre (non nul) de parallèles de la pyramide
ABaseDartL'adresse d'un pointeur sur brin
APoleDartL'adresse d'un pointeur sur brin
ACloseBaseUn booléen indiquant s'il faut fermer le bord incident à ABaseDart

Definition at line 183 of file gmv-primitive.cc.

CDart * CGMapVertex::createPyramid ( int  AMeridians,
int  AParallels,
bool  ACloseBase = true 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createPyramid' ci-dessus et retourne le brin correspondant à ABaseDart.

Parameters
AMeridiansLe nombre (non nul) de méridiens de la pyramide
AParallelsLe nombre (non nul) de parallèles de la pyramide
ACloseBaseUn booléen indiquant s'il faut fermer le bord incident à ABaseDart (voir méthode 'createPyramid' ci-dessus)
Returns
Un brin du cylindre

Definition at line 224 of file gmv-primitive.cc.

CDart * CGMapVertex::createRegularPolygon ( int  An)

Crée un polygone régulier centré sur l'origine et de vecteur normal OZ. Le premier sommet de la face créée est aux coordonnées (1/2,0,0), c'est-à-dire que le polygone est inscrit dans un cercle de diamètre 1.

Le brin b retourné est celui du premier sommet de la face tel que le plongement de alpha0(b) ait une ordonnée positive.

Parameters
AnLe nombre d'arêtes du polygone
Returns
Un brin de la face créée

An>=3

Definition at line 53 of file gmv-primitive.cc.

CDart * CGMapVertex::createRevolutionPath ( const CVertex AAxeVertex,
const CVertex AAxeDirection,
const CVertex AFirstVertex,
TCoordinate  AAngle,
int  ANbEdges 
)

Crée un chemin d'extrusion composé de ANbEdges arêtes, ouvert ou fermé selon la valeur de AAngle. Ce chemin est utilisé pour simuler l'extrusion par révolution autour d'un axe.

Parameters
AAxeVertexUn sommet de l'axe de révolution
AAxeDirectionUn vecteur directeur de l'axe de révolution
AFirstVertexLa position du 1er sommet du chemin
AAngleL'angle de révolution (compris entre -360 et +360)
ANbEdgesLe nombre d'arêtes du chemin
Returns
Un brin extrémité du chemin

!AAxeDirection.isNull() ANbEdges >= 3

Definition at line 568 of file gmv-extrusion.cc.

void CGMapVertex::createSphere ( int  AMeridians,
int  AParallels,
CDart **  ASouthPole,
CDart **  ANorthPole 
)

Appelle la méthode CGMapGeneric::createTopoSphere puis plonge sphère créée. La sphère obtenue est centrée sur l'origine, son diamètre vaut 1.

Le pôle sud est aux coordonnées (0,0,-1/2). Le pôle nord est aux coordonnées (0,0,+1/2).

Les brins ASouthPole et ANorthPole en sortie sont situés sur le méridien passant par le sommet (+1/2,0,0).

Parameters
AMeridiansLe nombre (non nul) de méridiens de la sphère
AParallelsLe nombre (non nul) de parallèles de la sphère
ASouthPoleL'adresse d'un pointeur sur brin
ANorthPoleL'adresse d'un pointeur sur brin

Definition at line 73 of file gmv-primitive.cc.

CDart * CGMapVertex::createSphere ( int  AMeridians,
int  AParallels 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createSphere' ci-dessus et retourne le brin correspondant à ASouthPole.

Parameters
AMeridiansLe nombre (non nul) de méridiens de la sphère
AParallelsLe nombre (non nul) de parallèles de la sphère
Returns
Un brin de la sphère

Definition at line 117 of file gmv-primitive.cc.

void CGMapVertex::createSquareIMeshed ( int  ASx,
int  ASy,
int  AMeshDimension,
CDart ASquareCorners[2][2] 
)

Appelle la méthode 'CGMapGeneric::createTopoSquareIMeshed' et plonge le carré maillé créé. Le carré est centré sur l'origine et son vecteur normal est OZ. Les coins de la face créée sont aux coordonnées (+-1/2,+-1/2,0).

Parameters
ASxLe nombre de subdivisions selon la première dimension
ASyLe nombre de subdivisions selon la deuxième dimension
AMeshDimensionLa dimension du maillage (0 ou 2)
ASquareCornersUn tableau de dimension 2*2 de pointeurs sur brin

Definition at line 294 of file gmv-primitive.cc.

CDart * CGMapVertex::createSquareIMeshed ( int  ASx,
int  ASy,
int  AMeshDimension 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createSquareIMeshed' ci-dessus et retourne le brin correspondant à ASquareCorners[0][0].

Parameters
ASxLe nombre de subdivisions selon la première dimension
ASyLe nombre de subdivisions selon la deuxième dimension
AMeshDimensionLa dimension du maillage (0 ou 2)

Definition at line 327 of file gmv-primitive.cc.

void CGMapVertex::createTorus ( int  AMeridians,
int  AParallels,
TCoordinate  ARadiusProportion,
CDart **  AEquator 
)

Appelle la méthode CGMapGeneric::createTopoTorus puis plonge le tore créé. Le tore obtenu est axé sur OZ, c'est-à-dire que l'axe OZ passe dans le trou du tore sans l'intersecter.

Le brin AEquator en sortie est situé sur le sommet de coordonnées (+1/2,0,0).

On alpha donc les relations suivantes:

k = r/R , r+R = 1/2 , r = k/2/(1+k) , R = 1/2/(1+k)

Parameters
AMeridiansLe nombre (non nul) de méridiens du tore
AParallelsLe nombre (non nul) de parallèles du tore
ARadiusProportionLa valeur r/R (petit rayon sur grand grand rayon)
AEquatorL'adresse d'un pointeur sur brin

Definition at line 237 of file gmv-primitive.cc.

CDart * CGMapVertex::createTorus ( int  AMeridians,
int  AParallels,
TCoordinate  ARadiusProportion 
)

Cette méthode est fournie dans le but de faciliter l'exploitation du noyau. Elle appelle simplement la méthode 'createTorus' ci-dessus et retourne le brin correspondant à AEquator.

Parameters
AMeridiansLe nombre (non nul) de méridiens du tore
AParallelsLe nombre (non nul) de parallèles du tore
ARadiusProportionLa valeur r/R (petit rayon sur grand grand rayon)
Returns
Un brin du tore

Definition at line 281 of file gmv-primitive.cc.

INLINE void GMap3d::CGMapVertex::delDart ( CDart ADart)
virtual

Supprime le brin passé en paramètre (de type CDartVertex)

Parameters
ADartLe brin à supprimer

Reimplemented from GMap3d::CGMapBasic.

Definition at line 45 of file gmv-inline.icc.

void CGMapVertex::deleteDuplicatedVertex ( int  ADirectInfoNumber)

Libère l'espace mémoire alloué par la méthode 'duplicateVertexToDirectInfo'. Les champs directInfo libérés ne sont pas positionnés à NULL.

Attention: les brins sélectionnés devraient être les mêmes qu'au moment de l'appel à duplicateVertexToDirectInfo!

Parameters
ADirectInfoNumberUn indice indiquant quel directInfo utiliser

Definition at line 110 of file gmv-direct-info.cc.

int CGMapVertex::deleteMarkedNullLengthEdges ( int  AMarkNumber)

Supprime les arêtes de longueur nulle dont un brin au moins est marqué.

Returns
Le nombre d'arêtes supprimées

Definition at line 38 of file gmv-null-length-edge.cc.

int CGMapVertex::deleteNullLengthEdges ( )

Supprime toutes les arêtes de longueur nulle de la carte.

Returns
Le nombre d'arêtes supprimées

Definition at line 28 of file gmv-null-length-edge.cc.

INLINE void GMap3d::CGMapVertex::delVertex ( CDart ADart)

Supprime s'il existe le plongement sommet du brin ADart.

Parameters
ADartUn brin de la carte

Definition at line 134 of file gmv-inline.icc.

CVertex CGMapVertex::directInfoBarycenter ( int  ADirectInfoVertex)

Calcule le barycentre d'un ensemble de sommets se trouvant dans le champ directInfo d'indice ADirectInfoVertex. Les champs directinfo doivent être initialisés avec la méthode duplicateVertexToDirectInfo.

Parameters
ADirectInfoVertexUn indice correspondant à un champ directInfo

Definition at line 146 of file gmv-geometry.cc.

void CGMapVertex::diveMesh1 ( CDart AFirstDart,
CMesh1Diver ADiver,
TEmbedMethod  ADiveBorders = GMV_YES,
int  AMeshDimension = 1 
)

Plonge les sommets d'un maillage 1d généralement créé avec la méthode 'CGMapGeneric::createTopoMesh1'.

Si AMeshDimension > 1, le plongement est effectué le long du bord d'un maillage 2d ou 3d.

Le passage d'une arête à la suivante se fait de manières différentes en fonction de la valeur de AMeshDimension: Si AMeshDimension == 1 : alpha01 Si AMeshDimension == 2 : alpha0121 Si AMeshDimension == 3 : alpha012321

Parameters
AFirstDartUn brin situé à l'origine du maillage 1d
ADiverUn calculateur des plongements du maillage 1d
ADiveBordersIndique s'il faut plonger le bord du maillage 1d (2 sommets)
AMeshDimensionUn entier indiquant la dimension du maillage à plonger (1, 2 ou 3)

Definition at line 31 of file gmv-primitive-mesh.cc.

void CGMapVertex::diveMesh2 ( CDart AFirstDart,
CMesh2Diver ADiver,
TEmbedMethod  ADiveBorders = GMV_YES,
int  AMeshDimension = 2 
)

Plonge les sommets d'un maillage 2d généralement créé avec la méthode 'CGMapGeneric::createTopoMesh2'.

Si AMeshDimension == 3, le plongement est effectué le long du bord d'un maillage 3d.

Le passage d'une face à la suivante se fait de manières différentes en fonction de la valeur de AMeshDimension: Si AMeshDimension == 2 : alpha0121 Si AMeshDimension == 3 : alpha012321

Parameters
AFirstDartUn brin situé à l'origine du maillage 2d
ADiverUn calculateur des plongements du maillage 2d
ADiveBordersIndique s'il faut plonger le bord du maillage 2d (4 arêtes)
AMeshDimensionUn entier indiquant la dimension du maillage à plonger (2 ou 3)

Definition at line 62 of file gmv-primitive-mesh.cc.

void CGMapVertex::diveMesh3 ( CDart AFirstDart,
CMesh3Diver ADiver,
TEmbedMethod  ADiveBorders = GMV_YES 
)

Plonge les sommets d'un maillage 3d généralement créé avec la méthode 'CGMapGeneric::createTopoMesh3'.

Parameters
AFirstDartUn brin situé à l'origine du maillage 3d
ADiverUn calculateur des plongements du maillage 3d
ADiveBordersIndique s'il faut plonger le bord du maillage 3d (6 faces)

Definition at line 107 of file gmv-primitive-mesh.cc.

int CGMapVertex::dualOfMarkedDarts ( int  ADim,
int  AMarkNumber 
)

Calcule le dual en dimension ADim d'un ensemble de brins. À chaque cellule C de dimension ADim de l'objet initial est associé un sommet S placé sur le barycentre de C.

Parameters
ADimLa dimension dans laquelle le dual est calculé
AMarkNumberUn numéro de marque
Returns
Le nombre de brins dupliqués

(ADim == 2) || (ADim == 3)

Definition at line 30 of file gmv-dual.cc.

void CGMapVertex::duplicateVertexToDirectInfo ( int  AMarkNumber,
int  ADirectInfoNumber 
)

Duplique le plongement sommet des sommets sélectionnés. Le sommet dupliqué est rattaché à un brin de l'orbite sommet, qui est le même que celui qui porte l'attribut original.

Un sommet est sélectionné si au moins un de ses brins est marqué avec la marque AMarkNumber.

L'espace alloué par cette méthode peut être libéré à l'aide de la méthode 'deleteDuplicatedVertex'.

Parameters
AMarkNumberUn numéro de marque
ADirectInfoNumberUn indice indiquant quel directInfo utiliser

Definition at line 79 of file gmv-direct-info.cc.

TCoordinate CGMapVertex::edgeLength ( CDart ADart)

Calcule la longueur d'une arête.

Parameters
ADartUn brin de la carte
Returns
La longueur de l'arête incidente à ADart

Definition at line 321 of file gmv-geometry.cc.

CVertex CGMapVertex::edgeNormalVector ( CDart ADart)

Calcule le vecteur normal d'une arête. Ce vecteur n'est jamais nul. Si l'arête est de longueur nulle, la méthode retourne OX, sinon elle appelle 'CGeometry::getNormalVector'.

Parameters
ADartUn brin de la carte
Returns
Le vecteur normal de l'arête incidente à ADart

Definition at line 472 of file gmv-geometry.cc.

CVertex CGMapVertex::edgeVector ( CDart ADart)

Calcule * findVertex(alpha0(ADart)) - * findVertex(ADart).

Parameters
ADartUn brin de la carte
Returns
Le vecteur correpondant à l'arête incidente à ADart

Definition at line 465 of file gmv-geometry.cc.

INLINE void GMap3d::CGMapVertex::empty ( )
virtual

Destruction de tous les brins de la carte. Cette méthode appelle la méthode 'empty' de la classe CGMapBasic, puis sélectionne l'orbite ORBIT_VERTEX comme orbite utilisée.

Reimplemented from GMap3d::CGMapBasic.

Definition at line 31 of file gmv-inline.icc.

bool CGMapVertex::exportOff ( const char *  AFilename)

Exporte la carte courante au format off2D ou off3D selon la dimension de la carte courante.

Parameters
AFilenameLe nom du fichier dans lequel écrire le contenu de la carte
Returns
'vrai' si l'export s'est bien déroulé

Definition at line 560 of file gmv-off.cc.

bool CGMapVertex::exportOff2D ( std::ostream &  AStream)

Exporte la carte courante au format off2D.

Parameters
AStreamUn flot dans lequel écrire le contenu de la carte
Returns
'vrai' si l'export s'est bien déroulé

Definition at line 398 of file gmv-off.cc.

bool CGMapVertex::exportOff3D ( std::ostream &  AStream)

Exporte la carte courante au format off3D.

Parameters
AStreamUn flot dans lequel écrire le contenu de la carte
Returns
'vrai' si l'export s'est bien déroulé

Definition at line 463 of file gmv-off.cc.

bool CGMapVertex::exportOff3D ( const char *  AFilename)

Exporte la carte courante au format off3D.

Parameters
AFilenameLe nom du fichier dans lequel écrire le contenu de la carte
Returns
'vrai' si l'export s'est bien déroulé

Definition at line 575 of file gmv-off.cc.

bool CGMapVertex::exportToPov ( std::ofstream &  AOutStream)

Exporte la carte vers le format PoV (Persistence of Vision). PoV-ray est un lanceur de rayons. (voir www.povray.org).

Parameters
AOutStreamLe flot dans lequel sera écrit le fichier.
Returns
Un booléen indiquant si l'opération s'est bien déroulée.

Definition at line 33 of file gmv-export-pov.cc.

CDart * CGMapVertex::extrudeByNormal ( CDart ADart,
int  ADim,
bool  AExtrusionWithAdjacentSews,
TCoordinate  AExtrusionCoef,
int  AMarkToExtrude = -1,
int  AMarkExtruded = -1 
)
virtual

Extrude la cellule de dimension ADim incidente à ADart. Si AMarkToExtrude est positive ou nulle, cette marque indique les cellules qui doivent être extrudées. Selon que les cellules voisines de la cellule en cours doivent être extrudées ou pas et selon la valeur que renvoie la méthode 'CGMapGeneric::getExtrusionWithAdacentSews', les plongements ne sont pas calculés de la même manière.

La méthode appelle 'CGMapGeneric::extrudeByNormal' puis calcule les plongements des sommets topologiques créés.

Pour la signification du paramètre AMarkToExtrude, se reporter à la méthode 'CGMapGeneric::extrudeByNormal'. Pour la signification des paramètres AMarkExtruded et AExtrusionWithAdjacentSews, se reporter à la méthode 'CGMapGeneric::topoExtrude'.

Parameters
ADartUn brin de la carte
ADimUne dimension (0, 1 ou 2)
AExtrusionWithAdjacentSewsUn booléen
AExtrusionCoefUn TCoordinate fixant le coefficient d'extrusion. Ce coefficient est utilisé pour pondérer le vecteur d'extrusion.
AMarkToExtrudeUne marque indiquant les cellules à extruder
AMarkExtrudedUne marque indiquant les cellules déjà extrudées
Returns
Un brin de la cellule créée, situé à l'opposé de ADart

canExtrudeCell(ADart, ADim)

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 29 of file gmv-extrusion.cc.

CDart * CGMapVertex::extrudeByPath ( CDart ADart,
int  ADim,
CDart APath,
bool  AExtrusionWithAdjacentSews,
bool  ARotateExtrudedCells,
bool  AScaleExtrudedCells,
CDart APonderationPath = NULL,
int  AMarkExtruded = -1,
int  ADirectInfoIndex = -1 
)

Extrude la cellule de dimension ADim incidente à ADart selon le chemin donné par APath (orbite O1).

La méthode appelle 'CGMapGeneric::extrudeByPath' puis calcule les plongements des sommets topologiques créés.

Pour la signification du paramètre AMarkExtruded, se reporter à la méthode 'CGMapGeneric::topoExtrude'.

Pour la signification du paramètre ADirectInfoIndex, se reporter à la méthode 'CGMapGeneric::extrudeByPath'.

Si APonderationPath est différent de NULL, une homothétie est appliquée sur chaque section de l'objet obtenu après extrusion. Chaque homothétie est centrée sur le sommet du chemin d'extrusion lui correspondant. APonderationDart désigne un chemin dont les sommets (plus précisément la valeur donnée par 'CVertex::getY' appliquée sur ces sommets) donnent les coefficients d'homothétie.

Remarque: Le nombre d'arêtes du chemin peut être différent du nombre d'arêtes de la fonction de pondération. Si c'est le cas, le paramètre de pondération est calculé par interpolation linéaire.

Remarque: Si la fonction de pondération s'annule pour une valeur donnée, tous les sommets de la section correspondante sont confondus. Cette section réduite à un sommet se propage alors jusqu'à la fin de l'extrusion.

Parameters
ADartUn brin de la carte incident à la cellule à extruder
ADimUne dimension (1 ou 2)
APathUn brin de la carte incident au chemin d'extrusion
APonderationPathUn brin de la carte
AExtrusionWithAdjacentSewsUn booléen
ARotateExtrudedCellsUn booléen indiquant si les objets extrudés doivent être orientés
AScaleExtrudedCellsUn booléen indiquant si les objets extrudés doivent être redimensionnés
AMarkExtrudedUne marque indiquant les cellules déjà extrudées
ADirectInfoIndexUn indice de champ directInfo
Returns
Un brin de la dernière cellule créée, situé à l'opposé de ADart

canExtrudeByPath(ADart, ADim, APath) APonderationPath==NULL || ! isClosedPolyline(APonderationPath)

Definition at line 109 of file gmv-extrusion.cc.

int CGMapVertex::extrudeByPathMarkedCells ( int  AMarkNumber,
int  ADim,
CDart APath,
bool  AExtrusionWithAdjacentSews,
int  AInitialTranslateExtrudedCells,
int  AInitialRotateExtrudedCells,
bool  ARotateExtrudedCells,
bool  AScaleExtrudedCells,
CDart APonderationPath = NULL 
)

Surcharge la méthode 'CGMapGeneric::extrudeByPathMarkedCells'. Les cellules sont éventuellement positionnées perpendiculairement au chemin avant d'effectuer l'extrusion (voir méthodes 'setExtrusionInitialPosition' et 'setExtrusionInitialDirection').

Attention: si 'getExtrusionInitialDirection' retourne la valeur 'vrai', le vecteur normal de chaque cellule à extruder est calculé, ce qui implique qu'un brin sur deux au maximum pour chaque cellule doit être sélectionné pour éviter toute ambiguïté.

Pour la signification des paramètres APonderationDart,ARotateExtrudedCells et AScaleExtrudedCells, se reporter à la méthode 'extrudeByPath'.

Parameters
AMarkNumberUn numéro de marque
ADimUne dimension (1 ou 2)
APathUn brin de la carte incident au chemin d'extrusion
AExtrusionWithAdjacentSewsUn booléen
AInitialTranslateExtrudedCellsUn entier indiquant si les objets extrudés doivent être translatés sur le premier sommet du chemin. 0 : Aucune translation. 1 : Les objets extrudés sont initialement translatés sur le chemin. 2 : Le chemin est initialement déplacé sur le barycentre des cellules à extruder.
AInitialRotateExtrudedCellsUn entier indiquant comment les objets à extruder et le chemin doivent être orientés l'un par rapport à l'autre avant l'extrusion. 0 : Aucune rotation. 1 : Les objets extrudés sont initialement orientés perpendiculairement à la première arête du chemin. 2 : Le chemin est initialement orienté de manière à être perpendiculaire aux cellules à extruder.
ARotateExtrudedCellsUn booléen
AScaleExtrudedCellsUn booléen
APonderationPathUn brin de la carte
Returns
Le nombre de cellules extrudées selon le chemin donné

Definition at line 340 of file gmv-extrusion.cc.

CDart * CGMapVertex::extrudeByRevolution ( CDart ADart,
int  ADim,
const CVertex AAxeVertex,
const CVertex AAxeDirection,
const CVertex AFirstVertex,
TCoordinate  AAngle,
int  ANbEdges,
bool  AExtrusionWithAdjacentSews,
bool  ARotateExtrudedCells,
bool  AScaleExtrudedCells,
CDart APonderationPath = NULL,
int  AMarkExtruded = -1,
int  ADirectInfoIndex = -1 
)

Extrude la cellule de dimension ADim incidente à ADart selon autour d'un axe. La méthode crée un chemin constitué de ANbEdges arêtes qui est fermé ou ouvert selon la valeur de AAngle puis appelle la méthode 'extrudeByPath'.

Pour la signification des paramètres AMarkExtruded, ADirectInfoIndex, APonderationPath, AExtrusionWithAdjacentSews, ARotateExtrudedCells, AScaleExtrudedCells se reporter à la méthode 'extrudeByPath'.

Parameters
ADartUn brin de la carte incident à la cellule à extruder
ADimUne dimension (1 ou 2)
AAxeVertexUn sommet de l'axe de révolution
AAxeDirectionUn vecteur directeur de l'axe de révolution
AFirstVertexLa position du barycentre des cellules à extruder
AAngleL'angle de révolution (compris entre -360 et +360)
ANbEdgesLe nombre de sections à créer
AExtrusionWithAdjacentSewsUn booléen
ARotateExtrudedCellsUn booléen
AScaleExtrudedCellsUn booléen
APonderationPathUn brin de la carte
AMarkExtrudedUn numéro de marque
ADirectInfoIndexUn indice de champ directInfo
Returns
Un brin de la dernière cellule créée, situé à l'opposé de ADart

canExtrudeByRevolution(ADart, ADim, closed), avec closed = vrai si AAngle/360 est une valeur entière !AAxeDirection.isNull() ANbEdges >= 3

Definition at line 602 of file gmv-extrusion.cc.

int CGMapVertex::extrudeByRevolutionMarkedCells ( int  AMarkNumber,
int  ADim,
const CVertex AAxeVertex,
const CVertex AAxeDirection,
TCoordinate  AAngle,
int  ANbEdges,
bool  AExtrusionWithAdjacentSews,
int  AInitialTranslateExtrudedCells,
int  AInitialRotateExtrudedCells,
bool  ARotateExtrudedCells,
bool  AScaleExtrudedCells,
CDart APonderationPath = NULL 
)

Calcule le chemin correspondant à l'axe donné et appelle la méthode 'extrudeByPathMarkedCells'. Les cellules sont éventuellement positionnées perpendiculairement au chemin avant d'effectuer l'extrusion (voir la méthode 'setExtrusionInitialDirection').

Attention: si 'getExtrusionInitialDirection' retourne la valeur 'vrai', le vecteur normal de chaque cellule à extruder est calculé, ce qui implique qu'un brin sur deux au maximum pour chaque cellule doit être sélectionné pour éviter toute ambiguïté.

Pour la signification du paramètre APonderationDart, AExtrusionWithAdjacentSews, ARotateExtrudedCells et AScaleExtrudedCells se reporter à la méthode 'extrudeByPath'. Pour la signification des paramètres AInitialTranslateExtrudedCells et AInitialRotateExtrudedCells, voir la méthode 'extrudeByPathMarkedCells'.

Parameters
AMarkNumberUn numéro de marque
ADimUne dimension (1 ou 2)
AAxeVertexUn sommet de l'axe de révolution
AAxeDirectionUn vecteur directeur de l'axe de révolution
ANbEdgesLe nombre de sections à créer
AExtrusionWithAdjacentSewsUn booléen
AInitialTranslateExtrudedCellsUn entier
AInitialRotateExtrudedCellsUn entier
APonderationPathUn brin de la carte
Returns
Le nombre de cellules extrudées selon l'axe donné

!AAxeDirection.isNull() ANbEdges >= 3

Definition at line 640 of file gmv-extrusion.cc.

CVertex CGMapVertex::faceNormalVector ( CDart ADart)

Calcule le vecteur normal d'une face. Ce vecteur n'est jamais nul. La face n'est pas forcément plane. Elle peut être ouverte. Elle peut comporter moins de 3 sommets (le résultat est alors OZ).

Parameters
ADartUn brin de la carte
Returns
Le vecteur normal de la face incidente à ADart

Definition at line 484 of file gmv-geometry.cc.

TCoordinate CGMapVertex::facePerimeter ( CDart ADart)

Calcule le périmètre d'une face.

Parameters
ADartUn brin de la carte
Returns
Le périmètre de la face incidente à ADart

Definition at line 331 of file gmv-geometry.cc.

int CGMapVertex::findMotif ( CGMapVertex AMap,
unsigned int *  ANbMatched = NULL 
)

Cherche si la carte *this est un motif de la carte AMap.

Parameters
AMapla carte dans laquelle on va chercher le motif.
ANbMatchedun pointeur vers un entier. Si non nul, paramètre retour qui va contenir le nombre de brins maximum matché.
Returns
-1 si motif non trouvé, le numéro du direct info contenant l'injection sinon (valide pour les brins marqués pour AMarkToTest) Retourne le premier motif trouvé.

Definition at line 35 of file gmv-isomorphisme.cc.

bool CGMapVertex::findMotifFrom ( CDart AFromDart,
unsigned int  AMarkTreated,
unsigned int  AIndex,
CGMapVertex AMap,
CDart ADestDart,
unsigned int  AMarkTreated2,
unsigned int *  ANbMatched = NULL 
)

Cherche si la carte *this est un motif de la carte AMap à partir du brin AFromDart dans la carte this et ADestDart dans la carte AMap. AMarkTreated est le numéro de marque utilisé pour marquer les brins déjà traités.

Parameters
ANbMatchedun pointeur vers un entier. Si non nul, paramètre retour qui va contenir le nombre de brins matché.
Returns
vrai ssi motif trouvé, faux sinon. Dans les 2 cas, le champ directInfo[AIndex] contient l'injection affectée (partiellement en cas d'échec.

Definition at line 229 of file gmv-isomorphisme.cc.

INLINE CAttributeVertex * GMap3d::CGMapVertex::findVertex ( CDart ADart)

Renvoie le sommet associé à un brin, en parcourant si nécessaire tous les brins du sommet.

Parameters
ADartUn brin de la carte
Returns
Le plongement sommet du brin

Definition at line 84 of file gmv-inline.icc.

void CGMapVertex::geoBorderSew ( CDart ADart1,
CDart ADart2,
int  ADim,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Plaque le bord dimension ADim incident à ADart1 sur le bord de dimension ADim incident à ADart2 (si cela est possible) avant de les coudre entre eux.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADimLa dimension dans laquelle doit se faire la couture
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position

0 <= ADim <= 3 canSew(ADart1, ADart2, ADim)

Definition at line 58 of file gmv-geo-sew.cc.

void CGMapVertex::geoSew ( CDart ADart1,
CDart ADart2,
int  ADim,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Plaque la cellule de dimension ADim incidente à ADart1 sur la cellule de dimension ADim incidente à ADart2 (si cela est possible) avant de les coudre entre elles.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADimLa dimension dans laquelle doit se faire la couture
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position

0 <= ADim <= 3 canSew(ADart1, ADart2, ADim)

Definition at line 28 of file gmv-geo-sew.cc.

INLINE TCoordinate GMap3d::CGMapVertex::getBurstCoef ( int  ADim) const

Retourne le coefficient d'éclatement de la dimension ADim.

Parameters
ADimUne dimension
Returns
Une valeur comprise entre 0 et 1

Definition at line 67 of file gmv-inline.icc.

TBurstMethod CGMapVertex::getBurstMethod ( ) const

Definition at line 34 of file gmv-burstview.cc.

INLINE CVertex & GMap3d::CGMapVertex::getBurstVertex ( CDart ADart) const

Retourne le plongement éclaté de la première extrémité du brin ADart donné.

Parameters
ADartUn brin de la carte
Returns
Le plongement éclaté de ADart

Definition at line 152 of file gmv-inline.icc.

INLINE CAttributeVertex * GMap3d::CGMapVertex::getDirectInfoAsAttributeVertex ( CDart ADart,
int  ADirectInfoIndex 
) const

Retourne le champ directInfo demandé du brin ADart après l'avoir retypé en pointeur sur un attribut sommet.

Parameters
ADartUn brin de la carte
ADirectInfoIndexUn indice de champ directInfo
Returns
Un pointeur sur un attribut sommet

Definition at line 185 of file gmv-inline.icc.

INLINE TCoordinate * GMap3d::CGMapVertex::getDirectInfoAsCoord ( CDart ADart,
int  ADirectInfoIndex 
) const

Retourne le champ directInfo demandé du brin ADart après l'avoir retypé en pointeur sur une coordonnée (TCoordinate).

Parameters
ADartUn brin de la carte
ADirectInfoIndexUn indice de champ directInfo
Returns
Un pointeur sur une coordonnée

Definition at line 202 of file gmv-inline.icc.

INLINE CVertex * GMap3d::CGMapVertex::getDirectInfoAsVertex ( CDart ADart,
int  ADirectInfoIndex 
) const

Retourne le champ directInfo demandé du brin ADart après l'avoir retypé en pointeur sur un sommet.

Parameters
ADartUn brin de la carte
ADirectInfoIndexUn indice de champ directInfo
Returns
Un pointeur sur un sommet

Definition at line 194 of file gmv-inline.icc.

TSaveFormat CGMapVertex::getFileFormat ( const char *  AFilename)
static

Détermine le format du fichier dont le nom est passé en paramètre.

Parameters
AFilenameUn nom de fichier
Returns
Le format du fichier

Definition at line 40 of file gmv-save.cc.

const char * CGMapVertex::getFileHeader ( TSaveFormat  AFormat)
static

Retourne la chaîne de caractère placée en début d'un fichier de sauvegarde et permettant la reconnaissance du format utilisé lors de la sauvegarde.

Parameters
AFormatUn type de format
Returns
Une chaîne de caractères

Definition at line 54 of file gmv-save.cc.

int CGMapVertex::getOffDimension ( const char *  AFilename)
Returns
la dimension du fichier off en lisant l'entête: 2, 3 ou -1 si erreur

Definition at line 370 of file gmv-off.cc.

int CGMapVertex::getPlateDimension ( CDart ADart1,
CDart ADart2 
)

Calcule la dimension maximum des cellules incidentes aux brins donnés qui peuvent être plaquées, en tenant compte de l'état des coutures de chacun de ces brins (par exemple, pour faire un placage de faces, il faut qu'au moins un des brins soit 3-cousu). Si le placage est impossible, la valeur -1 est retournée, sinon la valeur retournée vaut 0, 1 ou 2.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
Returns
Un entier indiquant la dimension des cellules incidentes aux brins donnés pouvant être plaquées

Definition at line 34 of file gmv-plating.cc.

TCoordinate CGMapVertex::getTriangleCoef ( const CVertex AVertex1,
const CVertex AVertex2,
const CVertex AVertex3 
)
Returns
le coefficient du triangle (AVertex1, AVertex2, AVertex3)

Definition at line 274 of file gmv-triangulation.cc.

INLINE CAttributeVertex * GMap3d::CGMapVertex::getVertex ( CDart ADart) const

Renvoie le sommet associé à un brin. La méthode renvoie NULL si le plongement sommet n'est pas porté par ADart.

Parameters
ADartUn brin de la carte
Returns
Le plongement sommet du brin

Definition at line 93 of file gmv-inline.icc.

void CGMapVertex::giveNumberToDarts ( int  ADirectInfoIndex)

Numérote les n brins de la carte de 0 à n-1 en utilisant un champ directInfo.

Parameters
ADirectInfoIndexUn indice indiquant où placer les numéros des brins

Definition at line 32 of file gmv-save.cc.

CDart * CGMapVertex::importOff ( const char *  AFilename)

Importe une carte à partir d'un fichier au format ASCII Object File Format. en lisant l'entête pour savoir si c'est un fichier off2D ou off3D. Les brins qui composent la carte avant le chargement ne sont pas détruits.

Parameters
AFilenameUn nom de fichier
Returns
Un brin de la carte chargée si le chargement s'est bien déroulé, NULL sinon

Definition at line 384 of file gmv-off.cc.

CDart * CGMapVertex::importOff2D ( std::istream &  AStream)

Importe une carte 2D à partir d'un flot au format ASCII Object File Format. Les brins qui composent la carte avant le chargement ne sont pas détruits.

Parameters
AStreamUn flot dans lequel lire le contenu de la carte à charger
Returns
Un brin de la carte chargée si le chargement s'est bien déroulé, NULL sinon

Definition at line 139 of file gmv-off.cc.

CDart * CGMapVertex::importOff3D ( std::istream &  AStream)

Importe une carte 3D à partir d'un flot au format ASCII Object File Format. Les brins qui composent la carte avant le chargement ne sont pas détruits.

Parameters
AStreamUn flot dans lequel lire le contenu de la carte à charger
Returns
Un brin de la carte chargée si le chargement s'est bien déroulé, NULL sinon

Definition at line 280 of file gmv-off.cc.

CDart * CGMapVertex::insertVertex ( CDart ADart)
virtual

Insère un sommet sur une arête. Le plongement du sommet créé correspond au milieu de l'arête initiale.

Parameters
ADartUn brin de la carte
Returns
Un brin du sommet nouvellement créé

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 28 of file gmv-insertion.cc.

bool CGMapVertex::intuitiveGeoBorderSew ( CDart ADart1,
CDart ADart2,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Appelle la méthode 'geoSewBorders' après avoir déterminé la dimension dans laquelle doit se faire la couture à l'aide de la méthode 'getBorderDimension'.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position
Returns
Un booléen indiquant si la couture alpha pu se faire

Definition at line 72 of file gmv-geo-sew.cc.

bool CGMapVertex::intuitiveGeoSew ( CDart ADart1,
CDart ADart2,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Appelle la méthode 'geoSew' après avoir déterminé la dimension dans laquelle doit se faire la couture à l'aide de la méthode 'getSewDimension'.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position
Returns
Un booléen indiquant si la couture alpha pu se faire

Definition at line 42 of file gmv-geo-sew.cc.

bool CGMapVertex::intuitivePlate ( CDart ADart1,
CDart ADart2,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Effectue un placage comme la méthode 'plate'. La dimension du placage est déterminée par la méthode 'getPlateDimension'.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position
Returns
true si le placage alpha été possible

Definition at line 119 of file gmv-plating.cc.

bool CGMapVertex::isPlanarPolyline ( CDart ADart)

Teste si une face est plane.

Parameters
ADartUn brin quelconque de la carte
Returns
'vrai' si tous les sommets de la face sont situés sur un même plan

Definition at line 36 of file gmv-polyline.cc.

bool CGMapVertex::isPointInTriangle ( const CVertex APoint,
const CVertex AVertex1,
const CVertex AVertex2,
const CVertex AVertex3,
const CVertex ANormal 
)
Returns
vrai ssi le point APoint se trouve à l'intérieur du triangle (AVertex1, AVertex2, AVertex3) de normale ANormal.

Definition at line 260 of file gmv-triangulation.cc.

void CGMapVertex::linkFaceAlpha2OFF ( std::vector< std::list< CDart * > > &  ATestVertices,
int  AIndex,
CDart ADart 
)

La face incidente à ADart vient d'être créé. Cherche à coudre toute ses arêtes par alpha2 en utilisant pour cela les arêtes existantes se trouvant dans ATestVertices et le directInfo AIndex étiquettant les brins avec le numéro du sommets incident.

Definition at line 33 of file gmv-off.cc.

CDart * CGMapVertex::load ( const char *  AFilename,
TSaveFormat  AFormat 
)

Charge la carte à partir d'un fichier. Les brins qui composent la carte avant le chargement ne sont pas détruits.

Parameters
AFilenameUn nom de fichier
AFormatUn type de format de fichier
Returns
Un brin de la carte chargée si le chargement s'est bien déroulé, NULL sinon

Definition at line 80 of file gmv-save.cc.

virtual CDart* GMap3d::CGMapVertex::load ( std::istream &  AStream,
TSaveFormat  AFormat 
)
virtual

Charge la carte à partir d'un flot. Les brins qui composent la carte avant le chargement ne sont pas détruits.

Parameters
AStreamUn flot dans lequel lire le contenu de la carte à charger
AFormatUn type de format de fichier
Returns
Un brin de la carte chargée si le chargement s'est bien déroulé, NULL sinon
CDart * CGMapVertex::load ( const char *  AFilename)

Charge la carte à partir d'un fichier en détectant automatiquement le format.. Les brins qui composent la carte avant le chargement ne sont pas détruits.

Parameters
AFilenameUn nom de fichier
Returns
Un brin de la carte chargée si le chargement s'est bien déroulé, NULL sinon

Definition at line 255 of file gmv-save.cc.

void CGMapVertex::markCellsToBeExtrudedByNormal ( int  ADim,
int  AMarkNumberSrce,
int  AMarkNumberDest 
)
protectedvirtual

Marque un brin sur deux des cellules de dimension ADim qui doivent être extrudées. Voir CGMapGeneric::markCellsToBeExtruded pour plus d'informations.

Parameters
ADimUne dimension (0, 1 ou 2)
AMarkNumberSrceUn numéro de marque source
AMarkNumberDestUn numéro de marque destination

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 80 of file gmv-extrusion.cc.

bool CGMapVertex::markNonPlanarPolylines ( int  AMarkNumber)

Marque toutes les faces non planaires de la carte.

Parameters
AMarkNumberUn numéro de marque
Returns
'vrai' si une face non plane au moins alpha été trouvée

Definition at line 92 of file gmv-polyline.cc.

CDart * CGMapVertex::materializeAxe ( CDart ADart1,
CDart ADart2 
)

Matérialise l'axe déterminé par les deux brins donnés (qui ne doivent pas être sur la même orbite sommet) en créant une nouvelle arête. L'arête créée est constituée de deux brins 0-cousus.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
Returns
Le brin de l'axe créé correspondant à ADart2

Definition at line 34 of file gmv-materialization.cc.

CDart * CGMapVertex::materializeBarycenter ( int  AMarkNumber)

Insère un brin isolé dans la carte dont les coordonnées sont données par le barycentre des sommets incidents au brins de la carte marqués avec la marque AMarkNumber.

Parameters
AMarkNumber
Returns
Le brin ayant pour plongement le barycentre

Definition at line 29 of file gmv-materialization.cc.

CDart * CGMapVertex::materializeNormalPlane ( CDart ADart1,
CDart ADart2 
)

Matérialise le plan normal du vecteur donné.

Parameters
ADart1un brin de la carte
ADart2un brin de la carte
Returns
Un brin appartenant au plan créé (un triangle)

Definition at line 75 of file gmv-materialization.cc.

CDart * CGMapVertex::materializeNormalVector ( CDart ADart)

Matérialise le vecteur normal de la face incidente au brin donné.

Parameters
ADartun brin de la carte
Returns
Le brin correspondant à la pointe du vecteur normal lorsque ce vecteur "est posé" sur le barycentre de la face incidente à ADart.

Definition at line 60 of file gmv-materialization.cc.

CDart * CGMapVertex::materializePlane ( CDart ADart1,
CDart ADart2,
CDart ADart3 
)

Matérialise le plan déterminé par les trois sommets incidentes aux brins donnés. L'objet créé est un triangle.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADart3Un brin de la carte
Returns
Un brin du plan créé

Definition at line 45 of file gmv-materialization.cc.

CDart * CGMapVertex::materializeReferential ( )

Matérialise le référentiel (OX,OY,OZ) avec 3 faces perpendiculaires 2-cousues. Chaque face est ouverte et n'est composée que de deux arêtes.

Returns
Un brin du référentiel

Definition at line 99 of file gmv-materialization.cc.

int CGMapVertex::mergeMarkedAlignedCells ( int  ADim,
int  AMarkNumber,
bool  ADeleteDarts 
)

Fusionne lorsque cela est possible les arêtes ou les faces alignées.

Parameters
ADimLa dimension (1 ou 2) des cellules à fusionner
AMarkNumberUn numéro de marque
ADeleteDartsUn booléen indiquant si la fusion doit se faire en supprimant des brins
Returns
Le nombre de fusions effectuées

Definition at line 40 of file gmv-merge.cc.

int CGMapVertex::mergeMarkedColinearEdges ( int  AMarkNumber,
bool  ADeleteDarts 
)

Fusionne lorsque cela est possible (avec une arête qui leur est incidente) les arêtes dont un brin au moins est marqué, lorsqu'elles sont alignées.

Parameters
AMarkNumberUn numéro de marque
ADeleteDartsUn booléen indiquant si la fusion doit se faire en supprimant des brins
Returns
Le nombre de fusions effectuées

Definition at line 30 of file gmv-merge.cc.

int CGMapVertex::mergeMarkedCoplanarFaces ( int  AMarkNumber,
bool  ADeleteDarts 
)

Fusionne lorsque cela est possible (avec une face qui leur est incidente) les faces dont un brin au moins est marqué, lorsqu'elles sont coplanaires.

Parameters
AMarkNumberUn numéro de marque
ADeleteDartsUn booléen indiquant si la fusion doit se faire en supprimant des brins
Returns
Le nombre de fusions effectuées

Definition at line 35 of file gmv-merge.cc.

INLINE CDart * GMap3d::CGMapVertex::newDart ( )
virtual

Crée une nouvelle instance de la classe CDartVertex.

Returns
Un nouveau brin, de type CDartVertex

Reimplemented from GMap3d::CGMapBasic.

Definition at line 39 of file gmv-inline.icc.

void CGMapVertex::normalizeParameter ( int  AMarkNumber,
int  ADirectInfoIndex,
TCoordinate  AMin,
TCoordinate  AMax 
)

Répartit sur le segment [AMin,AMax] par changement de repère 1d les valeurs (de type TCoordinate) pointées par le champ directInfo[ADirectInfoIndex] des brins porteurs d'un attribut sommet. Les sommets pris en compte sont ceux dont un brin au moins est marqué avec la marque AMarkNumber. Remarque: AMin peut être supérieur à AMax.

Parameters
AMarkNumberUn numéro de marque indiquant les sommets sélectionnés
ADirectInfoIndexUn indice indiquant où sont stockées les valeurs
AMinLa borne inférieure du segment de normalisation
AMaxLa borne supérieure du segment de normalisation

Definition at line 182 of file gmv-deformation.cc.

TCoordinate CGMapVertex::orbitLength ( CDart ADart,
TOrbit  AOrbit 
)
protected

Calcule la longueur de la circonférence d'une orbite, c'est-à-dire la somme de la longueur de toutes les arêtes qui la constituent. Ce calcul n'alpha de sens que si AOrbit==ORBIT01 ou si AOrbit==ORBIT_BORDER1 ou si AOrbit==ORBIT_BORDER2.

Parameters
ADartUn brin de la carte
AOrbitUne orbite
Returns
La longueur de la circonférence de l'orbite

Definition at line 273 of file gmv-geometry.cc.

CVertex CGMapVertex::orbitNormalVector ( CDart ADart,
TOrbit  AOrbit 
)
protected

Calcule le vecteur normal d'une orbite. Ce calcul n'alpha de sens que si AOrbit==ORBIT01 ou si AOrbit==ORBIT_BORDER1 ou si AOrbit==ORBIT_BORDER2.

Parameters
ADartUn brin de la carte
AOrbitUne orbite
Returns
Le vecteur normal de l'orbite

Definition at line 363 of file gmv-geometry.cc.

void CGMapVertex::orthoProjectOnPlane ( int  AMarkNumber,
TCoordinate  AA,
TCoordinate  AB,
TCoordinate  AC,
TCoordinate  AD 
)

Projette orthogonalement les sommets dont un brin au moins est marqué sur le plan d'équation AA * x + AB * y + AC * z + AD = 0.

Parameters
AMarkNumberUn numéro de marque
A?Les paramètres de l'équation cartésienne du plan

Definition at line 563 of file gmv-deformation.cc.

void CGMapVertex::planarScale ( int  AMarkNumber,
const CVertex APlaneVertex,
const CVertex APlaneNormal,
TCoordinate  ACoef,
int  ADirectInfoVertex = -1,
int  ADirectInfoParam = -1 
)

Applique une homothétie de coefficient ACoef selon le plan déterminé par le sommet APlaneVertex et le vecteur APlaneNormal sur tous les sommets marqués avec la marque AMarkNumber.

Si ADirectInfoVertex est positif ou nul, l'homothétie est appliquée sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, l'attribut sommet est directement modifié.

Si ADirectInfoParam est positif ou nul, l'étirement est pondéré avec la valeur stockée dans le champ directInfo[ADirectInfoParam].

Parameters
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer l'homothétie
APlaneVertexUn sommet du plan d'homothétie
APlaneNormalUn vecteur normal du plan d'homothétie
ACoefLe coefficient d'homothétie
ADirectInfoVertexIndique où récupérer les coordonnées initiales
ADirectInfoParamIndique où récupérer le paramètre de pondération

! APlaneNormal.isNull()

Definition at line 509 of file gmv-deformation.cc.

void CGMapVertex::plate ( CDart ADart1,
CDart ADart2,
int  ADimbool,
bool  ARotateCells = true,
bool  AScaleCells = true,
bool  ATranslateCells = true 
)

Plaque les cellules de dimension ADim incidentes aux brins ADart1 et ADart2. La cellule incidentes à ADart1 voit son plongement modifié pour se plaquer à la cellule incidente à ADart2. Le plongement de la cellule incidente à ADart2 n'est pas modifié. Le placage tient compte de l'état des booléen 'orientation', 'scale' et 'position'.

Parameters
ADart1Un brin de la carte
ADart2Un brin de la carte
ADimUne dimension
ARotateCellsUn booléen pour modifier ou non l'orientation
AScaleCellsUn booléen pour modifier ou non la taille
ATranslateCellsUn booléen pour modifier ou non la position

Definition at line 48 of file gmv-plating.cc.

void CGMapVertex::pointDirectInfoToAttributeVertex ( int  ADirectInfoIndex)

Pour chaque brin b de la carte, fait pointer le champ directInfo numéro ADirectInfoNumber vers le plongement sommet du sommet auquel b appartient.

Parameters
ADirectInfoIndexUn indice indiquant quel directInfo utiliser

Definition at line 125 of file gmv-direct-info.cc.

void CGMapVertex::pointDirectInfoToAttributeVertex ( int  ADirectInfoIndex,
CDart ADart 
)

Pour chaque brin b de l'orbite sommet correspondant à ADart, fait pointer le champ directInfo numéro ADirectInfoNumber vers le plongement sommet du sommet auquel b appartient.

Parameters
ADirectInfoIndexUn indice indiquant quel directInfo utiliser
ADartUn brin de la carte

Definition at line 146 of file gmv-direct-info.cc.

void CGMapVertex::pointDirectInfoToAttributeVertex ( int  ADirectInfoIndex,
CDart ADart,
TOrbit  AOrbit 
)

Pour chaque brin b de l'orbite AOrbit correspondant à ADart, fait pointer le champ directInfo numéro ADirectInfoNumber de tous les brins du sommet vers le plongement de ce sommet.

Parameters
ADirectInfoIndexUn indice indiquant quel directInfo utiliser
ADartUn brin de la carte
AOrbitUne orbite

Definition at line 159 of file gmv-direct-info.cc.

CDart * CGMapVertex::prolongPolyline ( CDart ADart,
const CVertex AVertex 
)

Prolonge une polyligne (en rajoutant une arête à son bout). Si ADart vaut NULL, crée un premier brin d'une nouvelle polyligne.

Parameters
ADartUn brin constituant le bout d'une polyligne
AVertexLe plongement du sommet à rajouter au bout de la polyligne

Definition at line 29 of file gmv-polyline.cc.

CDart * CGMapVertex::quadrangulateFace ( CDart ADart,
bool  AInsertVertices = true 
)
virtual

Surcharge la méthode 'quadrangulateFace' de la classe CGMapGeneric pour plonger le sommet qu'elle crée.

Remarque: Si AInsertVertices vaut 'vrai', les sommets insérés sur les arêtes de la face sont déjà plongés (car insertVertex est virtuelle).

Parameters
ADartUn brin de la carte
Returns
Un brin du sommet topologique créé

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 28 of file gmv-quadrangulation.cc.

CVertex CGMapVertex::regionNormalVector ( CDart ADart,
int  ADim 
)

Calcule la moyenne des vecteurs normaux des faces (restreintes au volume auquel appartient ADart) incidentes à la cellule de dimension ADim à laquelle ADart appartient. Les faces 3-cousues ne sont pas prises en compte dans le calcul. Le vecteur calculé peut être nul.

Parameters
ADartUn brin de la carte
ADimUne dimension (0, 1 ou 2)
Returns
La moyenne des vecteurs normaux des faces de la région donnée

Definition at line 509 of file gmv-geometry.cc.

CVertex CGMapVertex::regionNormalVector ( CDart ADart,
int  ADim,
int  AMarkNumber 
)

Calcule la moyenne des vecteurs normaux des faces incidentes à la cellule de dimension ADim à laquelle ADart appartient. Seules les faces dont un brin commun avec l'orbite (ADart, ORBIT_INF[ADart]) est marqué sont prises en compte. Le vecteur calculé peut être nul.

Parameters
ADartUn brin de la carte
ADimUne dimension (0, 1 ou 2)
AMarkNumberUn numéro de marque
Returns
La moyenne des vecteurs normaux des faces de la région donnée

Definition at line 567 of file gmv-geometry.cc.

INLINE CAttributeVertex * GMap3d::CGMapVertex::removeVertex ( CDart ADart)

Détache le plongement sommet du sommet topologique incident à ADart. Si le sommet n'est pas plongé, la méthode retourne NULL.

Parameters
ADartUn brin de la carte

Definition at line 142 of file gmv-inline.icc.

void CGMapVertex::rotate ( int  AMarkNumber,
const CVertex AAxeVertex,
const CVertex AAxeDirection,
TCoordinate  AAngle,
int  ADirectInfoVertex = -1,
int  ADirectInfoParam = -1 
)

Applique une rotation sur tous les sommets marqués avec la marque AMarkNumber. Un sommet est modifié si au moins un brin de son orbite sommet est marqué.

Si ADirectInfoVertex est positif ou nul, la rotation est appliquée sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, l'attribut sommet est directement modifié.

Si ADirectInfoParam est positif ou nul, l'angle de rotation est pondéré avec la valeur stockée dans le champ directInfo[ADirectInfoParam].

Parameters
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer la rotation
AAxeVertexUn sommet de l'axe de rotation
AAxeDirectionUn vecteur directeur de l'axe de rotation
ADirectInfoVertexIndique où récupérer les coordonnées initiales
ADirectInfoParamIndique où récupérer le paramètre de pondération

!ALineDirection.isNull()

Definition at line 344 of file gmv-deformation.cc.

bool CGMapVertex::save ( const char *  AFilename,
TSaveFormat  AFormat = AsciiFormat 
)

Sauvegarde le contenu de la carte dans un fichier.

Parameters
AFilenameUn nom de fichier
AFormatUn type de format de sauvegarde
Returns
'vrai' si la sauvegarde s'est bien déroulée

Definition at line 67 of file gmv-save.cc.

virtual bool GMap3d::CGMapVertex::save ( std::ostream &  AStream,
TSaveFormat  AFormat = AsciiFormat 
)
virtual

Sauvegarde le contenu de la carte dans un flot.

Parameters
AStreamUn flot dans lequel écrire le contenu de la carte
AFormatUn type de format de sauvegarde
Returns
'vrai' si la sauvegarde s'est bien déroulée
void CGMapVertex::scale ( int  AMarkNumber,
const CVertex ACenter,
const CVertex ACoef,
int  ADirectInfoVertex = -1,
int  ADirectInfoParam = -1 
)

Applique un étirement sur tous les sommets marqués avec la marque AMarkNumber. Un sommet est modifié si au moins un brin de son orbite sommet est marqué.

Si ADirectInfoVertex est positif ou nul, l'étirement est appliqué sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, l'attribut sommet est directement modifié.

Si ADirectInfoParam est positif ou nul, l'étirement est pondéré avec la valeur stockée dans le champ directInfo[ADirectInfoParam].

Parameters
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer l'étirement
ACenterLe centre d'étirement
ACoefLes coefficients d'étirement
ADirectInfoVertexIndique où récupérer les coordonnées initiales
ADirectInfoParamIndique où récupérer le paramètre de pondération

Definition at line 397 of file gmv-deformation.cc.

void CGMapVertex::scale ( int  AMarkNumber,
const CVertex ACenter,
TCoordinate  ACoef,
int  ADirectInfoVertex = -1,
int  ADirectInfoParam = -1 
)

Applique un étirement sur tous les sommets marqués avec la marque AMarkNumber. Pour plus d'informations, voir la méthode 'scale' ci-dessus.

Remarque: La différence avec la méthode précédente réside dans le coefficient d'homothétie. Ici ce coefficient est un nombre réel, ce qui correspond à une homothétie avec des coefficients identiques dans les trois dimensions.

Parameters
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer l'étirement
ACenterLe centre d'étirement
ACoefLe coefficient d'étirement
ADirectInfoVertexIndique où récupérer les coordonnées initiales
ADirectInfoParamIndique où récupérer le paramètre de pondération

Definition at line 446 of file gmv-deformation.cc.

INLINE void GMap3d::CGMapVertex::setBurstCoef ( int  ADim,
TCoordinate  ACoef 
)

Positionne le coefficient d'éclatement de la dimension ADim à la valeur ACoef.

Parameters
ADimUne dimension
ACoefUne valeur comprise entre 0 et 1.

Definition at line 75 of file gmv-inline.icc.

void CGMapVertex::setBurstMethod ( TBurstMethod  AMethod)

Sélection de la méthode de calcul des sommets éclatés :

Definition at line 28 of file gmv-burstview.cc.

INLINE void GMap3d::CGMapVertex::setBurstVertex ( CDart ADart,
const CVertex AVertex 
)

Affecte le plongement éclaté de la première extrémité du brin ADart donné.

Parameters
ADartUn brin de la carte
AVertexLes nouvelles coordonnées

Definition at line 159 of file gmv-inline.icc.

INLINE void GMap3d::CGMapVertex::setVertex ( CDart ADart,
const CVertex AVertex 
)

Affecte le plongement AVertex au brin ADart.

Parameters
ADartUn brin de la carte
AVertexUn sommet

findVertex(ADart)==NULL

Definition at line 102 of file gmv-inline.icc.

INLINE void GMap3d::CGMapVertex::setVertex ( CDart ADart,
CAttributeVertex AVertex 
)

Definition at line 111 of file gmv-inline.icc.

bool CGMapVertex::shouldSwapEdge ( CDart AEdge,
int  AVertexDI = -1 
)
Returns
vrai ssi l'arête incidente à AEdge doit être inversée.

Definition at line 190 of file gmv-triangulation.cc.

unsigned int CGMapVertex::simplify2DObject ( int  AMark0,
int  AMark1 
)

Simplify the 2G-map by removing each degree two edge, each dangling edge, and then each degree two vertex. There is no fictive edge shifting. AMarki is a mark used to mark darts deleted by i-removal. If AMarki==-1, corresponding darts are removed from the map. Otherwise, they are not removed but only marked.

Returns
the number of removed darts.

Definition at line 1819 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify2DObject ( unsigned int  optosimplify = EDGE_REMOVAL | VERTEX_REMOVAL | EDGE_CONTRACTION | FACE_CONTRACTION)

Simplify the 2G-map. optosimplify contains a value giving which cells will be simplified: a or between NONE,EDGE_REMOVAL,VERTEX_REMOVAL, EDGE_CONTRACTION, FACE_CONTRACTION.

Definition at line 3032 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify2DObjectContraction ( unsigned int  optosimplify)

Simplify the map using removal operations only.

Definition at line 2335 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify2DObjectRemoval ( unsigned int  optosimplify)

Simplify the map using removal operations only.

Definition at line 2033 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify3DObject ( int  AMark0,
int  AMark1,
int  AMark2 = -1 
)

Simplify the map by removing each degree two face, each dangling face, then each degree two edge, each dangling edge, and then each degree two vertex. There is no fictive face or edge shifting. AMarki is a mark used to mark darts deleted by i-removal. If AMarki==-1, corresponding darts are removed from the map. Otherwise, they are not removed but only marked.

Returns
the number of "removed" darts.

Definition at line 102 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify3DObject ( unsigned int  optosimplify = FACE_REMOVAL | EDGE_REMOVAL | VERTEX_REMOVAL | EDGE_CONTRACTION | FACE_CONTRACTION | VOLUME_CONTRACTION)

Simplify the 3G-map. Equivalent to simplify3DObject(-1,-1,-1) but optimized. optosimplify contains a value giving which cells will be simplified: a or between NONE,FACE_REMOVAL,EDGE_REMOVAL,VERTEX_REMOVAL, EDGE_CONTRACTION, FACE_CONTRACTION, VOLUME_CONTRACTION.

Definition at line 1813 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify3DObjectContraction ( unsigned int  optosimplify)

Simplify the map using removal operations only.

Definition at line 864 of file gmv-merge.cc.

unsigned int CGMapVertex::simplify3DObjectRemoval ( unsigned int  optosimplify)

Simplify the map using removal operations only.

Definition at line 422 of file gmv-merge.cc.

void CGMapVertex::stopUp ( CDart ADart,
int  ADim 
)
virtual

Surcharge la méthode 'stopUp' de la classe CGMapGeneric, pour plonger les sommets créés dans le cas de bouchage de 0-bord.

Parameters
ADartUn brin quelconque d'un bord de dimension ADim
ADimUne dimension

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 28 of file gmv-stop-up.cc.

bool CGMapVertex::swapEdge ( CDart AEdge,
int  AVertexDI = -1 
)

Tourne l'arête incidente à AEdge. Si AVertexDI est != -1, met à jour le directInfo correspondant pour qu'il pointe sur les bons sommets. L'arête est tournée selon le schéma suivant: p[0] /|#\ / || \ / || \ p[1] === === p[3] \ || / \ || / ||/ p[2]

brin AEdge

|| arête d'origine == futur arête

Definition at line 224 of file gmv-triangulation.cc.

int CGMapVertex::thickenMarkedDarts ( int  AMarkNumber,
TCoordinate  AExtrusionCoef 
)

Épaissit les brins marqués avec la marque AMarkNumber. La méthode se réserve 2 champs directInfo puis appelle 'CGMapGeneric::thickenMarkedDarts'. Elle calcule ensuite le plongement des sommets créés à l'aide de la méthode 'regionNormalVector' (le vecteur obtenu est pondéré avec le coefficient AExtrusionCoef) puis libère les champs directInfo réservés.

Parameters
AMarkNumberUn numéro de marque
AExtrusionCoefUn coefficient d'épaississement utilisé pour pondérer le vecteur d'extrusion.
Returns
Le nombre de brins épaissis

Definition at line 31 of file gmv-thickening.cc.

void CGMapVertex::translate ( int  AMarkNumber,
const CVertex AVector,
int  ADirectInfoVertex = -1,
int  ADirectInfoParam = -1 
)

Applique une translation sur tous les sommets marqués avec la marque AMarkNumber. Un sommet est modifié si au moins un brin de son orbite sommet est marqué.

Si ADirectInfoVertex est positif ou nul, la translation est appliquée sur le sommet stocké dans le champ directInfo correspondant du brin, et le résultat est placé dans l'attribut sommet (stocké dans la liste d'embeddings). Si ADirectInfoVertex est strictement négatif, l'attribut sommet est directement modifié.

Si ADirectInfoParam est positif ou nul, la translation est pondérée avec la valeur stockée dans le champ directInfo[ADirectInfoParam].

Parameters
AMarkNumberUn numéro de marque permettant de reconnaître les sommets sur lesquels il faut appliquer la translation
AVectorLe vecteur de translation
ADirectInfoVertexIndique où récupérer les coordonnées initiales
ADirectInfoParamIndique où récupérer le paramètre de pondération

Definition at line 295 of file gmv-deformation.cc.

CDart * CGMapVertex::triangulateEdge ( CDart ADart)
virtual

Surcharge la méthode 'triangulateEdge' de la classe CGMapGeneric pour plonger le sommet qu'elle crée.

Parameters
ADartUn brin de la carte
Returns
Un brin du sommet topologique créé

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 31 of file gmv-triangulation.cc.

CDart * CGMapVertex::triangulateFace ( CDart ADart)
virtual

Surcharge la méthode 'triangulateFace' de la classe CGMapGeneric pour plonger le sommet qu'elle crée.

Parameters
ADartUn brin de la carte
Returns
Un brin du sommet topologique créé

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 42 of file gmv-triangulation.cc.

void CGMapVertex::triangulateGeoFace ( CDart AFace,
int  ANewEdgesMark = -1,
int  AVertexDI = -1 
)

Triangulation "géométrique" de la face incidente à AFace. Si ANewEdgesMark !=-1, les nouvelles arêtes sont marquées avec cette marque. Si AVertexDI, met à jour le directInfo correspondant pour qu'il pointe sur les bons sommets.

Definition at line 67 of file gmv-triangulation.cc.

void CGMapVertex::triangulateMarkedFaces ( int  AMark,
int  ANewEdgesMark = -1,
int  AVertexDI = -1 
)

Triangulation "géométrique" de toutes les faces marquées avec AMark. Si ANewEdgesMark !=-1, les nouvelles arêtes sont marquées avec cette marque. Si AVertexDI, met à jour le directInfo correspondant pour qu'il pointe sur les bons sommets.

Definition at line 154 of file gmv-triangulation.cc.

CDart * CGMapVertex::triangulateVolume ( CDart ADart)
virtual

Surcharge la méthode 'triangulateVolume' de la classe CGMapGeneric pour plonger le sommet qu'elle crée.

Parameters
ADartUn brin de la carte
Returns
Un brin du sommet topologique créé

Reimplemented from GMap3d::CGMapGeneric.

Definition at line 53 of file gmv-triangulation.cc.

void CGMapVertex::unmarkMotifMark ( CDart ADart,
int  AMark,
int  AIndex,
CGMapVertex AMap,
CDart ADart2,
int  AMark2 
)

Met le champ directinfo du motif d'origine ADart à Null. Le parcours du motif utilise la marque AMark. En même temps, la carte AMap est démarqué pour la marque AMark2.

Definition at line 193 of file gmv-isomorphisme.cc.

void CGMapVertex::updateAllBurstDarts ( )

Met à jour le plongement éclaté de tous les brins de la carte.

Definition at line 37 of file gmv-burstview.cc.

void CGMapVertex::updateDirectInfoWithVertex ( int  ADirectInfoNumber)

Copie les attributs sommets vers le champ directInfo spécifié, pour les brins dont ce champ est non NULL.

Attention: ces brins sélectionnés devraient être les mêmes qu'au moment de l'appel à duplicateVertexToDirectInfo!

Parameters
ADirectInfoNumberUn indice indiquant quel directInfo utiliser

Definition at line 116 of file gmv-direct-info.cc.

void CGMapVertex::updateMarkedBurstDarts ( int  AMarkNumber,
bool  AUpdateIncidentVolumes = true 
)

Met à jour le plongement éclaté des brins marqués avec la marque AMarkNumber. Si AUpdateIncidentVolumes vaut 'vrai', c'est le plongement éclaté de tous les brins des volumes incidents à un sommet dont un brin au moins est marqué avec la marque AMarkNumber qui est mis à jour.

Parameters
AMarkNumberUn numéro de marque
AUpdateIncidentVolumesUn booléen

Definition at line 46 of file gmv-burstview.cc.

void CGMapVertex::updateMarkedDartsMethodScale ( int  AMarkNumber,
bool  AUpdateIncidentVolumes 
)
protected

Definition at line 63 of file gmv-burstview.cc.

void CGMapVertex::updateMarkedDartsMethodShift ( int  AMarkNumber,
bool  AUpdateIncidentVolumes 
)
protected

Il faut debugger cette méthode et la suivante

Definition at line 215 of file gmv-burstview.cc.

INLINE void GMap3d::CGMapVertex::updateVertex ( CDart ADart,
const CVertex AVertex 
)

Ecrase s'il existe le plongement sommet du brin ADart avec le sommet AVertex. Si le sommet topologique incident à ADart n'est pas plongé, la méthode est équivalente à un appel à 'setVertex'.

Parameters
ADartUn brin de la carte
AVertexUn sommet

Definition at line 121 of file gmv-inline.icc.


The documentation for this class was generated from the following files: