Free Electron
StratumPlane.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __terrain_StratumPlane_h__
8 #define __terrain_StratumPlane_h__
9 namespace fe
10 {
11 namespace ext
12 {
13 
14 /**************************************************************************//**
15  @brief Flat Elevation
16 
17  @ingroup terrain
18 *//***************************************************************************/
19 class FE_DL_EXPORT StratumPlane: virtual public StratumBase
20 {
21  public:
22  StratumPlane(void):
23  m_time(0.0f) {}
24 virtual ~StratumPlane(void) {}
25 
26  //* As StratumI
27 virtual void setTime(Real time) { m_time=time; }
28 
29 virtual Real height(Real x,Real y) const { return offset(); }
30 virtual SpatialVector normal(Real x,Real y) const
31  { return SpatialVector(0.0f,0.0f,1.0f); }
32 
33 virtual void sample(Real startx,Real starty,Real incx,Real incy,
34  U32 vertx,U32 verty,
35  SpatialVector* pVertex,SpatialVector* pNormal);
36 
37  protected:
38  Real m_time;
39 };
40 
41 } /* namespace ext */
42 } /* namespace fe */
43 
44 #endif /* __terrain_StratumPlane_h__ */
Flat Elevation.
Definition: StratumPlane.h:19
kernel
Definition: namespace.dox:3
Common Class for Elevation.
Definition: StratumBase.h:19