15 #ifndef CYLINDRICALLENS_H 16 #define CYLINDRICALLENS_H 18 #include "pandabase.h" 45 INLINE CylindricalLens(
const CylindricalLens ©);
46 INLINE
void operator = (
const CylindricalLens ©);
49 virtual PT(
Lens) make_copy()
const;
52 virtual bool do_extrude(
const Lens::CData *lens_cdata,
const LPoint3 &point2d,
54 virtual bool do_extrude_vec(
const Lens::CData *lens_cdata,
const LPoint3 &point2d,
56 virtual bool do_project(
const Lens::CData *lens_cdata,
59 virtual PN_stdfloat fov_to_film(PN_stdfloat fov, PN_stdfloat focal_length,
bool horiz)
const;
60 virtual PN_stdfloat fov_to_focal_length(PN_stdfloat fov, PN_stdfloat film_size,
bool horiz)
const;
61 virtual PN_stdfloat film_to_fov(PN_stdfloat film_size, PN_stdfloat focal_length,
bool horiz)
const;
65 return get_class_type();
67 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
71 static void init_type() {
73 register_type(_type_handle,
"CylindricalLens",
74 Lens::get_class_type());
81 #include "cylindricalLens.I" A base class for any number of different kinds of lenses, linear and otherwise.
This is a three-component vector distance (as opposed to a three-component point, which represents a ...
This is a three-component point in space (as opposed to a three-component vector, which represents a ...
TypeHandle is the identifier used to differentiate C++ class types.