CFx SDK Documentation  2023 SP0
FMMdlVertex.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2015, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2015 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 #ifndef __FMMDL_VERTEX_H__
25 #define __FMMDL_VERTEX_H__
26 
27 #include "Modeler/FMMdlEntity.h"
28 
32 namespace FacetModeler
33 {
34 
35  class VertexSurfData;
36  class Surface;
37 
41 class FMGEOMETRY_API Vertex : public Entity
42 {
43  public:
47  Vertex( const OdGePoint3d& ptPoint, Body* pBody );
48 
52  const OdGePoint3d& point() const;
53 
57  void setPoint( const OdGePoint3d& ptPoint );
58 
59  bool at( const Surface* pSurface ) const;
60 
61  void normal( const Face& atF, OdGeVector3d& normal ) const;
62 
63  void addSurfaceData( Surface* pSurface );
64 
65  void removeSurfaceData( Surface* pSurface );
66 
70  Vertex* prev() const;
71 
75  Vertex* next() const;
76 
78 
79  private:
80  Vertex();
81  Vertex(const Vertex&);
82  Vertex& operator=(const Vertex&);
83  Vertex* clone( Body& to ) const;
84 
85  public: // TEST TEST
87 
90  VertexSurfData* m_pSurfData;
91 
92  friend class Body;
93  friend class BodyImpl;
94 };
95 
96 }
97 
98 #endif //__FMMDL_VERTEX_H__
VertexSurfData * m_pSurfData
Definition: FMMdlVertex.h:90
void removeSurfaceData(Surface *pSurface)
Vertex(const OdGePoint3d &ptPoint, Body *pBody)
void normal(const Face &atF, OdGeVector3d &normal) const
Vertex * next() const
void setPoint(const OdGePoint3d &ptPoint)
OdGePoint3d m_pt
Definition: FMMdlVertex.h:86
void addSurfaceData(Surface *pSurface)
Vertex * prev() const
const OdGePoint3d & point() const
bool at(const Surface *pSurface) const