53class CellSheetCellIter :
public BaseCirculator<CellHandle, CellHandle> {
55 typedef BaseCirculator<CellHandle, CellHandle> BaseIter;
57 CellSheetCellIter(
const CellHandle& _ref_h,
const unsigned char _orthDir,
61 CellSheetCellIter operator++(
int) {
62 CellSheetCellIter cpy = *
this;
66 CellSheetCellIter operator--(
int) {
67 CellSheetCellIter cpy = *
this;
71 CellSheetCellIter operator+(
int _n) {
72 CellSheetCellIter cpy = *
this;
73 for(
int i = 0; i < _n; ++i) {
78 CellSheetCellIter operator-(
int _n) {
79 CellSheetCellIter cpy = *
this;
80 for(
int i = 0; i < _n; ++i) {
85 CellSheetCellIter& operator+=(
int _n) {
86 for(
int i = 0; i < _n; ++i) {
91 CellSheetCellIter& operator-=(
int _n) {
92 for(
int i = 0; i < _n; ++i) {
98 CellSheetCellIter& operator++();
99 CellSheetCellIter& operator--();
102 std::vector<CellHandle> neighb_sheet_cell_hs_;
107class HalfFaceSheetHalfFaceIter :
public BaseCirculator<HalfFaceHandle,HalfFaceHandle> {
109 typedef BaseCirculator<HalfFaceHandle, HalfFaceHandle> BaseIter;
115 HalfFaceSheetHalfFaceIter operator++(
int) {
116 HalfFaceSheetHalfFaceIter cpy = *
this;
120 HalfFaceSheetHalfFaceIter operator--(
int) {
121 HalfFaceSheetHalfFaceIter cpy = *
this;
125 HalfFaceSheetHalfFaceIter operator+(
int _n) {
126 HalfFaceSheetHalfFaceIter cpy = *
this;
127 for(
int i = 0; i < _n; ++i) {
132 HalfFaceSheetHalfFaceIter operator-(
int _n) {
133 HalfFaceSheetHalfFaceIter cpy = *
this;
134 for(
int i = 0; i < _n; ++i) {
139 HalfFaceSheetHalfFaceIter& operator+=(
int _n) {
140 for(
int i = 0; i < _n; ++i) {
145 HalfFaceSheetHalfFaceIter& operator-=(
int _n) {
146 for(
int i = 0; i < _n; ++i) {
152 HalfFaceSheetHalfFaceIter& operator++();
153 HalfFaceSheetHalfFaceIter& operator--();
155 const EdgeHandle& common_edge()
const {
return common_edges_[cur_index_]; }
158 std::vector<HalfFaceHandle> adjacent_halffaces_;
159 std::vector<EdgeHandle> common_edges_;
177class HexVertexIter :
public BaseCirculator<CellHandle,
188 HexVertexIter operator++(
int) {
189 HexVertexIter cpy = *
this;
193 HexVertexIter operator--(
int) {
194 HexVertexIter cpy = *
this;
198 HexVertexIter operator+(
int _n) {
199 HexVertexIter cpy = *
this;
200 for(
int i = 0; i < _n; ++i) {
205 HexVertexIter operator-(
int _n) {
206 HexVertexIter cpy = *
this;
207 for(
int i = 0; i < _n; ++i) {
212 HexVertexIter& operator+=(
int _n) {
213 for(
int i = 0; i < _n; ++i) {
218 HexVertexIter& operator-=(
int _n) {
219 for(
int i = 0; i < _n; ++i) {
225 HexVertexIter& operator++();
226 HexVertexIter& operator--();
229 std::vector<VertexHandle> vertices_;