14 #ifndef CYLINDRICALLENS_H 15 #define CYLINDRICALLENS_H 42 virtual PT(
Lens) make_copy()
const;
45 virtual bool do_extrude(
const Lens::CData *lens_cdata,
const LPoint3 &point2d,
46 LPoint3 &near_point, LPoint3 &far_point)
const;
47 virtual bool do_extrude_vec(
const Lens::CData *lens_cdata,
const LPoint3 &point2d,
49 virtual bool do_project(
const Lens::CData *lens_cdata,
50 const LPoint3 &point3d, LPoint3 &point2d)
const;
52 virtual PN_stdfloat fov_to_film(PN_stdfloat fov, PN_stdfloat focal_length,
bool horiz)
const;
53 virtual PN_stdfloat fov_to_focal_length(PN_stdfloat fov, PN_stdfloat film_size,
bool horiz)
const;
54 virtual PN_stdfloat film_to_fov(PN_stdfloat film_size, PN_stdfloat focal_length,
bool horiz)
const;
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());
A base class for any number of different kinds of lenses, linear and otherwise.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeHandle is the identifier used to differentiate C++ class types.