From ce2a4852d6484ef0e95fbcf725ea7e13a1018a1a Mon Sep 17 00:00:00 2001 From: David Rose Date: Tue, 23 Jan 2001 05:19:26 +0000 Subject: [PATCH] *** empty log message *** --- panda/src/gobj/orthoProjection.h | 4 +++- panda/src/gobj/perspectiveProjection.h | 4 +++- panda/src/gobj/projection.h | 4 +++- panda/src/mathutil/Sources.pp | 1 + panda/src/mathutil/frustum.I | 1 - panda/src/mathutil/frustum.N | 2 ++ panda/src/mathutil/frustum.h | 5 +++-- 7 files changed, 15 insertions(+), 6 deletions(-) create mode 100644 panda/src/mathutil/frustum.N diff --git a/panda/src/gobj/orthoProjection.h b/panda/src/gobj/orthoProjection.h index ba277ca9be..7a187300f5 100644 --- a/panda/src/gobj/orthoProjection.h +++ b/panda/src/gobj/orthoProjection.h @@ -17,8 +17,10 @@ // Description : An orthographic-type projection, with a frustum. //////////////////////////////////////////////////////////////////// class EXPCL_PANDA OrthoProjection : public Projection { -public: +PUBLISHED: INLINE OrthoProjection(const Frustumf &frustum); + +public: virtual Projection *make_copy() const; virtual LMatrix4f get_projection_mat(CoordinateSystem cs = CS_default) const; diff --git a/panda/src/gobj/perspectiveProjection.h b/panda/src/gobj/perspectiveProjection.h index abddbacd10..16ba37cd86 100644 --- a/panda/src/gobj/perspectiveProjection.h +++ b/panda/src/gobj/perspectiveProjection.h @@ -17,8 +17,10 @@ // Description : A perspective-type projection, with a frustum. //////////////////////////////////////////////////////////////////// class EXPCL_PANDA PerspectiveProjection : public Projection { -public: +PUBLISHED: INLINE PerspectiveProjection(const Frustumf &frustum); + +public: virtual Projection *make_copy() const; virtual LMatrix4f get_projection_mat(CoordinateSystem cs = CS_default) const; diff --git a/panda/src/gobj/projection.h b/panda/src/gobj/projection.h index 3ead5fb9a3..4a8e2b181a 100644 --- a/panda/src/gobj/projection.h +++ b/panda/src/gobj/projection.h @@ -21,9 +21,11 @@ class BoundingVolume; // perspective and orthographic projections. //////////////////////////////////////////////////////////////////// class EXPCL_PANDA Projection : public TypedReferenceCount { +PUBLISHED: + virtual Projection *make_copy() const=0; + public: virtual LMatrix4f get_projection_mat(CoordinateSystem cs = CS_default) const=0; - virtual Projection *make_copy() const=0; virtual Geom* make_geometry(const Colorf &color = Colorf(0.0, 1.0, 0.0, 1.0), CoordinateSystem cs = CS_default) const; diff --git a/panda/src/mathutil/Sources.pp b/panda/src/mathutil/Sources.pp index a68c47aa1d..96a7be4047 100644 --- a/panda/src/mathutil/Sources.pp +++ b/panda/src/mathutil/Sources.pp @@ -16,6 +16,7 @@ config_mathutil.h \ fftCompressor.cxx fftCompressor.h \ finiteBoundingVolume.cxx finiteBoundingVolume.h \ + frustum.I frustum.h \ geometricBoundingVolume.I geometricBoundingVolume.cxx \ geometricBoundingVolume.h look_at.I look_at.cxx look_at.h \ omniBoundingVolume.I omniBoundingVolume.cxx omniBoundingVolume.h \ diff --git a/panda/src/mathutil/frustum.I b/panda/src/mathutil/frustum.I index 5734213f2e..396f7f08f1 100644 --- a/panda/src/mathutil/frustum.I +++ b/panda/src/mathutil/frustum.I @@ -6,7 +6,6 @@ //////////////////////////////////////////////////////////////////// // Includes //////////////////////////////////////////////////////////////////// -#include "frustum.h" #include "mathutil.h" #include "config_mathutil.h" diff --git a/panda/src/mathutil/frustum.N b/panda/src/mathutil/frustum.N new file mode 100644 index 0000000000..40aeca57bf --- /dev/null +++ b/panda/src/mathutil/frustum.N @@ -0,0 +1,2 @@ +forcetype Frustum +forcetype Frustum diff --git a/panda/src/mathutil/frustum.h b/panda/src/mathutil/frustum.h index f961ceeb00..122540c3db 100644 --- a/panda/src/mathutil/frustum.h +++ b/panda/src/mathutil/frustum.h @@ -23,7 +23,7 @@ //////////////////////////////////////////////////////////////////// template class EXPCL_PANDA Frustum { -public: +PUBLISHED: Frustum(); void make_ortho_2D(void); @@ -44,7 +44,8 @@ public: void get_perspective_params(P_numtype &xfov, P_numtype &yfov, P_numtype &aspect, P_numtype &fnear, P_numtype &ffar) const; - + +public: LMatrix4 get_perspective_projection_mat(CoordinateSystem cs = CS_default) const;