Caelum
CameraBoundElement.h
1 /*
2 This file is part of Caelum.
3 See http://www.ogre3d.org/wiki/index.php/Caelum
4 
5 Copyright (c) 2006-2008 Caelum team. See Contributors.txt for details.
6 
7 Caelum is free software: you can redistribute it and/or modify
8 it under the terms of the GNU Lesser General Public License as published
9 by the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11 
12 Caelum is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU Lesser General Public License for more details.
16 
17 You should have received a copy of the GNU Lesser General Public License
18 along with Caelum. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 #ifndef CAELUM__CAMERA_BOUND_ELEMENT_H
22 #define CAELUM__CAMERA_BOUND_ELEMENT_H
23 
24 #include "CaelumPrerequisites.h"
25 
26 namespace Caelum
27 {
44  class CAELUM_EXPORT CameraBoundElement
45  {
46  private:
48  bool mAutoRadius;
49 
50  public:
54 
56  virtual ~CameraBoundElement ();
57 
64  virtual void notifyCameraChanged (Ogre::Camera *cam) = 0;
65 
77  void forceFarRadius (Ogre::Real radius);
78 
83  bool getAutoRadius () const;
84 
89  void setAutoRadius ();
90 
95  static const Ogre::Real CAMERA_FAR_DISTANCE_MULTIPLIER;
96 
101  static const Ogre::Real CAMERA_NEAR_DISTANCE_MULTIPLIER;
102 
103  protected:
108  virtual void setFarRadius (Ogre::Real radius);
109  };
110 }
111 
112 #endif // CAELUM__CAMERA_BOUND_ELEMENT_H
static const Ogre::Real CAMERA_NEAR_DISTANCE_MULTIPLIER
Camera distances multiplier for the near clipping distance.
A camera-bound element.
static const Ogre::Real CAMERA_FAR_DISTANCE_MULTIPLIER
Camera distances multiplier for the far clipping distance.
Caelum namespace.
Definition: Astronomy.cpp:24