Go to the documentation of this file.
14 #ifndef PERSPECTIVELENS_H
15 #define PERSPECTIVELENS_H
35 virtual PT(
Lens) make_copy()
const;
40 virtual bool do_extrude_depth(
const CData *cdata,
const LPoint3 &point2d,
41 LPoint3 &point3d)
const;
42 virtual void do_compute_projection_mat(Lens::CData *lens_cdata);
44 virtual PN_stdfloat fov_to_film(PN_stdfloat fov, PN_stdfloat focal_length,
bool horiz)
const;
45 virtual PN_stdfloat fov_to_focal_length(PN_stdfloat fov, PN_stdfloat film_size,
bool horiz)
const;
46 virtual PN_stdfloat film_to_fov(PN_stdfloat film_size, PN_stdfloat focal_length,
bool horiz)
const;
49 static void register_with_read_factory();
56 return get_class_type();
58 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
62 static void init_type() {
65 Lens::get_class_type());
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual bool is_linear() const
Returns true if the lens represents a linear projection (e.g.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
Base class for objects that can be written to and read from Bam files.
TypeHandle is the identifier used to differentiate C++ class types.
An instance of this class is passed to the Factory when requesting it to do its business and construc...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A base class for any number of different kinds of lenses, linear and otherwise.
A perspective-type lens: a normal camera.
virtual bool is_perspective() const
Returns true if the lens represents a perspective projection (i.e.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.