Changeset 13041 for OpenSceneGraph/trunk/include/osg/ComputeBoundsVisitor
- Timestamp:
- 03/21/12 18:36:20 (15 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/include/osg/ComputeBoundsVisitor
r12139 r13041 1 /* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield 1 /* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield 2 2 * 3 * This library is open source and may be redistributed and/or modified under 4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 3 * This library is open source and may be redistributed and/or modified under 4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 5 5 * (at your option) any later version. The full license is in LICENSE file 6 6 * included with this distribution, and on the openscenegraph.org website. 7 * 7 * 8 8 * This library is distributed in the hope that it will be useful, 9 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 11 * OpenSceneGraph Public License for more details. 12 12 */ … … 26 26 27 27 ComputeBoundsVisitor(TraversalMode traversalMode = TRAVERSE_ALL_CHILDREN); 28 28 29 29 META_NodeVisitor("osg","ComputeBoundsVisitor") 30 30 31 31 virtual void reset(); 32 32 33 33 osg::BoundingBox& getBoundingBox() { return _bb; } 34 34 35 35 void getPolytope(osg::Polytope& polytope, float margin=0.1) const; 36 36 37 37 void getBase(osg::Polytope& polytope, float margin=0.1) const; 38 38 39 39 void apply(osg::Node& node); 40 40 41 41 void apply(osg::Transform& transform); 42 42 43 43 void apply(osg::Geode& geode); 44 44 45 45 inline void pushMatrix(osg::Matrix& matrix) { _matrixStack.push_back(matrix); } 46 46 47 47 inline void popMatrix() { _matrixStack.pop_back(); } 48 48 49 49 void applyDrawable(osg::Drawable* drawable); 50 50 51 51 protected: 52 52 53 53 typedef std::vector<osg::Matrix> MatrixStack; 54 54
