Developer Documentation
Loading...
Searching...
No Matches
BaseEntities.cc
1/*===========================================================================*\
2 * *
3 * OpenVolumeMesh *
4 * Copyright (C) 2011 by Computer Graphics Group, RWTH Aachen *
5 * www.openvolumemesh.org *
6 * *
7 *---------------------------------------------------------------------------*
8 * This file is part of OpenVolumeMesh. *
9 * *
10 * OpenVolumeMesh is free software: you can redistribute it and/or modify *
11 * it under the terms of the GNU Lesser General Public License as *
12 * published by the Free Software Foundation, either version 3 of *
13 * the License, or (at your option) any later version with the *
14 * following exceptions: *
15 * *
16 * If other files instantiate templates or use macros *
17 * or inline functions from this file, or you compile this file and *
18 * link it with other files to produce an executable, this file does *
19 * not by itself cause the resulting executable to be covered by the *
20 * GNU Lesser General Public License. This exception does not however *
21 * invalidate any other reasons why the executable file might be *
22 * covered by the GNU Lesser General Public License. *
23 * *
24 * OpenVolumeMesh is distributed in the hope that it will be useful, *
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
27 * GNU Lesser General Public License for more details. *
28 * *
29 * You should have received a copy of the GNU LesserGeneral Public *
30 * License along with OpenVolumeMesh. If not, *
31 * see <http://www.gnu.org/licenses/>. *
32 * *
33\*===========================================================================*/
34
35
36#include <istream>
37
38#include <OpenVolumeMesh/Core/BaseEntities.hh>
39
40namespace OpenVolumeMesh {
41
42std::ostream& operator<<(std::ostream& _os, const OpenVolumeMeshEdge& _edge) {
43 return _os << "(" << _edge.from_vertex() << ", " << _edge.to_vertex() << ")";
44}
45
46std::ostream& operator<<(std::ostream& _os, const OpenVolumeMeshFace& _face) {
47 _os << "(";
48 for(std::vector<HalfEdgeHandle>::const_iterator it =
49 _face.halfedges().begin(); it < _face.halfedges().end(); ++it) {
50 _os << *it;
51 if(it + 1 < _face.halfedges().end())
52 _os << ", ";
53 }
54 _os << ")";
55 return _os;
56}
57
58std::ostream& operator<<(std::ostream& _os, const OpenVolumeMeshCell& _cell) {
59 _os << "(";
60 for(std::vector<HalfFaceHandle>::const_iterator it =
61 _cell.halffaces().begin(); it < _cell.halffaces().end(); ++it) {
62 _os << *it;
63 if(it + 1 < _cell.halffaces().end())
64 _os << ", ";
65 }
66 _os << ")";
67 return _os;
68}
69
70} // Namespace OpenVolumeMesh