32 INLINE
bool is_valid()
const;
35 INLINE
int get_x_size()
const;
36 INLINE
int get_y_size()
const;
37 INLINE
int get_z_size()
const;
39 INLINE
bool has_pixel(
int x,
int y)
const;
40 INLINE
bool has_pixel(
int x,
int y,
int z)
const;
41 void lookup(LColor &color, PN_stdfloat u, PN_stdfloat v)
const;
42 void lookup(LColor &color, PN_stdfloat u, PN_stdfloat v, PN_stdfloat w)
const;
43 void fetch_pixel(LColor &color,
int x,
int y)
const;
44 void fetch_pixel(LColor &color,
int x,
int y,
int z)
const;
45 bool lookup_bilinear(LColor &color, PN_stdfloat u, PN_stdfloat v)
const;
46 void filter_rect(LColor &color,
47 PN_stdfloat min_u, PN_stdfloat min_v,
48 PN_stdfloat max_u, PN_stdfloat max_v)
const;
49 void filter_rect(LColor &color,
50 PN_stdfloat min_u, PN_stdfloat min_v, PN_stdfloat min_w,
51 PN_stdfloat max_u, PN_stdfloat max_v, PN_stdfloat max_w)
const;
54 static void init_rect_minmax(
int &min_x,
int &max_x,
55 PN_stdfloat &min_u, PN_stdfloat &max_u,
58 void accum_filter_z(LColor &color, PN_stdfloat &net,
59 int min_x,
int max_x, PN_stdfloat min_u, PN_stdfloat max_u,
60 int min_y,
int max_y, PN_stdfloat min_v, PN_stdfloat max_v,
61 int min_z,
int max_z, PN_stdfloat min_w, PN_stdfloat max_w)
const;
62 void accum_filter_y(LColor &color, PN_stdfloat &net,
int zi,
63 int min_x,
int max_x, PN_stdfloat min_u, PN_stdfloat max_u,
64 int min_y,
int max_y, PN_stdfloat min_v, PN_stdfloat max_v,
65 PN_stdfloat weight)
const;
66 void accum_filter_x(LColor &color, PN_stdfloat &net,
int yi,
int zi,
67 int min_x,
int max_x, PN_stdfloat min_u, PN_stdfloat max_u,
68 PN_stdfloat weight)
const;
69 void accum_texel(LColor &color, PN_stdfloat &net,
const unsigned char *&p,
70 PN_stdfloat weight)
const;
72 typedef double GetComponentFunc(
const unsigned char *&p);
73 typedef void GetTexelFunc(LColor &color,
const unsigned char *&p,
74 GetComponentFunc *get_component);
76 static void get_texel_r(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
77 static void get_texel_g(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
78 static void get_texel_b(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
79 static void get_texel_a(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
80 static void get_texel_l(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
81 static void get_texel_la(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
82 static void get_texel_rg(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
83 static void get_texel_rgb(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
84 static void get_texel_rgba(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
85 static void get_texel_srgb(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
86 static void get_texel_srgba(LColor &color,
const unsigned char *&p, GetComponentFunc *get_component);
94 Texture::Format _format;
95 Texture::ComponentType _component_type;
98 GetComponentFunc *_get_component;
99 GetTexelFunc *_get_texel;
An instance of this object is returned by Texture::peek().
Represents a texture object, which is typically a single 2-d image but may also represent a 1-d or 3-...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.