14#ifndef ORTHOGRAPHICLENS_H
15#define ORTHOGRAPHICLENS_H
30class EXPCL_PANDA_GOBJ OrthographicLens :
public Lens {
32 INLINE OrthographicLens();
35 INLINE OrthographicLens(
const OrthographicLens ©);
36 INLINE
void operator = (
const OrthographicLens ©);
43 virtual void write(std::ostream &out,
int indent_level = 0)
const;
46 virtual bool do_extrude_depth(
const CData *cdata,
const LPoint3 &point2d,
47 LPoint3 &point3d)
const;
48 virtual void do_compute_projection_mat(Lens::CData *lens_cdata);
54 static TypedWritable *make_from_bam(
const FactoryParams ¶ms);
58 return get_class_type();
60 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
64 static void init_type() {
67 Lens::get_class_type());
An instance of this class is passed to the Factory when requesting it to do its business and construc...
virtual bool is_linear() const
Returns true if the lens represents a linear projection (e.g.
virtual bool is_orthographic() const
Returns true if the lens represents a orthographic projection (i.e.
static void register_with_read_factory()
Tells the BamReader how to create objects of type Lens.
virtual PointerTo< Lens > make_copy() const
Allocates a new Lens just like this one.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...