CFx SDK Documentation
2023 SP0
SDK
CFx
dd_inc
FacetModeler
include
Modeler
FMMdlIterators.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_ITERATORS_H__
25
#define __FMMDL_ITERATORS_H__
26
27
#include "
Modeler/FMMdlBody.h
"
28
#include "
Modeler/FMMdlVertex.h
"
29
#include "
Modeler/FMMdlEdge.h
"
30
#include "
Modeler/FMMdlFace.h
"
31
35
namespace
FacetModeler
36
{
37
41
class
FMGEOMETRY_API
VertexIterator
42
{
43
public
:
47
VertexIterator
(
const
Body
* pBody );
48
52
bool
done
();
53
57
void
next
();
58
62
Vertex
*
get
();
63
64
private
:
65
Body
* m_pOwner;
66
Vertex
* m_pCurrent;
67
Vertex
* m_pNext;
68
Vertex
* m_pFirst;
69
};
70
74
class
FMGEOMETRY_API
EdgeBodyIterator
75
{
76
public
:
79
EdgeBodyIterator
(
const
Body
* pBody );
80
84
bool
done
();
85
89
void
next
(
bool
* bNextLoop = 0 );
90
94
Edge
*
get
();
95
96
private
:
97
Body
* m_pOwner;
98
Face
* m_pCurrentFace;
99
Face
* m_pFirstFace;
100
OdUInt32
m_iCurrentLoop;
101
Edge
* m_pFirst;
102
Edge
* m_pCurrent;
103
Edge
* m_pNext;
104
};
105
109
class
FMGEOMETRY_API
EdgeFaceIterator
110
{
111
public
:
115
EdgeFaceIterator
(
const
Face
* pFace );
116
120
bool
done
();
121
125
void
next
(
bool
* bNextLoop = 0 );
126
130
Edge
*
get
();
131
132
private
:
133
Face
* m_pFace;
134
OdUInt32
m_iCurrentLoop;
135
Edge
* m_pFirst;
136
Edge
* m_pCurrent;
137
Edge
* m_pNext;
138
};
139
143
class
FMGEOMETRY_API
FaceIterator
144
{
145
public
:
149
FaceIterator
(
const
Body
* pBody );
150
154
bool
done
();
155
159
void
next
();
160
164
Face
*
get
();
165
166
private
:
167
Body
* m_pOwner;
168
Face
* m_pFirst;
169
Face
* m_pCurrent;
170
Face
* m_pNext;
171
};
172
173
}
174
175
#endif
//__FMMDL_ITERATORS_H__
FMMdlBody.h
FMMdlEdge.h
FMMdlFace.h
FMMdlVertex.h
OdUInt32
unsigned int OdUInt32
Definition:
OdPlatformSettings.h:783
FacetModeler::Body
Definition:
FMMdlBody.h:47
FacetModeler::EdgeBodyIterator
Definition:
FMMdlIterators.h:75
FacetModeler::EdgeBodyIterator::done
bool done()
FacetModeler::EdgeBodyIterator::get
Edge * get()
FacetModeler::EdgeBodyIterator::EdgeBodyIterator
EdgeBodyIterator(const Body *pBody)
FacetModeler::EdgeBodyIterator::next
void next(bool *bNextLoop=0)
FacetModeler::EdgeFaceIterator
Definition:
FMMdlIterators.h:110
FacetModeler::EdgeFaceIterator::EdgeFaceIterator
EdgeFaceIterator(const Face *pFace)
FacetModeler::EdgeFaceIterator::get
Edge * get()
FacetModeler::EdgeFaceIterator::done
bool done()
FacetModeler::EdgeFaceIterator::next
void next(bool *bNextLoop=0)
FacetModeler::Edge
Definition:
FMMdlEdge.h:43
FacetModeler::Face
Definition:
FMMdlFace.h:47
FacetModeler::FaceIterator
Definition:
FMMdlIterators.h:144
FacetModeler::FaceIterator::FaceIterator
FaceIterator(const Body *pBody)
FacetModeler::FaceIterator::next
void next()
FacetModeler::FaceIterator::done
bool done()
FacetModeler::FaceIterator::get
Face * get()
FacetModeler::Vertex
Definition:
FMMdlVertex.h:42
FacetModeler::VertexIterator
Definition:
FMMdlIterators.h:42
FacetModeler::VertexIterator::get
Vertex * get()
FacetModeler::VertexIterator::done
bool done()
FacetModeler::VertexIterator::VertexIterator
VertexIterator(const Body *pBody)
FacetModeler::VertexIterator::next
void next()
FacetModeler
Definition:
AECDbOpeningBase.h:33
Generated on Thu Feb 24 2022 15:09:29