35 INLINE
const PfmFile &get_pfm()
const;
37 BLOCKING
void project(
const Lens *lens,
const PfmFile *undist_lut =
nullptr);
38 BLOCKING
void extrude(
const Lens *lens);
40 INLINE
void set_vis_inverse(
bool vis_inverse);
41 INLINE
bool get_vis_inverse()
const;
42 INLINE
void set_flat_texcoord_name(
InternalName *flat_texcoord_name);
43 INLINE
void clear_flat_texcoord_name();
45 INLINE
void set_vis_2d(
bool vis_2d);
46 INLINE
bool get_vis_2d()
const;
47 INLINE
void set_keep_beyond_lens(
bool keep_beyond_lens);
48 INLINE
bool get_keep_beyond_lens()
const;
50 INLINE
void set_vis_blend(
const PNMImage *vis_blend);
51 INLINE
void clear_vis_blend();
52 INLINE
const PNMImage *get_vis_blend()
const;
54 INLINE
void set_aux_pfm(
const PfmFile *pfm);
55 INLINE
void clear_aux_pfm();
56 INLINE
const PfmFile *get_aux_pfm()
const;
70 void clear_vis_columns();
71 void add_vis_column(ColumnType source, ColumnType target,
74 const PfmFile *undist_lut =
nullptr);
76 BLOCKING
NodePath generate_vis_points()
const;
83 BLOCKING
NodePath generate_vis_mesh(MeshFace face = MF_front)
const;
85 BLOCKING
double calc_max_u_displacement()
const;
86 BLOCKING
double calc_max_v_displacement()
const;
87 BLOCKING
void make_displacement(
PNMImage &result,
double max_u,
double max_v,
bool for_32bit)
const;
88 BLOCKING
void make_displacement(
PfmFile &result,
double max_u,
double max_v,
bool for_32bit)
const;
91 bool uses_aux_pfm()
const;
92 void r_fill_displacement(
PNMImage &result,
int xi,
int yi,
93 double nxi,
double nyi,
double u_scale,
double v_scale,
95 void r_fill_displacement(
PfmFile &result,
int xi,
int yi,
96 double nxi,
double nyi,
double u_scale,
double v_scale,
99 void make_vis_mesh_geom(
GeomNode *gnode,
bool inverted)
const;
106 bool transform_point(LPoint2f &point)
const;
107 bool transform_point(LPoint3f &point)
const;
108 bool transform_vector(LVector3f &vec)
const;
120 static void add_vis_column(
VisColumns &vis_columns,
121 ColumnType source, ColumnType target,
124 const Lens *lens =
nullptr,
const PfmFile *undist_lut =
nullptr);
125 void build_auto_vis_columns(
VisColumns &vis_columns,
bool for_points)
const;
135 bool _keep_beyond_lens;
140 friend class VisColumn;
This object provides a high-level interface for quickly writing a sequence of numeric values from a v...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
The name of this class derives from the fact that we originally implemented it as a layer on top of t...
A base class for any number of different kinds of lenses, linear and otherwise.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Defines a pfm file, a 2-d table of floating-point numbers, either 3-component or 1-component,...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Encodes a string name in a hash table, mapping it to a pointer.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...
A node that holds Geom objects, renderable pieces of geometry.
This class aids in the visualization and manipulation of PfmFile objects.