1302895389 2 2 11 libpnmimage 4 5U4k 5 panda 178 285 16 make_transparent 4 463 26 PNMBrush::make_transparent 0 1 1 414 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_transparent // Access: Published, Static // Description: Returns a new brush that does not paint anything. // Can be used as either a pen or a fill brush to make // borderless or unfilled shapes, respectively. //////////////////////////////////////////////////////////////////// 62 static PointerTo< PNMBrush > PNMBrush::make_transparent(void); 286 10 make_pixel 4 463 20 PNMBrush::make_pixel 0 2 2 3 384 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_pixel // Access: Published, Static // Description: Returns a new brush that paints a single pixel of the // indicated color on a border, or paints a solid color // in an interior. //////////////////////////////////////////////////////////////////// 118 static PointerTo< PNMBrush > PNMBrush::make_pixel(LVecBase4d const &color, PNMBrush::BrushEffect effect = (BE_blend)); 287 9 make_spot 4 463 19 PNMBrush::make_spot 0 2 4 5 401 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_spot // Access: Published, Static // Description: Returns a new brush that paints a spot of the // indicated color and radius. If fuzzy is true, the // spot is fuzzy; otherwise, it is hard-edged. //////////////////////////////////////////////////////////////////// 144 static PointerTo< PNMBrush > PNMBrush::make_spot(LVecBase4d const &color, double radius, bool fuzzy, PNMBrush::BrushEffect effect = (BE_blend)); 288 10 make_image 4 463 20 PNMBrush::make_image 0 2 6 7 537 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_image // Access: Published, Static // Description: Returns a new brush that paints with the indicated // image. xc and yc indicate the pixel in the center of // the brush. // // The brush makes a copy of the image; it is safe to // deallocate or modify the image after making this // call. //////////////////////////////////////////////////////////////////// 138 static PointerTo< PNMBrush > PNMBrush::make_image(PNMImage const &image, double xc, double yc, PNMBrush::BrushEffect effect = (BE_blend)); 289 5 pixel 4 466 12 pixel::pixel 0 2 8 9 0 99 pixel::pixel(void); pixel::pixel(unsigned short int r, unsigned short int g, unsigned short int b); 290 4 size 4 466 11 pixel::size 0 1 10 0 29 static int pixel::size(void); 291 11 operator [] 4 466 18 pixel::operator [] 0 2 11 12 0 98 unsigned short int pixel::operator [](int i) const; unsigned short int &pixel::operator [](int i); 292 11 __setitem__ 4 466 18 pixel::__setitem__ 0 1 13 0 53 void pixel::__setitem__(int i, unsigned short int v); 293 10 operator + 4 466 17 pixel::operator + 0 1 14 0 50 pixel pixel::operator +(pixel const &other) const; 294 10 operator - 4 466 17 pixel::operator - 0 1 15 0 50 pixel pixel::operator -(pixel const &other) const; 295 10 operator * 4 466 17 pixel::operator * 0 1 16 0 49 pixel pixel::operator *(double const mult) const; 296 11 operator += 4 466 18 pixel::operator += 0 1 17 0 44 void pixel::operator +=(pixel const &other); 297 11 operator -= 4 466 18 pixel::operator -= 0 1 18 0 44 void pixel::operator -=(pixel const &other); 298 11 operator *= 4 466 18 pixel::operator *= 0 1 19 0 43 void pixel::operator *=(double const mult); 299 5 get_b 20 466 12 pixel::get_b 0 1 20 39 getter for unsigned short int pixel::b; 44 unsigned short int pixel::get_b(void) const; 300 5 set_b 36 466 12 pixel::set_b 0 1 21 39 setter for unsigned short int pixel::b; 44 void pixel::set_b(unsigned short int value); 301 5 get_g 20 466 12 pixel::get_g 0 1 22 39 getter for unsigned short int pixel::g; 44 unsigned short int pixel::get_g(void) const; 302 5 set_g 36 466 12 pixel::set_g 0 1 23 39 setter for unsigned short int pixel::g; 44 void pixel::set_g(unsigned short int value); 303 5 get_r 20 466 12 pixel::get_r 0 1 24 39 getter for unsigned short int pixel::r; 44 unsigned short int pixel::get_r(void) const; 304 5 set_r 36 466 12 pixel::set_r 0 1 25 39 setter for unsigned short int pixel::r; 44 void pixel::set_r(unsigned short int value); 305 6 ~pixel 4 466 13 pixel::~pixel 0 0 0 20 pixel::~pixel(void); 306 8 get_name 4 468 21 PNMFileType::get_name 0 1 26 0 67 virtual basic_string< char > PNMFileType::get_name(void) const = 0; 307 18 get_num_extensions 4 468 31 PNMFileType::get_num_extensions 0 1 27 360 //////////////////////////////////////////////////////////////////// // Function: PNMFileType::get_num_extensions // Access: Published, Virtual // Description: Returns the number of different possible filename // extensions associated with this particular file type. //////////////////////////////////////////////////////////////////// 56 virtual int PNMFileType::get_num_extensions(void) const; 308 13 get_extension 4 468 26 PNMFileType::get_extension 0 1 28 378 //////////////////////////////////////////////////////////////////// // Function: PNMFileType::get_extension // Access: Published, Virtual // Description: Returns the nth possible filename extension // associated with this particular file type, without a // leading dot. //////////////////////////////////////////////////////////////////// 69 virtual basic_string< char > PNMFileType::get_extension(int n) const; 309 23 get_suggested_extension 4 468 36 PNMFileType::get_suggested_extension 0 1 29 424 //////////////////////////////////////////////////////////////////// // Function: PNMFileType::get_suggested_extension // Access: Published, Virtual // Description: Returns a suitable filename extension (without a // leading dot) to suggest for files of this type, or // empty string if no suggestions are available. //////////////////////////////////////////////////////////////////// 78 virtual basic_string< char > PNMFileType::get_suggested_extension(void) const; 310 14 get_class_type 4 468 27 PNMFileType::get_class_type 0 1 30 0 52 static TypeHandle PNMFileType::get_class_type(void); 311 20 ~PNMFileTypeRegistry 4 470 41 PNMFileTypeRegistry::~PNMFileTypeRegistry 0 0 227 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::Destructor // Access: Public // Description: //////////////////////////////////////////////////////////////////// 48 PNMFileTypeRegistry::~PNMFileTypeRegistry(void); 312 13 get_num_types 4 470 34 PNMFileTypeRegistry::get_num_types 0 1 31 279 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_num_types // Access: Published // Description: Returns the total number of types registered. //////////////////////////////////////////////////////////////////// 51 int PNMFileTypeRegistry::get_num_types(void) const; 313 8 get_type 4 470 29 PNMFileTypeRegistry::get_type 0 1 32 261 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type // Access: Published // Description: Returns the nth type registered. //////////////////////////////////////////////////////////////////// 56 PNMFileType *PNMFileTypeRegistry::get_type(int n) const; 314 23 get_type_from_extension 4 470 44 PNMFileTypeRegistry::get_type_from_extension 0 1 33 481 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type_from_extension // Access: Published // Description: Tries to determine what the PNMFileType is likely to // be for a particular image file based on its // extension. Returns a suitable PNMFileType pointer, // or NULL if no type can be determined. //////////////////////////////////////////////////////////////////// 102 PNMFileType *PNMFileTypeRegistry::get_type_from_extension(basic_string< char > const &filename) const; 315 26 get_type_from_magic_number 4 470 47 PNMFileTypeRegistry::get_type_from_magic_number 0 1 34 544 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type_from_magic_number // Access: Published // Description: Tries to determine what the PNMFileType is likely to // be for a particular image file based on its // magic number, the first two bytes read from the // file. Returns a suitable PNMFileType pointer, or // NULL if no type can be determined. //////////////////////////////////////////////////////////////////// 109 PNMFileType *PNMFileTypeRegistry::get_type_from_magic_number(basic_string< char > const &magic_number) const; 316 18 get_type_by_handle 4 470 39 PNMFileTypeRegistry::get_type_by_handle 0 1 35 444 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type_by_handle // Access: Published // Description: Returns the PNMFileType instance stored in the // registry for the given TypeHandle, e.g. as retrieved // by a previous call to get_type() on the type // instance. //////////////////////////////////////////////////////////////////// 78 PNMFileType *PNMFileTypeRegistry::get_type_by_handle(TypeHandle handle) const; 317 5 write 4 470 26 PNMFileTypeRegistry::write 0 2 36 37 332 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::write // Access: Published // Description: Writes a list of supported image file types to the // indicated output stream, one per line. //////////////////////////////////////////////////////////////////// 76 void PNMFileTypeRegistry::write(ostream &out, int indent_level = (0)) const; 318 14 get_global_ptr 4 470 35 PNMFileTypeRegistry::get_global_ptr 0 1 38 319 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_global_ptr // Access: Published, Static // Description: Returns a pointer to the global PNMFileTypeRegistry // object. //////////////////////////////////////////////////////////////////// 70 static PNMFileTypeRegistry *PNMFileTypeRegistry::get_global_ptr(void); 319 14 PNMImageHeader 4 471 30 PNMImageHeader::PNMImageHeader 0 2 39 40 949 // Filename: pnmImageHeader.I // Created by: drose (15Jun00) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Copy Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 111 inline PNMImageHeader::PNMImageHeader(void); inline PNMImageHeader::PNMImageHeader(PNMImageHeader const ©); 320 10 operator = 4 471 26 PNMImageHeader::operator = 0 1 41 239 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Copy Assignment Operator // Access: Published // Description: //////////////////////////////////////////////////////////////////// 67 inline void PNMImageHeader::operator =(PNMImageHeader const ©); 321 15 ~PNMImageHeader 4 471 31 PNMImageHeader::~PNMImageHeader 0 0 225 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Destructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 45 inline PNMImageHeader::~PNMImageHeader(void); 322 14 get_color_type 4 471 30 PNMImageHeader::get_color_type 0 1 42 397 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_color_type // Access: Published // Description: Returns the image type of the image, as an enumerated // value. This is really just the number of channels // cast to the enumerated type. //////////////////////////////////////////////////////////////////// 76 inline PNMImageHeader::ColorType PNMImageHeader::get_color_type(void) const; 323 16 get_num_channels 4 471 32 PNMImageHeader::get_num_channels 0 1 43 276 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_num_channels // Access: Published // Description: Returns the number of channels in the image. //////////////////////////////////////////////////////////////////// 56 inline int PNMImageHeader::get_num_channels(void) const; 324 12 is_grayscale 4 471 28 PNMImageHeader::is_grayscale 0 2 44 45 948 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::is_grayscale // Access: Published, Static // Description: This static variant of is_grayscale() returns true if // the indicated image type represents a grayscale // image, false otherwise. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::is_grayscale // Access: Published // Description: Returns false if the image is a full-color image, and // has red, green, and blue components; true if it is a // grayscale image and has only a gray component. (The // gray color is actually stored in the blue channel, // and the red and green channels are ignored.) //////////////////////////////////////////////////////////////////// 140 static inline bool PNMImageHeader::is_grayscale(PNMImageHeader::ColorType color_type); inline bool PNMImageHeader::is_grayscale(void) const; 325 9 has_alpha 4 471 25 PNMImageHeader::has_alpha 0 2 46 47 852 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::has_alpha // Access: Published, Static // Description: This static variant of has_alpha() returns true if // the indicated image type includes an alpha channel, // false otherwise. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::has_alpha // Access: Published // Description: Returns true if the image includes an alpha channel, // false otherwise. Unlike is_grayscale(), if this // returns false it is an error to call any of the // functions accessing the alpha channel. //////////////////////////////////////////////////////////////////// 134 static inline bool PNMImageHeader::has_alpha(PNMImageHeader::ColorType color_type); inline bool PNMImageHeader::has_alpha(void) const; 326 10 get_maxval 4 471 26 PNMImageHeader::get_maxval 0 1 48 443 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_maxval // Access: Published // Description: Returns the maximum channel value allowable for any // pixel in this image; for instance, 255 for a typical // 8-bit-per-channel image. A pixel with this value is // full on. //////////////////////////////////////////////////////////////////// 65 inline unsigned short int PNMImageHeader::get_maxval(void) const; 327 10 get_x_size 4 471 26 PNMImageHeader::get_x_size 0 1 49 366 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_x_size // Access: Published // Description: Returns the number of pixels in the X direction. // This is one more than the largest allowable X // coordinate. //////////////////////////////////////////////////////////////////// 50 inline int PNMImageHeader::get_x_size(void) const; 328 10 get_y_size 4 471 26 PNMImageHeader::get_y_size 0 1 50 366 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_y_size // Access: Published // Description: Returns the number of pixels in the Y direction. // This is one more than the largest allowable Y // coordinate. //////////////////////////////////////////////////////////////////// 50 inline int PNMImageHeader::get_y_size(void) const; 329 11 get_comment 4 471 27 PNMImageHeader::get_comment 0 1 51 263 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_comment // Access: Published // Description: Gets the user comment from the file. //////////////////////////////////////////////////////////////////// 68 inline basic_string< char > PNMImageHeader::get_comment(void) const; 330 11 set_comment 4 471 27 PNMImageHeader::set_comment 0 1 52 278 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::set_comment // Access: Published // Description: Writes a user comment string to the image (header). //////////////////////////////////////////////////////////////////// 77 inline void PNMImageHeader::set_comment(basic_string< char > const &comment); 331 8 has_type 4 471 24 PNMImageHeader::has_type 0 1 53 315 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::has_type // Access: Published // Description: Returns true if the PNMImageHeader knows what type it // is, false otherwise. //////////////////////////////////////////////////////////////////// 49 inline bool PNMImageHeader::has_type(void) const; 332 8 get_type 4 471 24 PNMImageHeader::get_type 0 1 54 373 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_type // Access: Published // Description: If the file type is known (e.g. has_type() returns // true), returns its PNMFileType pointer; otherwise, // returns NULL. //////////////////////////////////////////////////////////////////// 57 inline PNMFileType *PNMImageHeader::get_type(void) const; 333 8 set_type 4 471 24 PNMImageHeader::set_type 0 1 55 583 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::set_type // Access: Published // Description: Sets the file type of this PNMImage. This will be // the default type used when an image is read, if the // type cannot be determined by magic number or inferred // by extension, or the type used when the image is // written, if the type cannot be inferred from the // filename extension. //////////////////////////////////////////////////////////////////// 56 inline void PNMImageHeader::set_type(PNMFileType *type); 334 11 read_header 4 471 27 PNMImageHeader::read_header 0 7 56 57 58 59 60 61 62 1214 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Opens up the image file and tries to read its header // information to determine its size, number of // channels, etc. If successful, updates the header // information and returns true; otherwise, returns // false. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Reads the image header information only from the // indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 295 bool PNMImageHeader::read_header(Filename const &filename, PNMFileType *type = ((void *)(0)), bool report_unknown_type = (1)); bool PNMImageHeader::read_header(istream &data, basic_string< char > const &filename = ((string())), PNMFileType *type = ((void *)(0)), bool report_unknown_type = (1)); 335 11 make_reader 4 471 27 PNMImageHeader::make_reader 0 9 63 64 65 66 67 68 69 70 71 2105 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the indicated image filename, // or NULL if the filename cannot be read for some // reason. The filename "-" always stands for standard // input. If type is specified, it is a suggestion for // the file type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 373 PNMReader *PNMImageHeader::make_reader(Filename const &filename, PNMFileType *type = ((void *)(0)), bool report_unknown_type = (1)) const; PNMReader *PNMImageHeader::make_reader(istream *file, bool owns_file = (1), Filename const &filename = ((())), basic_string< char > magic_number = ((string())), PNMFileType *type = ((void *)(0)), bool report_unknown_type = (1)) const; 336 11 make_writer 4 471 27 PNMImageHeader::make_writer 0 6 72 73 74 75 76 77 1861 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing an image to the indicated filename, // or NULL if the filename cannot be written for some // reason. The filename "-" always stands for standard // output. If type is specified, it is a suggestion for // the file type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing to the already-opened image file, or // NULL if the file cannot be written for some reason. // // owns_file should be set true if the PNMWriter is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the // intended file type. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 259 PNMWriter *PNMImageHeader::make_writer(Filename const &filename, PNMFileType *type = ((void *)(0))) const; PNMWriter *PNMImageHeader::make_writer(ostream *file, bool owns_file = (1), Filename const &filename = ((())), PNMFileType *type = ((void *)(0))) const; 337 17 read_magic_number 4 471 33 PNMImageHeader::read_magic_number 0 1 78 602 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_magic_number // Access: Published, Static // Description: Ensures that the first n bytes of the file are read // into magic_number. If magic_number is initially // nonempty, assumes these represent the first few bytes // already extracted. Returns true if successful, false // if an end of file or error occurred before num_bytes // could be read. //////////////////////////////////////////////////////////////////// 112 static bool PNMImageHeader::read_magic_number(istream *file, basic_string< char > &magic_number, int num_bytes); 338 6 output 4 471 22 PNMImageHeader::output 0 1 79 221 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::output // Access: Published // Description: //////////////////////////////////////////////////////////////////// 48 void PNMImageHeader::output(ostream &out) const; 339 9 PixelSpec 4 473 36 PNMImageHeader::PixelSpec::PixelSpec 0 7 80 81 82 83 84 85 86 1683 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Copy Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 679 inline PNMImageHeader::PixelSpec::PixelSpec(unsigned short int gray_value); inline PNMImageHeader::PixelSpec::PixelSpec(unsigned short int gray_value, unsigned short int alpha); inline PNMImageHeader::PixelSpec::PixelSpec(unsigned short int red, unsigned short int green, unsigned short int blue); inline PNMImageHeader::PixelSpec::PixelSpec(unsigned short int red, unsigned short int green, unsigned short int blue, unsigned short int alpha); inline PNMImageHeader::PixelSpec::PixelSpec(pixel const &rgb); inline PNMImageHeader::PixelSpec::PixelSpec(pixel const &rgb, unsigned short int alpha); inline PNMImageHeader::PixelSpec::PixelSpec(PNMImageHeader::PixelSpec const ©); 340 10 operator = 4 473 37 PNMImageHeader::PixelSpec::operator = 0 1 87 251 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Copy Assignment Operator // Access: Published // Description: //////////////////////////////////////////////////////////////////// 89 inline void PNMImageHeader::PixelSpec::operator =(PNMImageHeader::PixelSpec const ©); 341 10 operator < 4 473 37 PNMImageHeader::PixelSpec::operator < 0 1 88 237 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator < // Access: Published // Description: //////////////////////////////////////////////////////////////////// 96 inline bool PNMImageHeader::PixelSpec::operator <(PNMImageHeader::PixelSpec const &other) const; 342 11 operator == 4 473 38 PNMImageHeader::PixelSpec::operator == 0 1 89 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator == // Access: Published // Description: //////////////////////////////////////////////////////////////////// 97 inline bool PNMImageHeader::PixelSpec::operator ==(PNMImageHeader::PixelSpec const &other) const; 343 11 operator != 4 473 38 PNMImageHeader::PixelSpec::operator != 0 1 90 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator != // Access: Published // Description: //////////////////////////////////////////////////////////////////// 97 inline bool PNMImageHeader::PixelSpec::operator !=(PNMImageHeader::PixelSpec const &other) const; 344 10 compare_to 4 473 37 PNMImageHeader::PixelSpec::compare_to 0 1 91 237 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::compare_to // Access: Published // Description: //////////////////////////////////////////////////////////////////// 95 inline int PNMImageHeader::PixelSpec::compare_to(PNMImageHeader::PixelSpec const &other) const; 345 7 get_red 4 473 34 PNMImageHeader::PixelSpec::get_red 0 1 92 234 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_red // Access: Published // Description: //////////////////////////////////////////////////////////////////// 73 inline unsigned short int PNMImageHeader::PixelSpec::get_red(void) const; 346 9 get_green 4 473 36 PNMImageHeader::PixelSpec::get_green 0 1 93 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_green // Access: Published // Description: //////////////////////////////////////////////////////////////////// 75 inline unsigned short int PNMImageHeader::PixelSpec::get_green(void) const; 347 8 get_blue 4 473 35 PNMImageHeader::PixelSpec::get_blue 0 1 94 235 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_blue // Access: Published // Description: //////////////////////////////////////////////////////////////////// 74 inline unsigned short int PNMImageHeader::PixelSpec::get_blue(void) const; 348 9 get_alpha 4 473 36 PNMImageHeader::PixelSpec::get_alpha 0 1 95 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_alpha // Access: Published // Description: //////////////////////////////////////////////////////////////////// 75 inline unsigned short int PNMImageHeader::PixelSpec::get_alpha(void) const; 349 7 set_red 4 473 34 PNMImageHeader::PixelSpec::set_red 0 1 96 234 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_red // Access: Published // Description: //////////////////////////////////////////////////////////////////// 71 inline void PNMImageHeader::PixelSpec::set_red(unsigned short int red); 350 9 set_green 4 473 36 PNMImageHeader::PixelSpec::set_green 0 1 97 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_green // Access: Published // Description: //////////////////////////////////////////////////////////////////// 75 inline void PNMImageHeader::PixelSpec::set_green(unsigned short int green); 351 8 set_blue 4 473 35 PNMImageHeader::PixelSpec::set_blue 0 1 98 235 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_blue // Access: Published // Description: //////////////////////////////////////////////////////////////////// 73 inline void PNMImageHeader::PixelSpec::set_blue(unsigned short int blue); 352 9 set_alpha 4 473 36 PNMImageHeader::PixelSpec::set_alpha 0 1 99 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_alpha // Access: Published // Description: //////////////////////////////////////////////////////////////////// 75 inline void PNMImageHeader::PixelSpec::set_alpha(unsigned short int alpha); 353 11 operator [] 4 473 38 PNMImageHeader::PixelSpec::operator [] 0 1 100 397 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator [] // Access: Published // Description: Indexes numerically into the components, in the order // R, G, B, A. This also makes the PixelSpec work like // a tuple in Python. //////////////////////////////////////////////////////////////////// 78 inline unsigned short int PNMImageHeader::PixelSpec::operator [](int n) const; 354 4 size 4 473 31 PNMImageHeader::PixelSpec::size 0 1 101 394 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::size // Access: Published, Static // Description: Specifies the number of components in the PixelSpec; // this is always 4, regardless of the type of image it // was taken from. //////////////////////////////////////////////////////////////////// 56 static inline int PNMImageHeader::PixelSpec::size(void); 355 6 output 4 473 33 PNMImageHeader::PixelSpec::output 0 1 102 230 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::output // Access: Public // Description: //////////////////////////////////////////////////////////////////// 59 void PNMImageHeader::PixelSpec::output(ostream &out) const; 356 10 ~PixelSpec 4 473 37 PNMImageHeader::PixelSpec::~PixelSpec 0 0 0 44 PNMImageHeader::PixelSpec::~PixelSpec(void); 357 15 ~PixelSpecCount 4 474 47 PNMImageHeader::PixelSpecCount::~PixelSpecCount 0 0 0 54 PNMImageHeader::PixelSpecCount::~PixelSpecCount(void); 358 9 Histogram 4 475 36 PNMImageHeader::Histogram::Histogram 0 1 103 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 50 inline PNMImageHeader::Histogram::Histogram(void); 359 14 get_num_pixels 4 475 41 PNMImageHeader::Histogram::get_num_pixels 0 1 104 317 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_num_pixels // Access: Published // Description: Returns the number of unique pixel colors in the // histogram. //////////////////////////////////////////////////////////////////// 65 inline int PNMImageHeader::Histogram::get_num_pixels(void) const; 360 9 get_pixel 4 475 36 PNMImageHeader::Histogram::get_pixel 0 1 105 385 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_pixel // Access: Published // Description: Returns the nth unique pixel color in the histogram. // These are ordered by default from most common to // least common. //////////////////////////////////////////////////////////////////// 90 inline PNMImageHeader::PixelSpec const &PNMImageHeader::Histogram::get_pixel(int n) const; 361 9 get_count 4 475 36 PNMImageHeader::Histogram::get_count 0 2 106 107 678 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_count // Access: Published // Description: Returns the number of occurrences in the image of the // nth unique pixel color in the histogram. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_count // Access: Published // Description: Returns the number of occurrences in the image of the // indicated pixel color. //////////////////////////////////////////////////////////////////// 156 inline int PNMImageHeader::Histogram::get_count(int n) const; inline int PNMImageHeader::Histogram::get_count(PNMImageHeader::PixelSpec const &pixel) const; 362 5 write 4 475 32 PNMImageHeader::Histogram::write 0 1 108 229 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::write // Access: Public // Description: //////////////////////////////////////////////////////////////////// 58 void PNMImageHeader::Histogram::write(ostream &out) const; 363 10 ~Histogram 4 475 37 PNMImageHeader::Histogram::~Histogram 0 0 0 44 PNMImageHeader::Histogram::~Histogram(void); 364 8 PNMImage 4 476 18 PNMImage::PNMImage 0 8 109 110 111 112 113 114 115 116 1375 // Filename: pnmImage.I // Created by: drose (15Jun00) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::Copy Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 307 inline PNMImage::PNMImage(void); PNMImage::PNMImage(Filename const &filename, PNMFileType *type = ((void *)(0))); inline PNMImage::PNMImage(int x_size, int y_size, int num_channels = (3), unsigned short int maxval = (255), PNMFileType *type = ((void *)(0))); inline PNMImage::PNMImage(PNMImage const ©); 365 10 operator = 4 476 20 PNMImage::operator = 0 1 117 232 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Copy Assigment Operator // Access: Published // Description: //////////////////////////////////////////////////////////////////// 55 inline void PNMImage::operator =(PNMImage const ©); 366 9 ~PNMImage 4 476 19 PNMImage::~PNMImage 0 0 219 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Destructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 33 inline PNMImage::~PNMImage(void); 367 9 clamp_val 4 476 19 PNMImage::clamp_val 0 1 118 290 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clamp_val // Access: Published // Description: A handy function to clamp values to // [0..get_maxval()]. //////////////////////////////////////////////////////////////////// 69 inline unsigned short int PNMImage::clamp_val(int input_value) const; 368 6 to_val 4 476 16 PNMImage::to_val 0 1 119 299 //////////////////////////////////////////////////////////////////// // Function: PNMImage::to_val // Access: Published // Description: A handy function to scale values from [0..1] to // [0..get_maxval()]. //////////////////////////////////////////////////////////////////// 69 inline unsigned short int PNMImage::to_val(double input_value) const; 369 8 from_val 4 476 18 PNMImage::from_val 0 1 120 301 //////////////////////////////////////////////////////////////////// // Function: PNMImage::from_val // Access: Published // Description: A handy function to scale values from // [0..get_maxval()] to [0..1]. //////////////////////////////////////////////////////////////////// 71 inline double PNMImage::from_val(unsigned short int input_value) const; 370 5 clear 4 476 15 PNMImage::clear 0 5 121 122 123 124 125 662 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: Frees all memory allocated for the image, and clears // all its parameters (size, color, type, etc). //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: This flavor of clear() reinitializes the image to an // empty (black) image with the given dimensions. //////////////////////////////////////////////////////////////////// 167 void PNMImage::clear(void); void PNMImage::clear(int x_size, int y_size, int num_channels = (3), unsigned short int maxval = (255), PNMFileType *type = ((void *)(0))); 371 9 copy_from 4 476 19 PNMImage::copy_from 0 1 126 269 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_from // Access: Published // Description: Makes this image become a copy of the other image. //////////////////////////////////////////////////////////////////// 47 void PNMImage::copy_from(PNMImage const ©); 372 12 copy_channel 4 476 22 PNMImage::copy_channel 0 7 127 128 129 130 131 132 133 696 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies a channel from one image into another. // Images must be the same size //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 252 void PNMImage::copy_channel(PNMImage const ©, int src_channel, int dest_channel); void PNMImage::copy_channel(PNMImage const ©, int xto, int yto, int cto, int xfrom = (0), int yfrom = (0), int cfrom = (0), int x_size = (-1), int y_size = (-1)); 373 16 copy_header_from 4 476 26 PNMImage::copy_header_from 0 1 134 445 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_header_from // Access: Published // Description: Copies just the header information into this image. // This will blow away any image data stored in the // image. The new image data will be allocated, but // left unitialized. //////////////////////////////////////////////////////////////////// 62 void PNMImage::copy_header_from(PNMImageHeader const &header); 374 9 take_from 4 476 19 PNMImage::take_from 0 1 135 314 //////////////////////////////////////////////////////////////////// // Function: PNMImage::take_from // Access: Published // Description: Move the contents of the other image into this one, // and empty the other image. //////////////////////////////////////////////////////////////////// 41 void PNMImage::take_from(PNMImage &orig); 375 4 fill 4 476 14 PNMImage::fill 0 3 136 137 138 610 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given color. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given grayscale level. //////////////////////////////////////////////////////////////////// 113 inline void PNMImage::fill(double red, double green, double blue); inline void PNMImage::fill(double gray = (0)); 376 14 remix_channels 4 476 24 PNMImage::remix_channels 0 1 139 370 //////////////////////////////////////////////////////////////////// // Function: PNMImage::remix_channels // Access: Published // Description: Transforms every pixel using the operation // (Ro,Go,Bo) = conv.xform_point(Ri,Gi,Bi); // Input must be a color image. //////////////////////////////////////////////////////////////////// 53 void PNMImage::remix_channels(LMatrix4f const &conv); 377 8 fill_val 4 476 18 PNMImage::fill_val 0 3 140 141 142 618 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill_val // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given grayscale level. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill_val // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given color. //////////////////////////////////////////////////////////////////// 162 void PNMImage::fill_val(unsigned short int red, unsigned short int green, unsigned short int blue); inline void PNMImage::fill_val(unsigned short int gray = (0)); 378 10 alpha_fill 4 476 20 PNMImage::alpha_fill 0 2 143 144 269 //////////////////////////////////////////////////////////////////// // Function: PNMImage::alpha_fill // Access: Published // Description: Sets the entire alpha channel to the given level. //////////////////////////////////////////////////////////////////// 53 inline void PNMImage::alpha_fill(double alpha = (0)); 379 14 alpha_fill_val 4 476 24 PNMImage::alpha_fill_val 0 2 145 146 273 //////////////////////////////////////////////////////////////////// // Function: PNMImage::alpha_fill_val // Access: Published // Description: Sets the entire alpha channel to the given level. //////////////////////////////////////////////////////////////////// 62 void PNMImage::alpha_fill_val(unsigned short int alpha = (0)); 380 13 set_read_size 4 476 23 PNMImage::set_read_size 0 1 147 855 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_read_size // Access: Published // Description: Specifies the size to we'd like to scale the image // upon reading it. This will affect the next call to // read(). This is usually used to reduce the image // size, e.g. for a thumbnail. // // If the file type reader supports it (e.g. JPEG), then // this will scale the image during the read operation, // consequently reducing memory and CPU utilization. If // the file type reader does not support it, this will // load the image normally, and them perform a linear // scale after it has been loaded. //////////////////////////////////////////////////////////////////// 60 inline void PNMImage::set_read_size(int x_size, int y_size); 381 15 clear_read_size 4 476 25 PNMImage::clear_read_size 0 1 148 298 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear_read_size // Access: Published // Description: Undoes the effect of a previous call to // set_read_size(). //////////////////////////////////////////////////////////////////// 44 inline void PNMImage::clear_read_size(void); 382 13 has_read_size 4 476 23 PNMImage::has_read_size 0 1 149 271 //////////////////////////////////////////////////////////////////// // Function: PNMImage::has_read_size // Access: Published // Description: Returns true if set_read_size() has been called. //////////////////////////////////////////////////////////////////// 48 inline bool PNMImage::has_read_size(void) const; 383 15 get_read_x_size 4 476 25 PNMImage::get_read_x_size 0 1 150 384 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_read_x_size // Access: Published // Description: Returns the requested x_size of the image if // set_read_size() has been called, or the image x_size // otherwise (if it is known). //////////////////////////////////////////////////////////////////// 49 inline int PNMImage::get_read_x_size(void) const; 384 15 get_read_y_size 4 476 25 PNMImage::get_read_y_size 0 1 151 384 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_read_y_size // Access: Published // Description: Returns the requested y_size of the image if // set_read_size() has been called, or the image y_size // otherwise (if it is known). //////////////////////////////////////////////////////////////////// 49 inline int PNMImage::get_read_y_size(void) const; 385 4 read 4 476 14 PNMImage::read 0 8 152 153 154 155 156 157 158 159 1757 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the indicated image filename. If type is // non-NULL, it is a suggestion for the type of file it // is. Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the image data from the indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: This flavor of read() uses an already-existing // PNMReader to read the image file. You can get a // reader via the PNMImageHeader::make_reader() methods. // This is a good way to examine the header of a file // (for instance, to determine its size) before actually // reading the entire image. // // The PNMReader is always deleted upon completion, // whether succesful or not. //////////////////////////////////////////////////////////////////// 309 bool PNMImage::read(Filename const &filename, PNMFileType *type = ((void *)(0)), bool report_unknown_type = (1)); bool PNMImage::read(istream &data, basic_string< char > const &filename = ((string())), PNMFileType *type = ((void *)(0)), bool report_unknown_type = (1)); bool PNMImage::read(PNMReader *reader); 386 5 write 4 476 15 PNMImage::write 0 6 160 161 162 163 164 165 1385 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated filename. If type // is non-NULL, it is a suggestion for the type of image // file to write. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated ostream. // // The filename is advisory only, and may be used // suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of image file to write. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: This flavor of write() uses an already-existing // PNMWriter to write the image file. You can get a // writer via the PNMImageHeader::make_writer() methods. // // The PNMWriter is always deleted upon completion, // whether succesful or not. //////////////////////////////////////////////////////////////////// 266 bool PNMImage::write(Filename const &filename, PNMFileType *type = ((void *)(0))) const; bool PNMImage::write(ostream &data, basic_string< char > const &filename = ((string())), PNMFileType *type = ((void *)(0))) const; bool PNMImage::write(PNMWriter *writer) const; 387 8 is_valid 4 476 18 PNMImage::is_valid 0 1 166 470 //////////////////////////////////////////////////////////////////// // Function: PNMImage::is_valid // Access: Published // Description: Returns true if the image has been read in or // correctly initialized with a height and width. If // this returns false, virtually all member functions // except clear() and read() are invalid function calls. //////////////////////////////////////////////////////////////////// 43 inline bool PNMImage::is_valid(void) const; 388 16 set_num_channels 4 476 26 PNMImage::set_num_channels 0 1 167 530 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_num_channels // Access: Published // Description: Changes the number of channels associated with the // image. The new number of channels must be an integer // in the range 1 through 4, inclusive. This will // allocate and/or deallocate memory as necessary to // accomodate; see set_color_type(). //////////////////////////////////////////////////////////////////// 57 inline void PNMImage::set_num_channels(int num_channels); 389 14 set_color_type 4 476 24 PNMImage::set_color_type 0 1 168 606 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_color_type // Access: Published // Description: Translates the image to or from grayscale, color, or // four-color mode. Grayscale images are converted to // full-color images with R, G, B set to the original // gray level; color images are converted to grayscale // according to the value of Bright(). The alpha // channel, if added, is initialized to zero. //////////////////////////////////////////////////////////////////// 68 void PNMImage::set_color_type(PNMImageHeader::ColorType color_type); 390 9 add_alpha 4 476 19 PNMImage::add_alpha 0 1 169 365 //////////////////////////////////////////////////////////////////// // Function: PNMImage::add_alpha // Access: Published // Description: Adds an alpha channel to the image, if it does not // already have one. The alpha channel is initialized // to zeros. //////////////////////////////////////////////////////////////////// 38 inline void PNMImage::add_alpha(void); 391 12 remove_alpha 4 476 22 PNMImage::remove_alpha 0 1 170 270 //////////////////////////////////////////////////////////////////// // Function: PNMImage::remove_alpha // Access: Published // Description: Removes the image's alpha channel, if it exists. //////////////////////////////////////////////////////////////////// 41 inline void PNMImage::remove_alpha(void); 392 14 make_grayscale 4 476 24 PNMImage::make_grayscale 0 2 171 172 839 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_grayscale // Access: Published // Description: Converts the image from RGB to grayscale. Any alpha // channel, if present, is left undisturbed. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_grayscale // Access: Published // Description: Converts the image from RGB to grayscale. Any alpha // channel, if present, is left undisturbed. The // optional rc, gc, bc values represent the relative // weights to apply to each channel to convert it to // grayscale. //////////////////////////////////////////////////////////////////// 107 inline void PNMImage::make_grayscale(void); void PNMImage::make_grayscale(double rc, double gc, double bc); 393 8 make_rgb 4 476 18 PNMImage::make_rgb 0 1 173 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_rgb // Access: Published // Description: Converts the image from grayscale to RGB. Any alpha // channel, if present, is left undisturbed. //////////////////////////////////////////////////////////////////// 37 inline void PNMImage::make_rgb(void); 394 10 set_maxval 4 476 20 PNMImage::set_maxval 0 1 174 263 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_maxval // Access: Published // Description: Rescales the image to the indicated maxval. //////////////////////////////////////////////////////////////////// 53 void PNMImage::set_maxval(unsigned short int maxval); 395 11 get_xel_val 4 476 21 PNMImage::get_xel_val 0 1 175 565 // The *_val() functions return or set the color values in the range // [0..get_maxval()]. This range may be different for different // images! Use the corresponding functions (without _val()) to work // in the normalized range [0..1]. //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_xel_val // Access: Published // Description: Returns the RGB color at the indicated pixel. Each // component is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 62 inline pixel const &PNMImage::get_xel_val(int x, int y) const; 396 11 set_xel_val 4 476 21 PNMImage::set_xel_val 0 3 176 177 178 1025 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_val // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is in the range 0..maxval. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_val // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is in the range 0..maxval. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_val // Access: Published // Description: Changes all three color components at the indicated // pixel to the same value. The value is in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 257 inline void PNMImage::set_xel_val(int x, int y, pixel const &value); inline void PNMImage::set_xel_val(int x, int y, unsigned short int r, unsigned short int g, unsigned short int b); inline void PNMImage::set_xel_val(int x, int y, unsigned short int gray); 397 11 get_red_val 4 476 21 PNMImage::get_red_val 0 1 179 340 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_red_val // Access: Published // Description: Returns the red component color at the indicated // pixel. The value returned is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 68 inline unsigned short int PNMImage::get_red_val(int x, int y) const; 398 13 get_green_val 4 476 23 PNMImage::get_green_val 0 1 180 344 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_green_val // Access: Published // Description: Returns the green component color at the indicated // pixel. The value returned is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 70 inline unsigned short int PNMImage::get_green_val(int x, int y) const; 399 12 get_blue_val 4 476 22 PNMImage::get_blue_val 0 1 181 342 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_blue_val // Access: Published // Description: Returns the blue component color at the indicated // pixel. The value returned is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 69 inline unsigned short int PNMImage::get_blue_val(int x, int y) const; 400 12 get_gray_val 4 476 22 PNMImage::get_gray_val 0 1 182 584 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_gray_val // Access: Published // Description: Returns the gray component color at the indicated // pixel. This only has a meaningful value for // grayscale images; for other image types, this returns // the value of the blue channel only. However, also // see the get_bright() function. The value returned is // in the range 0..maxval. //////////////////////////////////////////////////////////////////// 69 inline unsigned short int PNMImage::get_gray_val(int x, int y) const; 401 13 get_alpha_val 4 476 23 PNMImage::get_alpha_val 0 1 183 435 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_alpha_val // Access: Published // Description: Returns the alpha component color at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value returned is in the // range 0..maxval. //////////////////////////////////////////////////////////////////// 70 inline unsigned short int PNMImage::get_alpha_val(int x, int y) const; 402 11 set_red_val 4 476 21 PNMImage::set_red_val 0 1 184 363 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_red_val // Access: Published // Description: Sets the red component color only at the indicated // pixel. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 70 inline void PNMImage::set_red_val(int x, int y, unsigned short int r); 403 13 set_green_val 4 476 23 PNMImage::set_green_val 0 1 185 367 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_green_val // Access: Published // Description: Sets the green component color only at the indicated // pixel. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 72 inline void PNMImage::set_green_val(int x, int y, unsigned short int g); 404 12 set_blue_val 4 476 22 PNMImage::set_blue_val 0 1 186 365 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_blue_val // Access: Published // Description: Sets the blue component color only at the indicated // pixel. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 71 inline void PNMImage::set_blue_val(int x, int y, unsigned short int b); 405 12 set_gray_val 4 476 22 PNMImage::set_gray_val 0 1 187 723 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_gray_val // Access: Published // Description: Sets the gray component color at the indicated // pixel. This is only meaningful for grayscale images; // for other image types, this simply sets the blue // component color. However, also see set_xel_val(), // which can set all the component colors to the same // grayscale level, and hence works correctly both for // grayscale and color images. The value given should // be in the range 0..maxval. //////////////////////////////////////////////////////////////////// 74 inline void PNMImage::set_gray_val(int x, int y, unsigned short int gray); 406 13 set_alpha_val 4 476 23 PNMImage::set_alpha_val 0 1 188 441 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_alpha_val // Access: Published // Description: Sets the alpha component color only at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value given should be in // the range 0..maxval. //////////////////////////////////////////////////////////////////// 72 inline void PNMImage::set_alpha_val(int x, int y, unsigned short int a); 407 15 get_channel_val 4 476 25 PNMImage::get_channel_val 0 1 189 630 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_channel_val // Access: Published // Description: Returns the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // accessing the component values directly by named // methods. The value returned is in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 78 unsigned short int PNMImage::get_channel_val(int x, int y, int channel) const; 408 15 set_channel_val 4 476 25 PNMImage::set_channel_val 0 1 190 629 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_channel_val // Access: Published // Description: Sets the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // setting the component values directly by named // methods. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 84 void PNMImage::set_channel_val(int x, int y, int channel, unsigned short int value); 409 9 get_pixel 4 476 19 PNMImage::get_pixel 0 1 191 322 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_pixel // Access: Published // Description: Returns the (r, g, b, a) pixel value at the indicated // pixel, using a PixelSpec object. //////////////////////////////////////////////////////////////////// 66 PNMImageHeader::PixelSpec PNMImage::get_pixel(int x, int y) const; 410 9 set_pixel 4 476 19 PNMImage::set_pixel 0 1 192 319 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_pixel // Access: Published // Description: Sets the (r, g, b, a) pixel value at the indicated // pixel, using a PixelSpec object. //////////////////////////////////////////////////////////////////// 79 void PNMImage::set_pixel(int x, int y, PNMImageHeader::PixelSpec const &pixel); 411 7 get_xel 4 476 17 PNMImage::get_xel 0 1 193 474 // The corresponding get_xel(), set_xel(), get_red(), etc. functions // automatically scale their values by get_maxval() into the range // [0..1]. //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_xel // Access: Published // Description: Returns the RGB color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 56 inline LVecBase3d PNMImage::get_xel(int x, int y) const; 412 7 set_xel 4 476 17 PNMImage::set_xel 0 3 194 195 196 1025 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel // Access: Published // Description: Changes all three color components at the indicated // pixel to the same value. The value is a double in // the range 0..1. //////////////////////////////////////////////////////////////////// 202 inline void PNMImage::set_xel(int x, int y, LVecBase3d const &value); inline void PNMImage::set_xel(int x, int y, double r, double g, double b); inline void PNMImage::set_xel(int x, int y, double gray); 413 9 get_xel_a 4 476 19 PNMImage::get_xel_a 0 1 197 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_xel_a // Access: Published // Description: Returns the RGBA color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 58 inline LVecBase4d PNMImage::get_xel_a(int x, int y) const; 414 9 set_xel_a 4 476 19 PNMImage::set_xel_a 0 2 198 199 660 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_a // Access: Published // Description: Changes the RGBA color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_a // Access: Published // Description: Changes the RGBA color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 158 inline void PNMImage::set_xel_a(int x, int y, LVecBase4d const &value); inline void PNMImage::set_xel_a(int x, int y, double r, double g, double b, double a); 415 7 get_red 4 476 17 PNMImage::get_red 0 1 200 357 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_red // Access: Published // Description: Returns the red component color at the indicated // pixel. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 52 inline double PNMImage::get_red(int x, int y) const; 416 9 get_green 4 476 19 PNMImage::get_green 0 1 201 361 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_green // Access: Published // Description: Returns the green component color at the indicated // pixel. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 54 inline double PNMImage::get_green(int x, int y) const; 417 8 get_blue 4 476 18 PNMImage::get_blue 0 1 202 359 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_blue // Access: Published // Description: Returns the blue component color at the indicated // pixel. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 53 inline double PNMImage::get_blue(int x, int y) const; 418 8 get_gray 4 476 18 PNMImage::get_gray 0 1 203 584 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_gray // Access: Published // Description: Returns the gray component color at the indicated // pixel. This only has a meaningful value for // grayscale images; for other image types, this returns // the value of the blue channel only. However, also // see the get_bright() function. The value returned is // a double in the range 0..1. //////////////////////////////////////////////////////////////////// 53 inline double PNMImage::get_gray(int x, int y) const; 419 9 get_alpha 4 476 19 PNMImage::get_alpha 0 1 204 435 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_alpha // Access: Published // Description: Returns the alpha component color at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value returned is a double // in the range 0..1. //////////////////////////////////////////////////////////////////// 54 inline double PNMImage::get_alpha(int x, int y) const; 420 7 set_red 4 476 17 PNMImage::set_red 0 1 205 363 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_red // Access: Published // Description: Sets the red component color only at the indicated // pixel. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 54 inline void PNMImage::set_red(int x, int y, double r); 421 9 set_green 4 476 19 PNMImage::set_green 0 1 206 367 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_green // Access: Published // Description: Sets the green component color only at the indicated // pixel. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 56 inline void PNMImage::set_green(int x, int y, double g); 422 8 set_blue 4 476 18 PNMImage::set_blue 0 1 207 365 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_blue // Access: Published // Description: Sets the blue component color only at the indicated // pixel. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 55 inline void PNMImage::set_blue(int x, int y, double b); 423 8 set_gray 4 476 18 PNMImage::set_gray 0 1 208 719 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_gray // Access: Published // Description: Sets the gray component color at the indicated // pixel. This is only meaningful for grayscale images; // for other image types, this simply sets the blue // component color. However, also see set_xel(), which // can set all the component colors to the same // grayscale level, and hence works correctly both for // grayscale and color images. The value given should // be a double in the range 0..1. //////////////////////////////////////////////////////////////////// 58 inline void PNMImage::set_gray(int x, int y, double gray); 424 9 set_alpha 4 476 19 PNMImage::set_alpha 0 1 209 432 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_alpha // Access: Published // Description: Sets the alpha component color only at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value given should be in // the range 0..1. //////////////////////////////////////////////////////////////////// 56 inline void PNMImage::set_alpha(int x, int y, double a); 425 11 get_channel 4 476 21 PNMImage::get_channel 0 1 210 630 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_channel // Access: Published // Description: Returns the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // accessing the component values directly by named // methods. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 69 inline double PNMImage::get_channel(int x, int y, int channel) const; 426 11 set_channel 4 476 21 PNMImage::set_channel 0 1 211 633 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_channel_val // Access: Published // Description: Sets the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // setting the component values directly by named // methods. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 75 inline void PNMImage::set_channel(int x, int y, int channel, double value); 427 10 get_bright 4 476 20 PNMImage::get_bright 0 3 212 213 214 1413 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_bright // Access: Published // Description: Returns the linear brightness of the given xel, as a // double in the range 0..1. This flavor of // get_bright() returns the correct grayscale brightness // level for both full-color and grayscale images. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_bright // Access: Published // Description: This flavor of get_bright() works correctly only for // color images. It returns a single brightness value // for the RGB color at the indicated pixel, based on // the supplied weights for each component. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_bright // Access: Published // Description: This flavor of get_bright() works correctly only for // four-channel images. It returns a single brightness // value for the RGBA color at the indicated pixel, // based on the supplied weights for each component. //////////////////////////////////////////////////////////////////// 244 inline double PNMImage::get_bright(int x, int y) const; inline double PNMImage::get_bright(int x, int y, double rc, double gc, double bc) const; inline double PNMImage::get_bright(int x, int y, double rc, double gc, double bc, double ac) const; 428 5 blend 4 476 15 PNMImage::blend 0 2 215 216 1080 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend // Access: Published // Description: Smoothly blends the indicated pixel value in with // whatever was already in the image, based on the given // alpha value. An alpha of 1.0 is fully opaque and // completely replaces whatever was there previously; // alpha of 0.0 is fully transparent and does nothing. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend // Access: Published // Description: Smoothly blends the indicated pixel value in with // whatever was already in the image, based on the given // alpha value. An alpha of 1.0 is fully opaque and // completely replaces whatever was there previously; // alpha of 0.0 is fully transparent and does nothing. //////////////////////////////////////////////////////////////////// 159 inline void PNMImage::blend(int x, int y, LVecBase3d const &val, double alpha); void PNMImage::blend(int x, int y, double r, double g, double b, double alpha); 429 11 operator [] 4 476 21 PNMImage::operator [] 0 2 217 218 784 // If you're used to the NetPBM library and like working with a 2-d // array of xels, and using the PNM macros to access their components, // you may treat the PNMImage as such directly. //////////////////////////////////////////////////////////////////// // Function: PNMImage::Array Operator // Access: Published // Description: Allows the PNMImage to appear to be a 2-d array of // xels. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::Array Operator // Access: Published // Description: Allows the PNMImage to appear to be a 2-d array of // xels. //////////////////////////////////////////////////////////////////// 99 inline pixel *PNMImage::operator [](int y); inline pixel const *PNMImage::operator [](int y) const; 430 14 copy_sub_image 4 476 24 PNMImage::copy_sub_image 0 5 219 220 221 222 223 647 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_sub_image // Access: Published // Description: Copies a rectangular area of another image into a // rectangular area of this image. Both images must // already have been initialized. The upper-left corner // of the region in both images is specified, and the // size of the area; if the size is omitted, it defaults // to the entire other image, or the largest piece that // will fit. //////////////////////////////////////////////////////////////////// 142 void PNMImage::copy_sub_image(PNMImage const ©, int xto, int yto, int xfrom = (0), int yfrom = (0), int x_size = (-1), int y_size = (-1)); 431 15 blend_sub_image 4 476 25 PNMImage::blend_sub_image 0 6 224 225 226 227 228 229 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 169 void PNMImage::blend_sub_image(PNMImage const ©, int xto, int yto, int xfrom = (0), int yfrom = (0), int x_size = (-1), int y_size = (-1), double pixel_scale = (1)); 432 16 darken_sub_image 4 476 26 PNMImage::darken_sub_image 0 6 230 231 232 233 234 235 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 170 void PNMImage::darken_sub_image(PNMImage const ©, int xto, int yto, int xfrom = (0), int yfrom = (0), int x_size = (-1), int y_size = (-1), double pixel_scale = (1)); 433 17 lighten_sub_image 4 476 27 PNMImage::lighten_sub_image 0 6 236 237 238 239 240 241 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 171 void PNMImage::lighten_sub_image(PNMImage const ©, int xto, int yto, int xfrom = (0), int yfrom = (0), int x_size = (-1), int y_size = (-1), double pixel_scale = (1)); 434 9 threshold 4 476 19 PNMImage::threshold 0 1 242 891 //////////////////////////////////////////////////////////////////// // Function: PNMImage::threshold // Access: Published // Description: Selectively copies each pixel from either one source // or another source, depending on the pixel value of // the indicated channel of select_image. // // For each pixel (x, y): // // s = select_image.get_channel(x, y). Set this image's // (x, y) to: // // lt.get_xel(x, y) if s <= threshold, or // // ge.get_xel(x, y) if s > threshold // // Any of select_image, lt, or ge may be the same // PNMImge object as this image, or the same as each // other; or they may all be different. All images must // be the same size. //////////////////////////////////////////////////////////////////// 126 void PNMImage::threshold(PNMImage const &select_image, int channel, double threshold, PNMImage const <, PNMImage const &ge); 435 11 render_spot 4 476 21 PNMImage::render_spot 0 1 243 781 //////////////////////////////////////////////////////////////////// // Function: PNMImage::render_spot // Access: Published // Description: Renders a solid-color circle, with a fuzzy edge, into // the center of the PNMImage. If the PNMImage is // non-square, this actually renders an ellipse. // // The min_radius and max_radius are in the scale 0..1, // where 1.0 means the full width of the image. If // min_radius == max_radius, the edge is sharp (but // still antialiased); otherwise, the pixels between // min_radius and max_radius are smoothly blended // between fg and bg colors. //////////////////////////////////////////////////////////////////// 109 void PNMImage::render_spot(LVecBase4d const &fg, LVecBase4d const &bg, double min_radius, double max_radius); 436 13 expand_border 4 476 23 PNMImage::expand_border 0 1 244 472 //////////////////////////////////////////////////////////////////// // Function: PNMImage::expand_border // Access: Published // Description: Expands the image by the indicated number of pixels // on each edge. The new pixels are set to the // indicated color. // // If any of the values is negative, this actually crops // the image. //////////////////////////////////////////////////////////////////// 96 void PNMImage::expand_border(int left, int right, int bottom, int top, LVecBase4d const &color); 437 10 box_filter 4 476 20 PNMImage::box_filter 0 2 245 246 499 // The bodies for the non-inline *_filter() functions can be found // in the file pnm-image-filter.cxx. //////////////////////////////////////////////////////////////////// // Function: PNMImage::box_filter // Access: Published // Description: This flavor of box_filter() will apply the filter // over the entire image without resizing or copying; // the effect is that of a blur operation. //////////////////////////////////////////////////////////////////// 54 inline void PNMImage::box_filter(double radius = (1)); 438 15 gaussian_filter 4 476 25 PNMImage::gaussian_filter 0 2 247 248 404 //////////////////////////////////////////////////////////////////// // Function: PNMImage::gaussian_filter // Access: Published // Description: This flavor of gaussian_filter() will apply the filter // over the entire image without resizing or copying; // the effect is that of a blur operation. //////////////////////////////////////////////////////////////////// 59 inline void PNMImage::gaussian_filter(double radius = (1)); 439 15 box_filter_from 4 476 25 PNMImage::box_filter_from 0 1 249 530 //////////////////////////////////////////////////////////////////// // Function: PNMImage::box_filter_from // Access: Public // Description: Makes a resized copy of the indicated image into this // one using the indicated filter. The image to be // copied is squashed and stretched to match the // dimensions of the current image, applying the // appropriate filter to perform the stretching. //////////////////////////////////////////////////////////////////// 68 void PNMImage::box_filter_from(double radius, PNMImage const ©); 440 20 gaussian_filter_from 4 476 30 PNMImage::gaussian_filter_from 0 1 250 535 //////////////////////////////////////////////////////////////////// // Function: PNMImage::gaussian_filter_from // Access: Public // Description: Makes a resized copy of the indicated image into this // one using the indicated filter. The image to be // copied is squashed and stretched to match the // dimensions of the current image, applying the // appropriate filter to perform the stretching. //////////////////////////////////////////////////////////////////// 73 void PNMImage::gaussian_filter_from(double radius, PNMImage const ©); 441 17 quick_filter_from 4 476 27 PNMImage::quick_filter_from 0 3 251 252 253 731 //////////////////////////////////////////////////////////////////// // Function: PNMImage::quick_filter_from // Access: Public // Description: Resizes from the given image, with a fixed radius of // 0.5. This is a very specialized and simple algorithm // that doesn't handle dropping below the Nyquist rate // very well, but is quite a bit faster than the more // general box_filter(), above. If borders are // specified, they will further restrict the size of the // resulting image. There's no point in using // quick_box_filter() on a single image. //////////////////////////////////////////////////////////////////// 93 void PNMImage::quick_filter_from(PNMImage const ©, int xborder = (0), int yborder = (0)); 442 14 make_histogram 4 476 24 PNMImage::make_histogram 0 1 254 294 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_histogram // Access: Published // Description: Computes a histogram of the colors used in the // image. //////////////////////////////////////////////////////////////////// 63 void PNMImage::make_histogram(PNMImageHeader::Histogram &hist); 443 17 perlin_noise_fill 4 476 27 PNMImage::perlin_noise_fill 0 4 255 256 257 258 880 //////////////////////////////////////////////////////////////////// // Function: PNMImage::perlin_noise_fill // Access: Published // Description: Fills the image with a grayscale perlin noise // pattern based on the indicated parameters. // Uses set_xel to set the grayscale values. // The sx and sy parameters are in multiples // of the size of this image. // See also the PerlinNoise2 class in mathutil. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::perlin_noise_fill // Access: Published // Description: Variant of perlin_noise_fill that uses an // existing StackedPerlinNoise2 object. //////////////////////////////////////////////////////////////////// 172 void PNMImage::perlin_noise_fill(double sx, double sy, int table_size = (256), unsigned long int seed = (0)); void PNMImage::perlin_noise_fill(StackedPerlinNoise2 &perlin); 444 15 get_average_xel 4 476 25 PNMImage::get_average_xel 0 1 259 302 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_average_xel // Access: Published // Description: Returns the average color of all of the pixels // in the image. //////////////////////////////////////////////////////////////////// 49 LVecBase3d PNMImage::get_average_xel(void) const; 445 17 get_average_xel_a 4 476 27 PNMImage::get_average_xel_a 0 1 260 333 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_average_xel_a // Access: Published // Description: Returns the average color of all of the pixels // in the image, including the alpha channel. //////////////////////////////////////////////////////////////////// 51 LVecBase4d PNMImage::get_average_xel_a(void) const; 446 16 get_average_gray 4 476 26 PNMImage::get_average_gray 0 1 261 317 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_average_gray // Access: Published // Description: Returns the average grayscale component of all of // the pixels in the image. //////////////////////////////////////////////////////////////////// 46 double PNMImage::get_average_gray(void) const; 447 10 operator ~ 68 476 20 PNMImage::operator ~ 0 1 262 307 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator ~ // Access: Published // Description: Returns a new PNMImage that is the // complement of the current PNMImage. //////////////////////////////////////////////////////////////////// 42 PNMImage PNMImage::operator ~(void) const; 448 10 operator + 4 476 20 PNMImage::operator + 0 2 263 264 772 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator + // Access: Published // Description: Returns a new PNMImage in which each pixel value // is the sum of the corresponding pixel values // in the two given images. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator + // Access: Published // Description: Returns a new PNMImage in which the provided color // is added to each pixel in the provided image. //////////////////////////////////////////////////////////////////// 135 inline PNMImage PNMImage::operator +(PNMImage const &other) const; inline PNMImage PNMImage::operator +(LVecBase4d const &other) const; 449 10 operator - 4 476 20 PNMImage::operator - 0 2 265 266 787 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator - // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the right image is subtracted from each // pixel value from the left image. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator - // Access: Published // Description: Returns a new PNMImage in which the provided color // is subtracted from each pixel in the provided image. //////////////////////////////////////////////////////////////////// 135 inline PNMImage PNMImage::operator -(PNMImage const &other) const; inline PNMImage PNMImage::operator -(LVecBase4d const &other) const; 450 10 operator * 4 476 20 PNMImage::operator * 0 2 267 268 902 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator * // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the left image is multiplied by each // pixel value from the right image. Note that the // floating-point values in the 0..1 range are // multiplied, not in the 0..maxval range. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator * // Access: Published // Description: Multiplies every pixel value in the image by // a constant floating-point multiplier value. //////////////////////////////////////////////////////////////////// 129 inline PNMImage PNMImage::operator *(PNMImage const &other) const; inline PNMImage PNMImage::operator *(double multiplier) const; 451 11 operator += 4 476 21 PNMImage::operator += 0 2 269 270 774 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator += // Access: Published // Description: Returns a new PNMImage in which each pixel value // is the sum of the corresponding pixel values // in the two given images. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator += // Access: Published // Description: Returns a new PNMImage in which the provided color // is added to each pixel in the provided image. //////////////////////////////////////////////////////////////////// 103 void PNMImage::operator +=(PNMImage const &other); void PNMImage::operator +=(LVecBase4d const &other); 452 11 operator -= 4 476 21 PNMImage::operator -= 0 2 271 272 789 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator -= // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the right image is subtracted from each // pixel value from the left image. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator -= // Access: Published // Description: Returns a new PNMImage in which the provided color // is subtracted from each pixel in the provided image. //////////////////////////////////////////////////////////////////// 103 void PNMImage::operator -=(PNMImage const &other); void PNMImage::operator -=(LVecBase4d const &other); 453 11 operator *= 4 476 21 PNMImage::operator *= 0 2 273 274 904 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator *= // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the left image is multiplied by each // pixel value from the right image. Note that the // floating-point values in the 0..1 range are // multiplied, not in the 0..maxval range. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator *= // Access: Published // Description: Multiplies every pixel value in the image by // a constant floating-point multiplier value. //////////////////////////////////////////////////////////////////// 97 void PNMImage::operator *=(PNMImage const &other); void PNMImage::operator *=(double multiplier); 454 10 PNMPainter 4 477 22 PNMPainter::PNMPainter 0 3 275 276 277 896 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::Constructor // Access: Published // Description: The constructor stores a pointer to the PNMImage you // pass it, but it does not take ownership of the // object; you are responsible for ensuring that the // PNMImage does not destruct during the lifetime of the // PNMPainter object. // // The xo, yo coordinates specify an optional offset for // fill coordinates. If you are painting with a pattern // fill, these specify the virtual coordinates of the // upper-left corner of the image, which can allow you // to adjust the pattern to line up with nested images, // if necessary. //////////////////////////////////////////////////////////////////// 68 PNMPainter::PNMPainter(PNMImage &image, int xo = (0), int yo = (0)); 455 11 ~PNMPainter 4 477 23 PNMPainter::~PNMPainter 0 0 708 // Filename: pnmPainter.I // Created by: drose (02Feb07) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMPainter::Destructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 37 inline PNMPainter::~PNMPainter(void); 456 7 set_pen 4 477 19 PNMPainter::set_pen 0 1 278 608 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::set_pen // Access: Published // Description: Specifies a PNMBrush that will be used for drawing // lines and edges. If the brush is a bitmap brush, its // image will be smeared pixelwise along the line. // // Unlike the PNMImage passed to the constructor, the // PNMPainter will take ownership of the pen. It is not // necessary to keep a separate pointer to it. //////////////////////////////////////////////////////////////////// 47 inline void PNMPainter::set_pen(PNMBrush *pen); 457 7 get_pen 4 477 19 PNMPainter::get_pen 0 1 279 259 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::get_pen // Access: Published // Description: Returns the current pen. See set_pen(). //////////////////////////////////////////////////////////////////// 49 inline PNMBrush *PNMPainter::get_pen(void) const; 458 8 set_fill 4 477 20 PNMPainter::set_fill 0 1 280 639 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::set_fill // Access: Published // Description: Specifies a PNMBrush that will be used for filling // in the interiors of objects. If the brush is a // bitmap brush, its image will be tiled throughout the // space. // // Unlike the PNMImage passed to the constructor, the // PNMPainter will take ownership of the fill brush. It // is not necessary to keep a separate pointer to it. //////////////////////////////////////////////////////////////////// 49 inline void PNMPainter::set_fill(PNMBrush *fill); 459 8 get_fill 4 477 20 PNMPainter::get_fill 0 1 281 268 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::get_fill // Access: Published // Description: Returns the current fill brush. See set_fill(). //////////////////////////////////////////////////////////////////// 50 inline PNMBrush *PNMPainter::get_fill(void) const; 460 10 draw_point 4 477 22 PNMPainter::draw_point 0 1 282 305 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::draw_point // Access: Published // Description: Draws an antialiased point on the PNMImage, using the // current pen. //////////////////////////////////////////////////////////////////// 55 inline void PNMPainter::draw_point(double x, double y); 461 9 draw_line 4 477 21 PNMPainter::draw_line 0 1 283 303 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::draw_line // Access: Published // Description: Draws an antialiased line on the PNMImage, using the // current pen. //////////////////////////////////////////////////////////////////// 71 void PNMPainter::draw_line(double xa, double ya, double xb, double yb); 462 14 draw_rectangle 4 477 26 PNMPainter::draw_rectangle 0 1 284 488 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::draw_rectangle // Access: Published // Description: Draws a filled rectangule on the PNMImage, using the // current pen for the outline, and the current fill // brush for the interior. // // The two coordinates specify any two diagonally // opposite corners. //////////////////////////////////////////////////////////////////// 76 void PNMPainter::draw_rectangle(double xa, double ya, double xb, double yb); 284 1 14 Dtool_5U4kX5Ct 7 4 478 0 14 Dtool_5U4kX5Ct 414 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_transparent // Access: Published, Static // Description: Returns a new brush that does not paint anything. // Can be used as either a pen or a fill brush to make // borderless or unfilled shapes, respectively. //////////////////////////////////////////////////////////////////// 0 2 14 Dtool_5U4kEIGY 7 5 478 0 14 Dtool_5U4kEIGY 384 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_pixel // Access: Published, Static // Description: Returns a new brush that paints a single pixel of the // indicated color on a border, or paints a solid color // in an interior. //////////////////////////////////////////////////////////////////// 2 5 color 1 479 6 effect 1 465 3 14 Dtool_5U4kU4t_ 7 5 478 0 14 Dtool_5U4kU4t_ 384 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_pixel // Access: Published, Static // Description: Returns a new brush that paints a single pixel of the // indicated color on a border, or paints a solid color // in an interior. //////////////////////////////////////////////////////////////////// 1 5 color 1 479 4 14 Dtool_5U4kFWh_ 7 6 478 0 14 Dtool_5U4kFWh_ 401 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_spot // Access: Published, Static // Description: Returns a new brush that paints a spot of the // indicated color and radius. If fuzzy is true, the // spot is fuzzy; otherwise, it is hard-edged. //////////////////////////////////////////////////////////////////// 4 5 color 1 479 6 radius 1 482 5 fuzzy 1 483 6 effect 1 465 5 14 Dtool_5U4kgvau 7 6 478 0 14 Dtool_5U4kgvau 401 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_spot // Access: Published, Static // Description: Returns a new brush that paints a spot of the // indicated color and radius. If fuzzy is true, the // spot is fuzzy; otherwise, it is hard-edged. //////////////////////////////////////////////////////////////////// 3 5 color 1 479 6 radius 1 482 5 fuzzy 1 483 6 14 Dtool_5U4kmniy 7 7 478 0 14 Dtool_5U4kmniy 537 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_image // Access: Published, Static // Description: Returns a new brush that paints with the indicated // image. xc and yc indicate the pixel in the center of // the brush. // // The brush makes a copy of the image; it is safe to // deallocate or modify the image after making this // call. //////////////////////////////////////////////////////////////////// 4 5 image 1 484 2 xc 1 482 2 yc 1 482 6 effect 1 465 7 14 Dtool_5U4k1ifs 7 7 478 0 14 Dtool_5U4k1ifs 537 //////////////////////////////////////////////////////////////////// // Function: PNMBrush::make_image // Access: Published, Static // Description: Returns a new brush that paints with the indicated // image. xc and yc indicate the pixel in the center of // the brush. // // The brush makes a copy of the image; it is safe to // deallocate or modify the image after making this // call. //////////////////////////////////////////////////////////////////// 3 5 image 1 484 2 xc 1 482 2 yc 1 482 8 14 Dtool_5U4kndVM 7 9 486 305 14 Dtool_5U4kndVM 0 0 9 14 Dtool_5U4knRJq 7 9 486 305 14 Dtool_5U4knRJq 0 3 1 r 1 467 1 g 1 467 1 b 1 467 10 14 Dtool_5U4kGjIK 6 10 487 0 14 Dtool_5U4kGjIK 0 0 11 14 Dtool_5U4kvPAo 4 11 488 0 14 Dtool_5U4kvPAo 0 2 4 this 3 486 1 i 1 487 12 14 Dtool_5U4kCOb2 6 11 467 0 14 Dtool_5U4kCOb2 0 2 4 this 3 489 1 i 1 487 13 14 Dtool_5U4ktVKB 4 12 488 0 14 Dtool_5U4ktVKB 0 3 4 this 3 486 1 i 1 487 1 v 1 467 14 14 Dtool_5U4kqbZf 7 13 486 305 14 Dtool_5U4kqbZf 0 2 4 this 3 489 5 other 1 489 15 14 Dtool_5U4kqTKp 7 14 486 305 14 Dtool_5U4kqTKp 0 2 4 this 3 489 5 other 1 489 16 14 Dtool_5U4kUeef 7 15 486 305 14 Dtool_5U4kUeef 0 2 4 this 3 489 4 mult 1 482 17 14 Dtool_5U4kyxYf 6 16 486 0 14 Dtool_5U4kyxYf 0 2 4 this 3 486 5 other 1 489 18 14 Dtool_5U4ky5Jp 6 17 486 0 14 Dtool_5U4ky5Jp 0 2 4 this 3 486 5 other 1 489 19 14 Dtool_5U4k2b7D 6 18 486 0 14 Dtool_5U4k2b7D 0 2 4 this 3 486 4 mult 1 482 20 14 Dtool_5U4krZSg 6 20 467 0 14 Dtool_5U4krZSg 0 1 4 this 3 489 21 14 Dtool_5U4kNJEp 4 21 488 0 14 Dtool_5U4kNJEp 0 2 4 this 3 486 5 value 1 467 22 14 Dtool_5U4krjfs 6 23 467 0 14 Dtool_5U4krjfs 0 1 4 this 3 489 23 14 Dtool_5U4kNDR1 4 24 488 0 14 Dtool_5U4kNDR1 0 2 4 this 3 486 5 value 1 467 24 14 Dtool_5U4kq5VH 6 26 467 0 14 Dtool_5U4kq5VH 0 1 4 this 3 489 25 14 Dtool_5U4kSpIQ 4 27 488 0 14 Dtool_5U4kSpIQ 0 2 4 this 3 486 5 value 1 467 26 14 Dtool_5U4kmp_V 6 32 493 0 14 Dtool_5U4kmp_V 0 1 4 this 3 491 27 14 Dtool_5U4ks8xu 6 33 487 0 14 Dtool_5U4ks8xu 360 //////////////////////////////////////////////////////////////////// // Function: PNMFileType::get_num_extensions // Access: Published, Virtual // Description: Returns the number of different possible filename // extensions associated with this particular file type. //////////////////////////////////////////////////////////////////// 1 4 this 3 491 28 14 Dtool_5U4k_4Ze 6 34 493 0 14 Dtool_5U4k_4Ze 378 //////////////////////////////////////////////////////////////////// // Function: PNMFileType::get_extension // Access: Published, Virtual // Description: Returns the nth possible filename extension // associated with this particular file type, without a // leading dot. //////////////////////////////////////////////////////////////////// 2 4 this 3 491 1 n 1 487 29 14 Dtool_5U4kmZL5 6 35 493 0 14 Dtool_5U4kmZL5 424 //////////////////////////////////////////////////////////////////// // Function: PNMFileType::get_suggested_extension // Access: Published, Virtual // Description: Returns a suitable filename extension (without a // leading dot) to suggest for files of this type, or // empty string if no suggestions are available. //////////////////////////////////////////////////////////////////// 1 4 this 3 491 30 14 Dtool_5U4kP0PY 7 36 495 0 14 Dtool_5U4kP0PY 0 0 31 14 Dtool_5U4k4WfZ 6 39 487 0 14 Dtool_5U4k4WfZ 279 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_num_types // Access: Published // Description: Returns the total number of types registered. //////////////////////////////////////////////////////////////////// 1 4 this 3 496 32 14 Dtool_5U4kQ4tf 6 40 498 0 14 Dtool_5U4kQ4tf 261 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type // Access: Published // Description: Returns the nth type registered. //////////////////////////////////////////////////////////////////// 2 4 this 3 496 1 n 1 487 33 14 Dtool_5U4kul04 6 41 498 0 14 Dtool_5U4kul04 481 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type_from_extension // Access: Published // Description: Tries to determine what the PNMFileType is likely to // be for a particular image file based on its // extension. Returns a suitable PNMFileType pointer, // or NULL if no type can be determined. //////////////////////////////////////////////////////////////////// 2 4 this 3 496 8 filename 1 493 34 14 Dtool_5U4kE_a6 6 42 498 0 14 Dtool_5U4kE_a6 544 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type_from_magic_number // Access: Published // Description: Tries to determine what the PNMFileType is likely to // be for a particular image file based on its // magic number, the first two bytes read from the // file. Returns a suitable PNMFileType pointer, or // NULL if no type can be determined. //////////////////////////////////////////////////////////////////// 2 4 this 3 496 12 magic_number 1 493 35 14 Dtool_5U4kULKw 6 43 498 0 14 Dtool_5U4kULKw 444 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_type_by_handle // Access: Published // Description: Returns the PNMFileType instance stored in the // registry for the given TypeHandle, e.g. as retrieved // by a previous call to get_type() on the type // instance. //////////////////////////////////////////////////////////////////// 2 4 this 3 496 6 handle 1 495 36 14 Dtool_5U4kPi13 4 44 488 0 14 Dtool_5U4kPi13 332 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::write // Access: Published // Description: Writes a list of supported image file types to the // indicated output stream, one per line. //////////////////////////////////////////////////////////////////// 3 4 this 3 496 3 out 1 499 12 indent_level 1 487 37 14 Dtool_5U4kfjWd 4 44 488 0 14 Dtool_5U4kfjWd 332 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::write // Access: Published // Description: Writes a list of supported image file types to the // indicated output stream, one per line. //////////////////////////////////////////////////////////////////// 2 4 this 3 496 3 out 1 499 38 14 Dtool_5U4kFElp 6 45 501 0 14 Dtool_5U4kFElp 319 //////////////////////////////////////////////////////////////////// // Function: PNMFileTypeRegistry::get_global_ptr // Access: Published, Static // Description: Returns a pointer to the global PNMFileTypeRegistry // object. //////////////////////////////////////////////////////////////////// 0 39 14 Dtool_5U4kBReb 7 47 502 321 14 Dtool_5U4kBReb 716 // Filename: pnmImageHeader.I // Created by: drose (15Jun00) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 0 40 14 Dtool_5U4k2f0p 7 47 502 321 14 Dtool_5U4k2f0p 231 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Copy Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 copy 1 503 41 14 Dtool_5U4kglLY 6 48 502 0 14 Dtool_5U4kglLY 239 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Copy Assignment Operator // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 502 4 copy 1 503 42 14 Dtool_5U4k7arZ 6 51 472 0 14 Dtool_5U4k7arZ 397 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_color_type // Access: Published // Description: Returns the image type of the image, as an enumerated // value. This is really just the number of channels // cast to the enumerated type. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 43 14 Dtool_5U4kieYf 6 52 487 0 14 Dtool_5U4kieYf 276 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_num_channels // Access: Published // Description: Returns the number of channels in the image. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 44 14 Dtool_5U4kAZAi 6 53 483 0 14 Dtool_5U4kAZAi 551 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::is_grayscale // Access: Published // Description: Returns false if the image is a full-color image, and // has red, green, and blue components; true if it is a // grayscale image and has only a gray component. (The // gray color is actually stored in the blue channel, // and the red and green channels are ignored.) //////////////////////////////////////////////////////////////////// 1 4 this 3 503 45 14 Dtool_5U4kc8Xa 6 53 483 0 14 Dtool_5U4kc8Xa 395 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::is_grayscale // Access: Published, Static // Description: This static variant of is_grayscale() returns true if // the indicated image type represents a grayscale // image, false otherwise. //////////////////////////////////////////////////////////////////// 1 10 color_type 1 472 46 14 Dtool_5U4kAlRN 6 54 483 0 14 Dtool_5U4kAlRN 464 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::has_alpha // Access: Published // Description: Returns true if the image includes an alpha channel, // false otherwise. Unlike is_grayscale(), if this // returns false it is an error to call any of the // functions accessing the alpha channel. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 47 14 Dtool_5U4kLbsW 6 54 483 0 14 Dtool_5U4kLbsW 386 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::has_alpha // Access: Published, Static // Description: This static variant of has_alpha() returns true if // the indicated image type includes an alpha channel, // false otherwise. //////////////////////////////////////////////////////////////////// 1 10 color_type 1 472 48 14 Dtool_5U4k_pzV 6 55 467 0 14 Dtool_5U4k_pzV 443 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_maxval // Access: Published // Description: Returns the maximum channel value allowable for any // pixel in this image; for instance, 255 for a typical // 8-bit-per-channel image. A pixel with this value is // full on. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 49 14 Dtool_5U4koepx 6 56 487 0 14 Dtool_5U4koepx 366 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_x_size // Access: Published // Description: Returns the number of pixels in the X direction. // This is one more than the largest allowable X // coordinate. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 50 14 Dtool_5U4k488x 6 57 487 0 14 Dtool_5U4k488x 366 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_y_size // Access: Published // Description: Returns the number of pixels in the Y direction. // This is one more than the largest allowable Y // coordinate. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 51 14 Dtool_5U4kH6FH 6 58 493 0 14 Dtool_5U4kH6FH 263 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_comment // Access: Published // Description: Gets the user comment from the file. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 52 14 Dtool_5U4ktnwk 4 59 488 0 14 Dtool_5U4ktnwk 278 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::set_comment // Access: Published // Description: Writes a user comment string to the image (header). //////////////////////////////////////////////////////////////////// 2 4 this 3 502 7 comment 1 493 53 14 Dtool_5U4kVIh0 6 60 483 0 14 Dtool_5U4kVIh0 315 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::has_type // Access: Published // Description: Returns true if the PNMImageHeader knows what type it // is, false otherwise. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 54 14 Dtool_5U4kN1gn 6 61 498 0 14 Dtool_5U4kN1gn 373 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::get_type // Access: Published // Description: If the file type is known (e.g. has_type() returns // true), returns its PNMFileType pointer; otherwise, // returns NULL. //////////////////////////////////////////////////////////////////// 1 4 this 3 503 55 14 Dtool_5U4kKhXL 4 62 488 0 14 Dtool_5U4kKhXL 583 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::set_type // Access: Published // Description: Sets the file type of this PNMImage. This will be // the default type used when an image is read, if the // type cannot be determined by magic number or inferred // by extension, or the type used when the image is // written, if the type cannot be inferred from the // filename extension. //////////////////////////////////////////////////////////////////// 2 4 this 3 502 4 type 1 498 56 14 Dtool_5U4kjGQr 6 63 483 0 14 Dtool_5U4kjGQr 498 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Opens up the image file and tries to read its header // information to determine its size, number of // channels, etc. If successful, updates the header // information and returns true; otherwise, returns // false. //////////////////////////////////////////////////////////////////// 4 4 this 3 502 8 filename 1 505 4 type 1 498 19 report_unknown_type 1 483 57 14 Dtool_5U4k6NNp 6 63 483 0 14 Dtool_5U4k6NNp 498 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Opens up the image file and tries to read its header // information to determine its size, number of // channels, etc. If successful, updates the header // information and returns true; otherwise, returns // false. //////////////////////////////////////////////////////////////////// 3 4 this 3 502 8 filename 1 505 4 type 1 498 58 14 Dtool_5U4kMN61 6 63 483 0 14 Dtool_5U4kMN61 498 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Opens up the image file and tries to read its header // information to determine its size, number of // channels, etc. If successful, updates the header // information and returns true; otherwise, returns // false. //////////////////////////////////////////////////////////////////// 2 4 this 3 502 8 filename 1 505 59 14 Dtool_5U4ky4oR 6 63 483 0 14 Dtool_5U4ky4oR 714 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Reads the image header information only from the // indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 5 4 this 3 502 4 data 1 508 8 filename 1 493 4 type 1 498 19 report_unknown_type 1 483 60 14 Dtool_5U4kB6mV 6 63 483 0 14 Dtool_5U4kB6mV 714 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Reads the image header information only from the // indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 4 4 this 3 502 4 data 1 508 8 filename 1 493 4 type 1 498 61 14 Dtool_5U4k6jDg 6 63 483 0 14 Dtool_5U4k6jDg 714 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Reads the image header information only from the // indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 3 4 this 3 502 4 data 1 508 8 filename 1 493 62 14 Dtool_5U4kn_zc 6 63 483 0 14 Dtool_5U4kn_zc 714 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_header // Access: Published // Description: Reads the image header information only from the // indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 2 4 this 3 502 4 data 1 508 63 14 Dtool_5U4kyMEf 6 64 510 0 14 Dtool_5U4kyMEf 689 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the indicated image filename, // or NULL if the filename cannot be read for some // reason. The filename "-" always stands for standard // input. If type is specified, it is a suggestion for // the file type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 4 4 this 3 503 8 filename 1 505 4 type 1 498 19 report_unknown_type 1 483 64 14 Dtool_5U4kXjYE 6 64 510 0 14 Dtool_5U4kXjYE 689 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the indicated image filename, // or NULL if the filename cannot be read for some // reason. The filename "-" always stands for standard // input. If type is specified, it is a suggestion for // the file type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 3 4 this 3 503 8 filename 1 505 4 type 1 498 65 14 Dtool_5U4kHm13 6 64 510 0 14 Dtool_5U4kHm13 689 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the indicated image filename, // or NULL if the filename cannot be read for some // reason. The filename "-" always stands for standard // input. If type is specified, it is a suggestion for // the file type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 2 4 this 3 503 8 filename 1 505 66 14 Dtool_5U4khavn 6 64 510 0 14 Dtool_5U4khavn 1414 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 7 4 this 3 503 4 file 1 508 9 owns_file 1 483 8 filename 1 505 12 magic_number 1 493 4 type 1 498 19 report_unknown_type 1 483 67 14 Dtool_5U4kB_GS 6 64 510 0 14 Dtool_5U4kB_GS 1414 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 6 4 this 3 503 4 file 1 508 9 owns_file 1 483 8 filename 1 505 12 magic_number 1 493 4 type 1 498 68 14 Dtool_5U4k9Nkt 6 64 510 0 14 Dtool_5U4k9Nkt 1414 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 5 4 this 3 503 4 file 1 508 9 owns_file 1 483 8 filename 1 505 12 magic_number 1 493 69 14 Dtool_5U4kXIKf 6 64 510 0 14 Dtool_5U4kXIKf 1414 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 4 4 this 3 503 4 file 1 508 9 owns_file 1 483 8 filename 1 505 70 14 Dtool_5U4khpvx 6 64 510 0 14 Dtool_5U4khpvx 1414 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 3 4 this 3 503 4 file 1 508 9 owns_file 1 483 71 14 Dtool_5U4kG56G 6 64 510 0 14 Dtool_5U4kG56G 1414 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_reader // Access: Published // Description: Returns a newly-allocated PNMReader of the suitable // type for reading from the already-opened image file, // or NULL if the file cannot be read for some reason. // // owns_file should be set true if the PNMReader is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the file // type. // // If magic_number is nonempty, it is assumed to // represent the first few bytes that have already been // read from the file. Some file types may have // difficulty if this is more than two bytes. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMReader should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 2 4 this 3 503 4 file 1 508 72 14 Dtool_5U4k5aMD 6 65 512 0 14 Dtool_5U4k5aMD 694 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing an image to the indicated filename, // or NULL if the filename cannot be written for some // reason. The filename "-" always stands for standard // output. If type is specified, it is a suggestion for // the file type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 3 4 this 3 503 8 filename 1 505 4 type 1 498 73 14 Dtool_5U4kZHo2 6 65 512 0 14 Dtool_5U4kZHo2 694 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing an image to the indicated filename, // or NULL if the filename cannot be written for some // reason. The filename "-" always stands for standard // output. If type is specified, it is a suggestion for // the file type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 2 4 this 3 503 8 filename 1 505 74 14 Dtool_5U4knxIJ 6 65 512 0 14 Dtool_5U4knxIJ 1165 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing to the already-opened image file, or // NULL if the file cannot be written for some reason. // // owns_file should be set true if the PNMWriter is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the // intended file type. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 5 4 this 3 503 4 file 1 499 9 owns_file 1 483 8 filename 1 505 4 type 1 498 75 14 Dtool_5U4kMA9F 6 65 512 0 14 Dtool_5U4kMA9F 1165 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing to the already-opened image file, or // NULL if the file cannot be written for some reason. // // owns_file should be set true if the PNMWriter is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the // intended file type. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 4 4 this 3 503 4 file 1 499 9 owns_file 1 483 8 filename 1 505 76 14 Dtool_5U4kvviY 6 65 512 0 14 Dtool_5U4kvviY 1165 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing to the already-opened image file, or // NULL if the file cannot be written for some reason. // // owns_file should be set true if the PNMWriter is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the // intended file type. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 3 4 this 3 503 4 file 1 499 9 owns_file 1 483 77 14 Dtool_5U4kKDut 6 65 512 0 14 Dtool_5U4kKDut 1165 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::make_writer // Access: Published // Description: Returns a newly-allocated PNMWriter of the suitable // type for writing to the already-opened image file, or // NULL if the file cannot be written for some reason. // // owns_file should be set true if the PNMWriter is to // be considered the owner of the stream pointer (in // which case the stream will be deleted on completion, // whether successful or not), or false if it should not // delete it. // // The filename parameter is optional here, since the // file has already been opened; it is only used to // examine the extension and attempt to guess the // intended file type. // // If type is non-NULL, it is a suggestion for the file // type to use. // // The PNMWriter should be deleted when it is no longer // needed. //////////////////////////////////////////////////////////////////// 2 4 this 3 503 4 file 1 499 78 14 Dtool_5U4k3Qff 6 66 483 0 14 Dtool_5U4k3Qff 602 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::read_magic_number // Access: Published, Static // Description: Ensures that the first n bytes of the file are read // into magic_number. If magic_number is initially // nonempty, assumes these represent the first few bytes // already extracted. Returns true if successful, false // if an end of file or error occurred before num_bytes // could be read. //////////////////////////////////////////////////////////////////// 3 4 file 1 508 12 magic_number 1 514 9 num_bytes 1 487 79 14 Dtool_5U4kN1NO 4 67 488 0 14 Dtool_5U4kN1NO 221 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::output // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 503 3 out 1 499 80 14 Dtool_5U4kaiba 7 69 518 356 14 Dtool_5U4kaiba 243 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Copy Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 copy 1 516 81 14 Dtool_5U4kBg5h 7 69 518 356 14 Dtool_5U4kBg5h 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 3 rgb 1 489 82 14 Dtool_5U4krfQp 7 69 518 356 14 Dtool_5U4krfQp 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 3 rgb 1 489 5 alpha 1 467 83 14 Dtool_5U4kP_Wa 7 69 518 356 14 Dtool_5U4kP_Wa 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 10 gray_value 1 467 84 14 Dtool_5U4k0C33 7 69 518 356 14 Dtool_5U4k0C33 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 10 gray_value 1 467 5 alpha 1 467 85 14 Dtool_5U4k0mtQ 7 69 518 356 14 Dtool_5U4k0mtQ 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 3 3 red 1 467 5 green 1 467 4 blue 1 467 86 14 Dtool_5U4kuvff 7 69 518 356 14 Dtool_5U4kuvff 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 4 3 red 1 467 5 green 1 467 4 blue 1 467 5 alpha 1 467 87 14 Dtool_5U4kH_yL 6 70 518 0 14 Dtool_5U4kH_yL 251 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::Copy Assignment Operator // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 518 4 copy 1 516 88 14 Dtool_5U4kKqUd 6 71 483 0 14 Dtool_5U4kKqUd 237 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator < // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 516 5 other 1 516 89 14 Dtool_5U4k3ntw 6 72 483 0 14 Dtool_5U4k3ntw 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator == // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 516 5 other 1 516 90 14 Dtool_5U4kVnpl 6 73 483 0 14 Dtool_5U4kVnpl 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator != // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 516 5 other 1 516 91 14 Dtool_5U4kNjTc 6 74 487 0 14 Dtool_5U4kNjTc 237 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::compare_to // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 516 5 other 1 516 92 14 Dtool_5U4k_8Tt 6 75 467 0 14 Dtool_5U4k_8Tt 234 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_red // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 this 3 516 93 14 Dtool_5U4kYDpY 6 76 467 0 14 Dtool_5U4kYDpY 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_green // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 this 3 516 94 14 Dtool_5U4k_k6u 6 77 467 0 14 Dtool_5U4k_k6u 235 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_blue // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 this 3 516 95 14 Dtool_5U4koGXs 6 78 467 0 14 Dtool_5U4koGXs 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::get_alpha // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 this 3 516 96 14 Dtool_5U4kR5lq 4 79 488 0 14 Dtool_5U4kR5lq 234 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_red // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 518 3 red 1 467 97 14 Dtool_5U4kFQSX 4 80 488 0 14 Dtool_5U4kFQSX 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_green // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 518 5 green 1 467 98 14 Dtool_5U4k_U_S 4 81 488 0 14 Dtool_5U4k_U_S 235 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_blue // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 518 4 blue 1 467 99 14 Dtool_5U4kek_q 4 82 488 0 14 Dtool_5U4kek_q 236 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::set_alpha // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 518 5 alpha 1 467 100 14 Dtool_5U4kjJlA 6 83 467 0 14 Dtool_5U4kjJlA 397 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::operator [] // Access: Published // Description: Indexes numerically into the components, in the order // R, G, B, A. This also makes the PixelSpec work like // a tuple in Python. //////////////////////////////////////////////////////////////////// 2 4 this 3 516 1 n 1 487 101 14 Dtool_5U4kSM56 6 84 487 0 14 Dtool_5U4kSM56 394 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::size // Access: Published, Static // Description: Specifies the number of components in the PixelSpec; // this is always 4, regardless of the type of image it // was taken from. //////////////////////////////////////////////////////////////////// 0 102 14 Dtool_5U4kdDxm 4 85 488 0 14 Dtool_5U4kdDxm 230 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::PixelSpec::output // Access: Public // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 516 3 out 1 499 103 14 Dtool_5U4kwHpx 7 90 519 363 14 Dtool_5U4kwHpx 238 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 0 104 14 Dtool_5U4kKSJ_ 6 91 487 0 14 Dtool_5U4kKSJ_ 317 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_num_pixels // Access: Published // Description: Returns the number of unique pixel colors in the // histogram. //////////////////////////////////////////////////////////////////// 1 4 this 3 520 105 14 Dtool_5U4kjIKa 6 92 516 0 14 Dtool_5U4kjIKa 385 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_pixel // Access: Published // Description: Returns the nth unique pixel color in the histogram. // These are ordered by default from most common to // least common. //////////////////////////////////////////////////////////////////// 2 4 this 3 520 1 n 1 487 106 14 Dtool_5U4kzrFZ 6 93 487 0 14 Dtool_5U4kzrFZ 329 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_count // Access: Published // Description: Returns the number of occurrences in the image of the // indicated pixel color. //////////////////////////////////////////////////////////////////// 2 4 this 3 520 5 pixel 1 516 107 14 Dtool_5U4kDuJV 6 93 487 0 14 Dtool_5U4kDuJV 347 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::get_count // Access: Published // Description: Returns the number of occurrences in the image of the // nth unique pixel color in the histogram. //////////////////////////////////////////////////////////////////// 2 4 this 3 520 1 n 1 487 108 14 Dtool_5U4k67a1 4 94 488 0 14 Dtool_5U4k67a1 229 //////////////////////////////////////////////////////////////////// // Function: PNMImageHeader::Histogram::write // Access: Public // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 520 3 out 1 499 109 14 Dtool_5U4kJuU_ 7 97 522 366 14 Dtool_5U4kJuU_ 704 // Filename: pnmImage.I // Created by: drose (15Jun00) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 0 110 14 Dtool_5U4kZniN 7 97 522 366 14 Dtool_5U4kZniN 220 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 8 filename 1 505 4 type 1 498 111 14 Dtool_5U4kGo3y 7 97 522 366 14 Dtool_5U4kGo3y 220 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 8 filename 1 505 112 14 Dtool_5U4k9JI_ 7 97 522 366 14 Dtool_5U4k9JI_ 225 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Copy Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 1 4 copy 1 484 113 14 Dtool_5U4kGUHz 7 97 522 366 14 Dtool_5U4kGUHz 220 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 5 6 x_size 1 487 6 y_size 1 487 12 num_channels 1 487 6 maxval 1 467 4 type 1 498 114 14 Dtool_5U4k3kSc 7 97 522 366 14 Dtool_5U4k3kSc 220 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 4 6 x_size 1 487 6 y_size 1 487 12 num_channels 1 487 6 maxval 1 467 115 14 Dtool_5U4k0Ehq 7 97 522 366 14 Dtool_5U4k0Ehq 220 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 3 6 x_size 1 487 6 y_size 1 487 12 num_channels 1 487 116 14 Dtool_5U4kxphz 7 97 522 366 14 Dtool_5U4kxphz 220 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Constructor // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 6 x_size 1 487 6 y_size 1 487 117 14 Dtool_5U4kW6D7 6 98 522 0 14 Dtool_5U4kW6D7 232 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Copy Assigment Operator // Access: Published // Description: //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 copy 1 484 118 14 Dtool_5U4k1Od2 6 100 467 0 14 Dtool_5U4k1Od2 290 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clamp_val // Access: Published // Description: A handy function to clamp values to // [0..get_maxval()]. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 11 input_value 1 487 119 14 Dtool_5U4kJVnd 6 101 467 0 14 Dtool_5U4kJVnd 299 //////////////////////////////////////////////////////////////////// // Function: PNMImage::to_val // Access: Published // Description: A handy function to scale values from [0..1] to // [0..get_maxval()]. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 11 input_value 1 482 120 14 Dtool_5U4k78bW 6 102 482 0 14 Dtool_5U4k78bW 301 //////////////////////////////////////////////////////////////////// // Function: PNMImage::from_val // Access: Published // Description: A handy function to scale values from // [0..get_maxval()] to [0..1]. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 11 input_value 1 467 121 14 Dtool_5U4kgRyO 4 103 488 0 14 Dtool_5U4kgRyO 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: Frees all memory allocated for the image, and clears // all its parameters (size, color, type, etc). //////////////////////////////////////////////////////////////////// 1 4 this 3 522 122 14 Dtool_5U4kFn3z 4 103 488 0 14 Dtool_5U4kFn3z 331 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: This flavor of clear() reinitializes the image to an // empty (black) image with the given dimensions. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 6 x_size 1 487 6 y_size 1 487 12 num_channels 1 487 6 maxval 1 467 4 type 1 498 123 14 Dtool_5U4k32h2 4 103 488 0 14 Dtool_5U4k32h2 331 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: This flavor of clear() reinitializes the image to an // empty (black) image with the given dimensions. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 6 x_size 1 487 6 y_size 1 487 12 num_channels 1 487 6 maxval 1 467 124 14 Dtool_5U4kJDi_ 4 103 488 0 14 Dtool_5U4kJDi_ 331 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: This flavor of clear() reinitializes the image to an // empty (black) image with the given dimensions. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 6 x_size 1 487 6 y_size 1 487 12 num_channels 1 487 125 14 Dtool_5U4kJQp3 4 103 488 0 14 Dtool_5U4kJQp3 331 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear // Access: Published // Description: This flavor of clear() reinitializes the image to an // empty (black) image with the given dimensions. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 6 x_size 1 487 6 y_size 1 487 126 14 Dtool_5U4k1EcB 4 104 488 0 14 Dtool_5U4k1EcB 269 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_from // Access: Published // Description: Makes this image become a copy of the other image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 copy 1 484 127 14 Dtool_5U4k7qGl 4 105 488 0 14 Dtool_5U4k7qGl 313 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies a channel from one image into another. // Images must be the same size //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 copy 1 484 11 src_channel 1 487 12 dest_channel 1 487 128 14 Dtool_5U4kfWin 4 105 488 0 14 Dtool_5U4kfWin 381 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 10 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 3 cto 1 487 5 xfrom 1 487 5 yfrom 1 487 5 cfrom 1 487 6 x_size 1 487 6 y_size 1 487 129 14 Dtool_5U4kv6bv 4 105 488 0 14 Dtool_5U4kv6bv 381 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 9 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 3 cto 1 487 5 xfrom 1 487 5 yfrom 1 487 5 cfrom 1 487 6 x_size 1 487 130 14 Dtool_5U4ky9XT 4 105 488 0 14 Dtool_5U4ky9XT 381 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 8 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 3 cto 1 487 5 xfrom 1 487 5 yfrom 1 487 5 cfrom 1 487 131 14 Dtool_5U4kFKXl 4 105 488 0 14 Dtool_5U4kFKXl 381 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 7 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 3 cto 1 487 5 xfrom 1 487 5 yfrom 1 487 132 14 Dtool_5U4kItVu 4 105 488 0 14 Dtool_5U4kItVu 381 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 3 cto 1 487 5 xfrom 1 487 133 14 Dtool_5U4kVR0S 4 105 488 0 14 Dtool_5U4kVR0S 381 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_channel // Access: Published // Description: Copies just a single channel from the source image // into a single channel of this image, leaving the // remaining channels alone. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 3 cto 1 487 134 14 Dtool_5U4kfIQ5 4 106 488 0 14 Dtool_5U4kfIQ5 445 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_header_from // Access: Published // Description: Copies just the header information into this image. // This will blow away any image data stored in the // image. The new image data will be allocated, but // left unitialized. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 6 header 1 503 135 14 Dtool_5U4kNRgL 4 107 488 0 14 Dtool_5U4kNRgL 314 //////////////////////////////////////////////////////////////////// // Function: PNMImage::take_from // Access: Published // Description: Move the contents of the other image into this one, // and empty the other image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 orig 1 522 136 14 Dtool_5U4kVQQT 4 108 488 0 14 Dtool_5U4kVQQT 309 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given grayscale level. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 gray 1 482 137 14 Dtool_5U4k_Hno 4 108 488 0 14 Dtool_5U4k_Hno 309 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given grayscale level. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 138 14 Dtool_5U4kFZy4 4 108 488 0 14 Dtool_5U4kFZy4 299 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given color. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 3 red 1 482 5 green 1 482 4 blue 1 482 139 14 Dtool_5U4kfaTI 4 109 488 0 14 Dtool_5U4kfaTI 370 //////////////////////////////////////////////////////////////////// // Function: PNMImage::remix_channels // Access: Published // Description: Transforms every pixel using the operation // (Ro,Go,Bo) = conv.xform_point(Ri,Gi,Bi); // Input must be a color image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 conv 1 523 140 14 Dtool_5U4k9TTf 4 110 488 0 14 Dtool_5U4k9TTf 313 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill_val // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given grayscale level. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 gray 1 467 141 14 Dtool_5U4kgsJ_ 4 110 488 0 14 Dtool_5U4kgsJ_ 313 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill_val // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given grayscale level. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 142 14 Dtool_5U4kJAW_ 4 110 488 0 14 Dtool_5U4kJAW_ 303 //////////////////////////////////////////////////////////////////// // Function: PNMImage::fill_val // Access: Published // Description: Sets the entire image (except the alpha channel) to // the given color. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 3 red 1 467 5 green 1 467 4 blue 1 467 143 14 Dtool_5U4kJekT 4 111 488 0 14 Dtool_5U4kJekT 269 //////////////////////////////////////////////////////////////////// // Function: PNMImage::alpha_fill // Access: Published // Description: Sets the entire alpha channel to the given level. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 alpha 1 482 144 14 Dtool_5U4kZk_o 4 111 488 0 14 Dtool_5U4kZk_o 269 //////////////////////////////////////////////////////////////////// // Function: PNMImage::alpha_fill // Access: Published // Description: Sets the entire alpha channel to the given level. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 145 14 Dtool_5U4k_dAZ 4 112 488 0 14 Dtool_5U4k_dAZ 273 //////////////////////////////////////////////////////////////////// // Function: PNMImage::alpha_fill_val // Access: Published // Description: Sets the entire alpha channel to the given level. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 alpha 1 467 146 14 Dtool_5U4k7C1N 4 112 488 0 14 Dtool_5U4k7C1N 273 //////////////////////////////////////////////////////////////////// // Function: PNMImage::alpha_fill_val // Access: Published // Description: Sets the entire alpha channel to the given level. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 147 14 Dtool_5U4kXK1K 4 113 488 0 14 Dtool_5U4kXK1K 855 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_read_size // Access: Published // Description: Specifies the size to we'd like to scale the image // upon reading it. This will affect the next call to // read(). This is usually used to reduce the image // size, e.g. for a thumbnail. // // If the file type reader supports it (e.g. JPEG), then // this will scale the image during the read operation, // consequently reducing memory and CPU utilization. If // the file type reader does not support it, this will // load the image normally, and them perform a linear // scale after it has been loaded. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 6 x_size 1 487 6 y_size 1 487 148 14 Dtool_5U4kILYS 4 114 488 0 14 Dtool_5U4kILYS 298 //////////////////////////////////////////////////////////////////// // Function: PNMImage::clear_read_size // Access: Published // Description: Undoes the effect of a previous call to // set_read_size(). //////////////////////////////////////////////////////////////////// 1 4 this 3 522 149 14 Dtool_5U4kx2p1 6 115 483 0 14 Dtool_5U4kx2p1 271 //////////////////////////////////////////////////////////////////// // Function: PNMImage::has_read_size // Access: Published // Description: Returns true if set_read_size() has been called. //////////////////////////////////////////////////////////////////// 1 4 this 3 484 150 14 Dtool_5U4k9mAj 6 116 487 0 14 Dtool_5U4k9mAj 384 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_read_x_size // Access: Published // Description: Returns the requested x_size of the image if // set_read_size() has been called, or the image x_size // otherwise (if it is known). //////////////////////////////////////////////////////////////////// 1 4 this 3 484 151 14 Dtool_5U4k69BD 6 117 487 0 14 Dtool_5U4k69BD 384 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_read_y_size // Access: Published // Description: Returns the requested y_size of the image if // set_read_size() has been called, or the image y_size // otherwise (if it is known). //////////////////////////////////////////////////////////////////// 1 4 this 3 484 152 14 Dtool_5U4kC64S 6 118 483 0 14 Dtool_5U4kC64S 397 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the indicated image filename. If type is // non-NULL, it is a suggestion for the type of file it // is. Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 8 filename 1 505 4 type 1 498 19 report_unknown_type 1 483 153 14 Dtool_5U4kPAvM 6 118 483 0 14 Dtool_5U4kPAvM 397 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the indicated image filename. If type is // non-NULL, it is a suggestion for the type of file it // is. Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 8 filename 1 505 4 type 1 498 154 14 Dtool_5U4kvCUh 6 118 483 0 14 Dtool_5U4kvCUh 397 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the indicated image filename. If type is // non-NULL, it is a suggestion for the type of file it // is. Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 8 filename 1 505 155 14 Dtool_5U4kdJLw 6 118 483 0 14 Dtool_5U4kdJLw 691 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: This flavor of read() uses an already-existing // PNMReader to read the image file. You can get a // reader via the PNMImageHeader::make_reader() methods. // This is a good way to examine the header of a file // (for instance, to determine its size) before actually // reading the entire image. // // The PNMReader is always deleted upon completion, // whether succesful or not. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 6 reader 1 510 156 14 Dtool_5U4k9o7O 6 118 483 0 14 Dtool_5U4k9o7O 665 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the image data from the indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 4 data 1 508 8 filename 1 493 4 type 1 498 19 report_unknown_type 1 483 157 14 Dtool_5U4kwKxG 6 118 483 0 14 Dtool_5U4kwKxG 665 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the image data from the indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 data 1 508 8 filename 1 493 4 type 1 498 158 14 Dtool_5U4kgtc5 6 118 483 0 14 Dtool_5U4kgtc5 665 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the image data from the indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 4 data 1 508 8 filename 1 493 159 14 Dtool_5U4k5luU 6 118 483 0 14 Dtool_5U4k5luU 665 //////////////////////////////////////////////////////////////////// // Function: PNMImage::read // Access: Published // Description: Reads the image data from the indicated stream. // // The filename is advisory only, and may be used // to suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of file it is (and a non-NULL type will override any // magic number test or filename extension lookup). // // Returns true if successful, false on error. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 data 1 508 160 14 Dtool_5U4kryAQ 6 119 483 0 14 Dtool_5U4kryAQ 370 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated filename. If type // is non-NULL, it is a suggestion for the type of image // file to write. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 8 filename 1 505 4 type 1 498 161 14 Dtool_5U4kibdu 6 119 483 0 14 Dtool_5U4kibdu 370 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated filename. If type // is non-NULL, it is a suggestion for the type of image // file to write. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 8 filename 1 505 162 14 Dtool_5U4kl0d0 6 119 483 0 14 Dtool_5U4kl0d0 512 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: This flavor of write() uses an already-existing // PNMWriter to write the image file. You can get a // writer via the PNMImageHeader::make_writer() methods. // // The PNMWriter is always deleted upon completion, // whether succesful or not. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 6 writer 1 512 163 14 Dtool_5U4k3I_7 6 119 483 0 14 Dtool_5U4k3I_7 499 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated ostream. // // The filename is advisory only, and may be used // suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of image file to write. //////////////////////////////////////////////////////////////////// 4 4 this 3 484 4 data 1 499 8 filename 1 493 4 type 1 498 164 14 Dtool_5U4kSl_y 6 119 483 0 14 Dtool_5U4kSl_y 499 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated ostream. // // The filename is advisory only, and may be used // suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of image file to write. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 4 data 1 499 8 filename 1 493 165 14 Dtool_5U4klWrL 6 119 483 0 14 Dtool_5U4klWrL 499 //////////////////////////////////////////////////////////////////// // Function: PNMImage::write // Access: Published // Description: Writes the image to the indicated ostream. // // The filename is advisory only, and may be used // suggest a type if it has a known extension. // // If type is non-NULL, it is a suggestion for the type // of image file to write. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 4 data 1 499 166 14 Dtool_5U4kbtI8 6 120 483 0 14 Dtool_5U4kbtI8 470 //////////////////////////////////////////////////////////////////// // Function: PNMImage::is_valid // Access: Published // Description: Returns true if the image has been read in or // correctly initialized with a height and width. If // this returns false, virtually all member functions // except clear() and read() are invalid function calls. //////////////////////////////////////////////////////////////////// 1 4 this 3 484 167 14 Dtool_5U4kvlnH 4 121 488 0 14 Dtool_5U4kvlnH 530 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_num_channels // Access: Published // Description: Changes the number of channels associated with the // image. The new number of channels must be an integer // in the range 1 through 4, inclusive. This will // allocate and/or deallocate memory as necessary to // accomodate; see set_color_type(). //////////////////////////////////////////////////////////////////// 2 4 this 3 522 12 num_channels 1 487 168 14 Dtool_5U4kHw_e 4 122 488 0 14 Dtool_5U4kHw_e 606 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_color_type // Access: Published // Description: Translates the image to or from grayscale, color, or // four-color mode. Grayscale images are converted to // full-color images with R, G, B set to the original // gray level; color images are converted to grayscale // according to the value of Bright(). The alpha // channel, if added, is initialized to zero. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 10 color_type 1 472 169 14 Dtool_5U4kudkF 4 123 488 0 14 Dtool_5U4kudkF 365 //////////////////////////////////////////////////////////////////// // Function: PNMImage::add_alpha // Access: Published // Description: Adds an alpha channel to the image, if it does not // already have one. The alpha channel is initialized // to zeros. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 170 14 Dtool_5U4kuXS6 4 124 488 0 14 Dtool_5U4kuXS6 270 //////////////////////////////////////////////////////////////////// // Function: PNMImage::remove_alpha // Access: Published // Description: Removes the image's alpha channel, if it exists. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 171 14 Dtool_5U4kvd8W 4 125 488 0 14 Dtool_5U4kvd8W 335 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_grayscale // Access: Published // Description: Converts the image from RGB to grayscale. Any alpha // channel, if present, is left undisturbed. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 172 14 Dtool_5U4ksKwX 4 125 488 0 14 Dtool_5U4ksKwX 502 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_grayscale // Access: Published // Description: Converts the image from RGB to grayscale. Any alpha // channel, if present, is left undisturbed. The // optional rc, gc, bc values represent the relative // weights to apply to each channel to convert it to // grayscale. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 2 rc 1 482 2 gc 1 482 2 bc 1 482 173 14 Dtool_5U4kWxCH 4 126 488 0 14 Dtool_5U4kWxCH 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_rgb // Access: Published // Description: Converts the image from grayscale to RGB. Any alpha // channel, if present, is left undisturbed. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 174 14 Dtool_5U4kqQ4f 4 127 488 0 14 Dtool_5U4kqQ4f 263 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_maxval // Access: Published // Description: Rescales the image to the indicated maxval. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 6 maxval 1 467 175 14 Dtool_5U4kZ_t1 6 128 489 0 14 Dtool_5U4kZ_t1 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_xel_val // Access: Published // Description: Returns the RGB color at the indicated pixel. Each // component is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 176 14 Dtool_5U4kBLQe 4 129 488 0 14 Dtool_5U4kBLQe 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_val // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 5 value 1 489 177 14 Dtool_5U4kwSca 4 129 488 0 14 Dtool_5U4kwSca 369 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_val // Access: Published // Description: Changes all three color components at the indicated // pixel to the same value. The value is in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 4 gray 1 467 178 14 Dtool_5U4keokV 4 129 488 0 14 Dtool_5U4keokV 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_val // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 1 x 1 487 1 y 1 487 1 r 1 467 1 g 1 467 1 b 1 467 179 14 Dtool_5U4kvbnu 6 130 467 0 14 Dtool_5U4kvbnu 340 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_red_val // Access: Published // Description: Returns the red component color at the indicated // pixel. The value returned is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 180 14 Dtool_5U4kim_o 6 131 467 0 14 Dtool_5U4kim_o 344 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_green_val // Access: Published // Description: Returns the green component color at the indicated // pixel. The value returned is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 181 14 Dtool_5U4kfY0A 6 132 467 0 14 Dtool_5U4kfY0A 342 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_blue_val // Access: Published // Description: Returns the blue component color at the indicated // pixel. The value returned is in the range 0..maxval. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 182 14 Dtool_5U4k3oeE 6 133 467 0 14 Dtool_5U4k3oeE 584 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_gray_val // Access: Published // Description: Returns the gray component color at the indicated // pixel. This only has a meaningful value for // grayscale images; for other image types, this returns // the value of the blue channel only. However, also // see the get_bright() function. The value returned is // in the range 0..maxval. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 183 14 Dtool_5U4kKba3 6 134 467 0 14 Dtool_5U4kKba3 435 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_alpha_val // Access: Published // Description: Returns the alpha component color at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value returned is in the // range 0..maxval. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 184 14 Dtool_5U4kB1WT 4 135 488 0 14 Dtool_5U4kB1WT 363 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_red_val // Access: Published // Description: Sets the red component color only at the indicated // pixel. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 r 1 467 185 14 Dtool_5U4k4_Bi 4 136 488 0 14 Dtool_5U4k4_Bi 367 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_green_val // Access: Published // Description: Sets the green component color only at the indicated // pixel. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 g 1 467 186 14 Dtool_5U4kq9d9 4 137 488 0 14 Dtool_5U4kq9d9 365 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_blue_val // Access: Published // Description: Sets the blue component color only at the indicated // pixel. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 b 1 467 187 14 Dtool_5U4kjFIB 4 138 488 0 14 Dtool_5U4kjFIB 723 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_gray_val // Access: Published // Description: Sets the gray component color at the indicated // pixel. This is only meaningful for grayscale images; // for other image types, this simply sets the blue // component color. However, also see set_xel_val(), // which can set all the component colors to the same // grayscale level, and hence works correctly both for // grayscale and color images. The value given should // be in the range 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 4 gray 1 467 188 14 Dtool_5U4kjmcw 4 139 488 0 14 Dtool_5U4kjmcw 441 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_alpha_val // Access: Published // Description: Sets the alpha component color only at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value given should be in // the range 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 a 1 467 189 14 Dtool_5U4k5dxI 6 140 467 0 14 Dtool_5U4k5dxI 630 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_channel_val // Access: Published // Description: Returns the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // accessing the component values directly by named // methods. The value returned is in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 4 4 this 3 484 1 x 1 487 1 y 1 487 7 channel 1 487 190 14 Dtool_5U4k4AHG 4 141 488 0 14 Dtool_5U4k4AHG 629 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_channel_val // Access: Published // Description: Sets the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // setting the component values directly by named // methods. The value given should be in the range // 0..maxval. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 1 x 1 487 1 y 1 487 7 channel 1 487 5 value 1 467 191 14 Dtool_5U4kEyf6 7 142 518 356 14 Dtool_5U4kEyf6 322 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_pixel // Access: Published // Description: Returns the (r, g, b, a) pixel value at the indicated // pixel, using a PixelSpec object. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 192 14 Dtool_5U4k4idQ 4 143 488 0 14 Dtool_5U4k4idQ 319 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_pixel // Access: Published // Description: Sets the (r, g, b, a) pixel value at the indicated // pixel, using a PixelSpec object. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 5 pixel 1 516 193 14 Dtool_5U4kE1Ub 7 144 527 0 14 Dtool_5U4kE1Ub 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_xel // Access: Published // Description: Returns the RGB color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 194 14 Dtool_5U4klCyT 4 145 488 0 14 Dtool_5U4klCyT 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 5 value 1 528 195 14 Dtool_5U4kkAzw 4 145 488 0 14 Dtool_5U4kkAzw 369 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel // Access: Published // Description: Changes all three color components at the indicated // pixel to the same value. The value is a double in // the range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 4 gray 1 482 196 14 Dtool_5U4kJNjN 4 145 488 0 14 Dtool_5U4kJNjN 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel // Access: Published // Description: Changes the RGB color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 1 x 1 487 1 y 1 487 1 r 1 482 1 g 1 482 1 b 1 482 197 14 Dtool_5U4kV6AJ 7 146 530 0 14 Dtool_5U4kV6AJ 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_xel_a // Access: Published // Description: Returns the RGBA color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 198 14 Dtool_5U4k0Zb6 4 147 488 0 14 Dtool_5U4k0Zb6 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_a // Access: Published // Description: Changes the RGBA color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 5 value 1 479 199 14 Dtool_5U4kkHvU 4 147 488 0 14 Dtool_5U4kkHvU 329 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_xel_a // Access: Published // Description: Changes the RGBA color at the indicated pixel. Each // component is a double in the range 0..1. //////////////////////////////////////////////////////////////////// 7 4 this 3 522 1 x 1 487 1 y 1 487 1 r 1 482 1 g 1 482 1 b 1 482 1 a 1 482 200 14 Dtool_5U4k2WPU 6 148 482 0 14 Dtool_5U4k2WPU 357 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_red // Access: Published // Description: Returns the red component color at the indicated // pixel. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 201 14 Dtool_5U4khyC9 6 149 482 0 14 Dtool_5U4khyC9 361 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_green // Access: Published // Description: Returns the green component color at the indicated // pixel. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 202 14 Dtool_5U4kWrcz 6 150 482 0 14 Dtool_5U4kWrcz 359 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_blue // Access: Published // Description: Returns the blue component color at the indicated // pixel. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 203 14 Dtool_5U4k55I3 6 151 482 0 14 Dtool_5U4k55I3 584 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_gray // Access: Published // Description: Returns the gray component color at the indicated // pixel. This only has a meaningful value for // grayscale images; for other image types, this returns // the value of the blue channel only. However, also // see the get_bright() function. The value returned is // a double in the range 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 204 14 Dtool_5U4ka6eL 6 152 482 0 14 Dtool_5U4ka6eL 435 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_alpha // Access: Published // Description: Returns the alpha component color at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value returned is a double // in the range 0..1. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 205 14 Dtool_5U4kWqtp 4 153 488 0 14 Dtool_5U4kWqtp 363 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_red // Access: Published // Description: Sets the red component color only at the indicated // pixel. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 r 1 482 206 14 Dtool_5U4k2K1_ 4 154 488 0 14 Dtool_5U4k2K1_ 367 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_green // Access: Published // Description: Sets the green component color only at the indicated // pixel. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 g 1 482 207 14 Dtool_5U4kr0aG 4 155 488 0 14 Dtool_5U4kr0aG 365 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_blue // Access: Published // Description: Sets the blue component color only at the indicated // pixel. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 b 1 482 208 14 Dtool_5U4kiwGK 4 156 488 0 14 Dtool_5U4kiwGK 719 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_gray // Access: Published // Description: Sets the gray component color at the indicated // pixel. This is only meaningful for grayscale images; // for other image types, this simply sets the blue // component color. However, also see set_xel(), which // can set all the component colors to the same // grayscale level, and hence works correctly both for // grayscale and color images. The value given should // be a double in the range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 4 gray 1 482 209 14 Dtool_5U4k9QPO 4 157 488 0 14 Dtool_5U4k9QPO 432 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_alpha // Access: Published // Description: Sets the alpha component color only at the indicated // pixel. It is an error to call this unless // has_alpha() is true. The value given should be in // the range 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 1 x 1 487 1 y 1 487 1 a 1 482 210 14 Dtool_5U4kjZD3 6 158 482 0 14 Dtool_5U4kjZD3 630 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_channel // Access: Published // Description: Returns the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // accessing the component values directly by named // methods. The value returned is a double in the range // 0..1. //////////////////////////////////////////////////////////////////// 4 4 this 3 484 1 x 1 487 1 y 1 487 7 channel 1 487 211 14 Dtool_5U4kPshy 4 159 488 0 14 Dtool_5U4kPshy 633 //////////////////////////////////////////////////////////////////// // Function: PNMImage::set_channel_val // Access: Published // Description: Sets the nth component color at the indicated // pixel. The channel index should be in the range // 0..(get_num_channels()-1). The channels are ordered B, // G, R, A. This is slightly less optimal than // setting the component values directly by named // methods. The value given should be a double in the // range 0..1. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 1 x 1 487 1 y 1 487 7 channel 1 487 5 value 1 482 212 14 Dtool_5U4kcpGI 6 160 482 0 14 Dtool_5U4kcpGI 467 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_bright // Access: Published // Description: Returns the linear brightness of the given xel, as a // double in the range 0..1. This flavor of // get_bright() returns the correct grayscale brightness // level for both full-color and grayscale images. //////////////////////////////////////////////////////////////////// 3 4 this 3 484 1 x 1 487 1 y 1 487 213 14 Dtool_5U4kN9Lp 6 160 482 0 14 Dtool_5U4kN9Lp 467 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_bright // Access: Published // Description: This flavor of get_bright() works correctly only for // color images. It returns a single brightness value // for the RGB color at the indicated pixel, based on // the supplied weights for each component. //////////////////////////////////////////////////////////////////// 6 4 this 3 484 1 x 1 487 1 y 1 487 2 rc 1 482 2 gc 1 482 2 bc 1 482 214 14 Dtool_5U4k1KaX 6 160 482 0 14 Dtool_5U4k1KaX 475 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_bright // Access: Published // Description: This flavor of get_bright() works correctly only for // four-channel images. It returns a single brightness // value for the RGBA color at the indicated pixel, // based on the supplied weights for each component. //////////////////////////////////////////////////////////////////// 7 4 this 3 484 1 x 1 487 1 y 1 487 2 rc 1 482 2 gc 1 482 2 bc 1 482 2 ac 1 482 215 14 Dtool_5U4kVicO 4 161 488 0 14 Dtool_5U4kVicO 539 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend // Access: Published // Description: Smoothly blends the indicated pixel value in with // whatever was already in the image, based on the given // alpha value. An alpha of 1.0 is fully opaque and // completely replaces whatever was there previously; // alpha of 0.0 is fully transparent and does nothing. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 1 x 1 487 1 y 1 487 3 val 1 528 5 alpha 1 482 216 14 Dtool_5U4k9I6e 4 161 488 0 14 Dtool_5U4k9I6e 539 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend // Access: Published // Description: Smoothly blends the indicated pixel value in with // whatever was already in the image, based on the given // alpha value. An alpha of 1.0 is fully opaque and // completely replaces whatever was there previously; // alpha of 0.0 is fully transparent and does nothing. //////////////////////////////////////////////////////////////////// 7 4 this 3 522 1 x 1 487 1 y 1 487 1 r 1 482 1 g 1 482 1 b 1 482 5 alpha 1 482 217 14 Dtool_5U4k_EKA 6 162 486 0 14 Dtool_5U4k_EKA 297 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Array Operator // Access: Published // Description: Allows the PNMImage to appear to be a 2-d array of // xels. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 1 y 1 487 218 14 Dtool_5U4kwxq_ 6 162 489 0 14 Dtool_5U4kwxq_ 297 //////////////////////////////////////////////////////////////////// // Function: PNMImage::Array Operator // Access: Published // Description: Allows the PNMImage to appear to be a 2-d array of // xels. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 1 y 1 487 219 14 Dtool_5U4kiW_W 4 163 488 0 14 Dtool_5U4kiW_W 647 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_sub_image // Access: Published // Description: Copies a rectangular area of another image into a // rectangular area of this image. Both images must // already have been initialized. The upper-left corner // of the region in both images is specified, and the // size of the area; if the size is omitted, it defaults // to the entire other image, or the largest piece that // will fit. //////////////////////////////////////////////////////////////////// 8 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 220 14 Dtool_5U4kxEW3 4 163 488 0 14 Dtool_5U4kxEW3 647 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_sub_image // Access: Published // Description: Copies a rectangular area of another image into a // rectangular area of this image. Both images must // already have been initialized. The upper-left corner // of the region in both images is specified, and the // size of the area; if the size is omitted, it defaults // to the entire other image, or the largest piece that // will fit. //////////////////////////////////////////////////////////////////// 7 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 221 14 Dtool_5U4kWkin 4 163 488 0 14 Dtool_5U4kWkin 647 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_sub_image // Access: Published // Description: Copies a rectangular area of another image into a // rectangular area of this image. Both images must // already have been initialized. The upper-left corner // of the region in both images is specified, and the // size of the area; if the size is omitted, it defaults // to the entire other image, or the largest piece that // will fit. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 222 14 Dtool_5U4kXAof 4 163 488 0 14 Dtool_5U4kXAof 647 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_sub_image // Access: Published // Description: Copies a rectangular area of another image into a // rectangular area of this image. Both images must // already have been initialized. The upper-left corner // of the region in both images is specified, and the // size of the area; if the size is omitted, it defaults // to the entire other image, or the largest piece that // will fit. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 223 14 Dtool_5U4krmrb 4 163 488 0 14 Dtool_5U4krmrb 647 //////////////////////////////////////////////////////////////////// // Function: PNMImage::copy_sub_image // Access: Published // Description: Copies a rectangular area of another image into a // rectangular area of this image. Both images must // already have been initialized. The upper-left corner // of the region in both images is specified, and the // size of the area; if the size is omitted, it defaults // to the entire other image, or the largest piece that // will fit. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 224 14 Dtool_5U4kUBqK 4 164 488 0 14 Dtool_5U4kUBqK 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 9 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 11 pixel_scale 1 482 225 14 Dtool_5U4knnVh 4 164 488 0 14 Dtool_5U4knnVh 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 8 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 226 14 Dtool_5U4k_Jps 4 164 488 0 14 Dtool_5U4k_Jps 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 7 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 227 14 Dtool_5U4k9rTy 4 164 488 0 14 Dtool_5U4k9rTy 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 6 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 228 14 Dtool_5U4kHoI1 4 164 488 0 14 Dtool_5U4kHoI1 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 5 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 229 14 Dtool_5U4k5Bk2 4 164 488 0 14 Dtool_5U4k5Bk2 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::blend_sub_image // Access: Published // Description: Behaves like copy_sub_image(), except the alpha // channel of the copy is used to blend the copy into // the destination image, instead of overwriting pixels // unconditionally. // // If pixel_scale is not 1.0, it specifies an amount to // scale each *alpha* value of the source image before // applying it to the target image. // // If pixel_scale is 1.0 and the copy has no alpha // channel, this degenerates into copy_sub_image(). //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 230 14 Dtool_5U4kOz5_ 4 165 488 0 14 Dtool_5U4kOz5_ 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 9 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 11 pixel_scale 1 482 231 14 Dtool_5U4kj3MU 4 165 488 0 14 Dtool_5U4kj3MU 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 8 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 232 14 Dtool_5U4kW_U9 4 165 488 0 14 Dtool_5U4kW_U9 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 7 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 233 14 Dtool_5U4kCJ4x 4 165 488 0 14 Dtool_5U4kCJ4x 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 234 14 Dtool_5U4kg3LM 4 165 488 0 14 Dtool_5U4kg3LM 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 235 14 Dtool_5U4k7UU5 4 165 488 0 14 Dtool_5U4k7UU5 770 //////////////////////////////////////////////////////////////////// // Function: PNMImage::darken_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the darker of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. The scale is // applied with the center at 1.0: scaling the pixel // value smaller brings it closer to 1.0. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 236 14 Dtool_5U4kfVkb 4 166 488 0 14 Dtool_5U4kfVkb 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 9 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 11 pixel_scale 1 482 237 14 Dtool_5U4kpuck 4 166 488 0 14 Dtool_5U4kpuck 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 8 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 6 y_size 1 487 238 14 Dtool_5U4kFcYI 4 166 488 0 14 Dtool_5U4kFcYI 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 7 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 6 x_size 1 487 239 14 Dtool_5U4kfeXa 4 166 488 0 14 Dtool_5U4kfeXa 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 5 yfrom 1 487 240 14 Dtool_5U4ksdWj 4 166 488 0 14 Dtool_5U4ksdWj 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 5 xfrom 1 487 241 14 Dtool_5U4kb52H 4 166 488 0 14 Dtool_5U4kb52H 635 //////////////////////////////////////////////////////////////////// // Function: PNMImage::lighten_sub_image // Access: Published // Description: Behaves like copy_sub_image(), but the resulting // color will be the lighter of the source and // destination colors at each pixel (and at each R, G, // B, A component value). // // If pixel_scale is not 1.0, it specifies an amount to // scale each pixel value of the source image before // applying it to the target image. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 copy 1 484 3 xto 1 487 3 yto 1 487 242 14 Dtool_5U4kGK6i 4 167 488 0 14 Dtool_5U4kGK6i 891 //////////////////////////////////////////////////////////////////// // Function: PNMImage::threshold // Access: Published // Description: Selectively copies each pixel from either one source // or another source, depending on the pixel value of // the indicated channel of select_image. // // For each pixel (x, y): // // s = select_image.get_channel(x, y). Set this image's // (x, y) to: // // lt.get_xel(x, y) if s <= threshold, or // // ge.get_xel(x, y) if s > threshold // // Any of select_image, lt, or ge may be the same // PNMImge object as this image, or the same as each // other; or they may all be different. All images must // be the same size. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 12 select_image 1 484 7 channel 1 487 9 threshold 1 482 2 lt 1 484 2 ge 1 484 243 14 Dtool_5U4kj9HN 4 168 488 0 14 Dtool_5U4kj9HN 781 //////////////////////////////////////////////////////////////////// // Function: PNMImage::render_spot // Access: Published // Description: Renders a solid-color circle, with a fuzzy edge, into // the center of the PNMImage. If the PNMImage is // non-square, this actually renders an ellipse. // // The min_radius and max_radius are in the scale 0..1, // where 1.0 means the full width of the image. If // min_radius == max_radius, the edge is sharp (but // still antialiased); otherwise, the pixels between // min_radius and max_radius are smoothly blended // between fg and bg colors. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 2 fg 1 479 2 bg 1 479 10 min_radius 1 482 10 max_radius 1 482 244 14 Dtool_5U4kg5VA 4 169 488 0 14 Dtool_5U4kg5VA 472 //////////////////////////////////////////////////////////////////// // Function: PNMImage::expand_border // Access: Published // Description: Expands the image by the indicated number of pixels // on each edge. The new pixels are set to the // indicated color. // // If any of the values is negative, this actually crops // the image. //////////////////////////////////////////////////////////////////// 6 4 this 3 522 4 left 1 487 5 right 1 487 6 bottom 1 487 3 top 1 487 5 color 1 479 245 14 Dtool_5U4k0QpA 4 170 488 0 14 Dtool_5U4k0QpA 394 //////////////////////////////////////////////////////////////////// // Function: PNMImage::box_filter // Access: Published // Description: This flavor of box_filter() will apply the filter // over the entire image without resizing or copying; // the effect is that of a blur operation. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 6 radius 1 482 246 14 Dtool_5U4kKBDW 4 170 488 0 14 Dtool_5U4kKBDW 394 //////////////////////////////////////////////////////////////////// // Function: PNMImage::box_filter // Access: Published // Description: This flavor of box_filter() will apply the filter // over the entire image without resizing or copying; // the effect is that of a blur operation. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 247 14 Dtool_5U4kSjEC 4 171 488 0 14 Dtool_5U4kSjEC 404 //////////////////////////////////////////////////////////////////// // Function: PNMImage::gaussian_filter // Access: Published // Description: This flavor of gaussian_filter() will apply the filter // over the entire image without resizing or copying; // the effect is that of a blur operation. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 6 radius 1 482 248 14 Dtool_5U4kN02s 4 171 488 0 14 Dtool_5U4kN02s 404 //////////////////////////////////////////////////////////////////// // Function: PNMImage::gaussian_filter // Access: Published // Description: This flavor of gaussian_filter() will apply the filter // over the entire image without resizing or copying; // the effect is that of a blur operation. //////////////////////////////////////////////////////////////////// 1 4 this 3 522 249 14 Dtool_5U4kPYod 4 172 488 0 14 Dtool_5U4kPYod 530 //////////////////////////////////////////////////////////////////// // Function: PNMImage::box_filter_from // Access: Public // Description: Makes a resized copy of the indicated image into this // one using the indicated filter. The image to be // copied is squashed and stretched to match the // dimensions of the current image, applying the // appropriate filter to perform the stretching. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 6 radius 1 482 4 copy 1 484 250 14 Dtool_5U4kRiE8 4 173 488 0 14 Dtool_5U4kRiE8 535 //////////////////////////////////////////////////////////////////// // Function: PNMImage::gaussian_filter_from // Access: Public // Description: Makes a resized copy of the indicated image into this // one using the indicated filter. The image to be // copied is squashed and stretched to match the // dimensions of the current image, applying the // appropriate filter to perform the stretching. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 6 radius 1 482 4 copy 1 484 251 14 Dtool_5U4k2C4m 4 174 488 0 14 Dtool_5U4k2C4m 731 //////////////////////////////////////////////////////////////////// // Function: PNMImage::quick_filter_from // Access: Public // Description: Resizes from the given image, with a fixed radius of // 0.5. This is a very specialized and simple algorithm // that doesn't handle dropping below the Nyquist rate // very well, but is quite a bit faster than the more // general box_filter(), above. If borders are // specified, they will further restrict the size of the // resulting image. There's no point in using // quick_box_filter() on a single image. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 4 copy 1 484 7 xborder 1 487 7 yborder 1 487 252 14 Dtool_5U4kocJ5 4 174 488 0 14 Dtool_5U4kocJ5 731 //////////////////////////////////////////////////////////////////// // Function: PNMImage::quick_filter_from // Access: Public // Description: Resizes from the given image, with a fixed radius of // 0.5. This is a very specialized and simple algorithm // that doesn't handle dropping below the Nyquist rate // very well, but is quite a bit faster than the more // general box_filter(), above. If borders are // specified, they will further restrict the size of the // resulting image. There's no point in using // quick_box_filter() on a single image. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 4 copy 1 484 7 xborder 1 487 253 14 Dtool_5U4kRBRi 4 174 488 0 14 Dtool_5U4kRBRi 731 //////////////////////////////////////////////////////////////////// // Function: PNMImage::quick_filter_from // Access: Public // Description: Resizes from the given image, with a fixed radius of // 0.5. This is a very specialized and simple algorithm // that doesn't handle dropping below the Nyquist rate // very well, but is quite a bit faster than the more // general box_filter(), above. If borders are // specified, they will further restrict the size of the // resulting image. There's no point in using // quick_box_filter() on a single image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 copy 1 484 254 14 Dtool_5U4kluC7 4 175 488 0 14 Dtool_5U4kluC7 294 //////////////////////////////////////////////////////////////////// // Function: PNMImage::make_histogram // Access: Published // Description: Computes a histogram of the colors used in the // image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 4 hist 1 519 255 14 Dtool_5U4kLw3A 4 176 488 0 14 Dtool_5U4kLw3A 322 //////////////////////////////////////////////////////////////////// // Function: PNMImage::perlin_noise_fill // Access: Published // Description: Variant of perlin_noise_fill that uses an // existing StackedPerlinNoise2 object. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 6 perlin 1 531 256 14 Dtool_5U4k_dBm 4 176 488 0 14 Dtool_5U4k_dBm 556 //////////////////////////////////////////////////////////////////// // Function: PNMImage::perlin_noise_fill // Access: Published // Description: Fills the image with a grayscale perlin noise // pattern based on the indicated parameters. // Uses set_xel to set the grayscale values. // The sx and sy parameters are in multiples // of the size of this image. // See also the PerlinNoise2 class in mathutil. //////////////////////////////////////////////////////////////////// 5 4 this 3 522 2 sx 1 482 2 sy 1 482 10 table_size 1 487 4 seed 1 533 257 14 Dtool_5U4ktAOc 4 176 488 0 14 Dtool_5U4ktAOc 556 //////////////////////////////////////////////////////////////////// // Function: PNMImage::perlin_noise_fill // Access: Published // Description: Fills the image with a grayscale perlin noise // pattern based on the indicated parameters. // Uses set_xel to set the grayscale values. // The sx and sy parameters are in multiples // of the size of this image. // See also the PerlinNoise2 class in mathutil. //////////////////////////////////////////////////////////////////// 4 4 this 3 522 2 sx 1 482 2 sy 1 482 10 table_size 1 487 258 14 Dtool_5U4k06Hk 4 176 488 0 14 Dtool_5U4k06Hk 556 //////////////////////////////////////////////////////////////////// // Function: PNMImage::perlin_noise_fill // Access: Published // Description: Fills the image with a grayscale perlin noise // pattern based on the indicated parameters. // Uses set_xel to set the grayscale values. // The sx and sy parameters are in multiples // of the size of this image. // See also the PerlinNoise2 class in mathutil. //////////////////////////////////////////////////////////////////// 3 4 this 3 522 2 sx 1 482 2 sy 1 482 259 14 Dtool_5U4k9NNp 7 177 527 0 14 Dtool_5U4k9NNp 302 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_average_xel // Access: Published // Description: Returns the average color of all of the pixels // in the image. //////////////////////////////////////////////////////////////////// 1 4 this 3 484 260 14 Dtool_5U4krTM5 7 178 530 0 14 Dtool_5U4krTM5 333 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_average_xel_a // Access: Published // Description: Returns the average color of all of the pixels // in the image, including the alpha channel. //////////////////////////////////////////////////////////////////// 1 4 this 3 484 261 14 Dtool_5U4kbKRd 6 179 482 0 14 Dtool_5U4kbKRd 317 //////////////////////////////////////////////////////////////////// // Function: PNMImage::get_average_gray // Access: Published // Description: Returns the average grayscale component of all of // the pixels in the image. //////////////////////////////////////////////////////////////////// 1 4 this 3 484 262 14 Dtool_5U4k7hU9 7 180 522 366 14 Dtool_5U4k7hU9 307 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator ~ // Access: Published // Description: Returns a new PNMImage that is the // complement of the current PNMImage. //////////////////////////////////////////////////////////////////// 1 4 this 3 484 263 14 Dtool_5U4kSIk1 7 181 522 366 14 Dtool_5U4kSIk1 333 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator + // Access: Published // Description: Returns a new PNMImage in which the provided color // is added to each pixel in the provided image. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 5 other 1 479 264 14 Dtool_5U4kO9xS 7 181 522 366 14 Dtool_5U4kO9xS 437 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator + // Access: Published // Description: Returns a new PNMImage in which each pixel value // is the sum of the corresponding pixel values // in the two given images. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 5 other 1 484 265 14 Dtool_5U4ktan1 7 182 522 366 14 Dtool_5U4ktan1 340 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator - // Access: Published // Description: Returns a new PNMImage in which the provided color // is subtracted from each pixel in the provided image. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 5 other 1 479 266 14 Dtool_5U4kxDzS 7 182 522 366 14 Dtool_5U4kxDzS 445 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator - // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the right image is subtracted from each // pixel value from the left image. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 5 other 1 484 267 14 Dtool_5U4kSkwy 7 183 522 366 14 Dtool_5U4kSkwy 575 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator * // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the left image is multiplied by each // pixel value from the right image. Note that the // floating-point values in the 0..1 range are // multiplied, not in the 0..maxval range. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 5 other 1 484 268 14 Dtool_5U4kgYfb 7 183 522 366 14 Dtool_5U4kgYfb 325 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator * // Access: Published // Description: Multiplies every pixel value in the image by // a constant floating-point multiplier value. //////////////////////////////////////////////////////////////////// 2 4 this 3 484 10 multiplier 1 482 269 14 Dtool_5U4kiOty 6 184 522 0 14 Dtool_5U4kiOty 334 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator += // Access: Published // Description: Returns a new PNMImage in which the provided color // is added to each pixel in the provided image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 other 1 479 270 14 Dtool_5U4kULJV 6 184 522 0 14 Dtool_5U4kULJV 438 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator += // Access: Published // Description: Returns a new PNMImage in which each pixel value // is the sum of the corresponding pixel values // in the two given images. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 other 1 484 271 14 Dtool_5U4klcsy 6 185 522 0 14 Dtool_5U4klcsy 341 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator -= // Access: Published // Description: Returns a new PNMImage in which the provided color // is subtracted from each pixel in the provided image. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 other 1 479 272 14 Dtool_5U4kdZIV 6 185 522 0 14 Dtool_5U4kdZIV 446 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator -= // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the right image is subtracted from each // pixel value from the left image. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 other 1 484 273 14 Dtool_5U4kQSI1 6 186 522 0 14 Dtool_5U4kQSI1 576 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator *= // Access: Published // Description: Returns a new PNMImage in which each pixel value // from the left image is multiplied by each // pixel value from the right image. Note that the // floating-point values in the 0..1 range are // multiplied, not in the 0..maxval range. // Only valid when both images have the same size. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 5 other 1 484 274 14 Dtool_5U4k4c6t 6 186 522 0 14 Dtool_5U4k4c6t 326 //////////////////////////////////////////////////////////////////// // Function: PNMImage::operator *= // Access: Published // Description: Multiplies every pixel value in the image by // a constant floating-point multiplier value. //////////////////////////////////////////////////////////////////// 2 4 this 3 522 10 multiplier 1 482 275 14 Dtool_5U4kScvd 7 188 534 455 14 Dtool_5U4kScvd 896 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::Constructor // Access: Published // Description: The constructor stores a pointer to the PNMImage you // pass it, but it does not take ownership of the // object; you are responsible for ensuring that the // PNMImage does not destruct during the lifetime of the // PNMPainter object. // // The xo, yo coordinates specify an optional offset for // fill coordinates. If you are painting with a pattern // fill, these specify the virtual coordinates of the // upper-left corner of the image, which can allow you // to adjust the pattern to line up with nested images, // if necessary. //////////////////////////////////////////////////////////////////// 3 5 image 1 522 2 xo 1 487 2 yo 1 487 276 14 Dtool_5U4kt6xb 7 188 534 455 14 Dtool_5U4kt6xb 896 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::Constructor // Access: Published // Description: The constructor stores a pointer to the PNMImage you // pass it, but it does not take ownership of the // object; you are responsible for ensuring that the // PNMImage does not destruct during the lifetime of the // PNMPainter object. // // The xo, yo coordinates specify an optional offset for // fill coordinates. If you are painting with a pattern // fill, these specify the virtual coordinates of the // upper-left corner of the image, which can allow you // to adjust the pattern to line up with nested images, // if necessary. //////////////////////////////////////////////////////////////////// 2 5 image 1 522 2 xo 1 487 277 14 Dtool_5U4kCt0a 7 188 534 455 14 Dtool_5U4kCt0a 896 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::Constructor // Access: Published // Description: The constructor stores a pointer to the PNMImage you // pass it, but it does not take ownership of the // object; you are responsible for ensuring that the // PNMImage does not destruct during the lifetime of the // PNMPainter object. // // The xo, yo coordinates specify an optional offset for // fill coordinates. If you are painting with a pattern // fill, these specify the virtual coordinates of the // upper-left corner of the image, which can allow you // to adjust the pattern to line up with nested images, // if necessary. //////////////////////////////////////////////////////////////////// 1 5 image 1 522 278 14 Dtool_5U4kZ5aW 4 190 488 0 14 Dtool_5U4kZ5aW 608 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::set_pen // Access: Published // Description: Specifies a PNMBrush that will be used for drawing // lines and edges. If the brush is a bitmap brush, its // image will be smeared pixelwise along the line. // // Unlike the PNMImage passed to the constructor, the // PNMPainter will take ownership of the pen. It is not // necessary to keep a separate pointer to it. //////////////////////////////////////////////////////////////////// 2 4 this 3 534 3 pen 1 478 279 14 Dtool_5U4kTkSz 7 191 478 0 14 Dtool_5U4kTkSz 259 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::get_pen // Access: Published // Description: Returns the current pen. See set_pen(). //////////////////////////////////////////////////////////////////// 1 4 this 3 535 280 14 Dtool_5U4kdT_C 4 192 488 0 14 Dtool_5U4kdT_C 639 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::set_fill // Access: Published // Description: Specifies a PNMBrush that will be used for filling // in the interiors of objects. If the brush is a // bitmap brush, its image will be tiled throughout the // space. // // Unlike the PNMImage passed to the constructor, the // PNMPainter will take ownership of the fill brush. It // is not necessary to keep a separate pointer to it. //////////////////////////////////////////////////////////////////// 2 4 this 3 534 4 fill 1 478 281 14 Dtool_5U4kQsMf 7 193 478 0 14 Dtool_5U4kQsMf 268 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::get_fill // Access: Published // Description: Returns the current fill brush. See set_fill(). //////////////////////////////////////////////////////////////////// 1 4 this 3 535 282 14 Dtool_5U4knCKD 4 194 488 0 14 Dtool_5U4knCKD 305 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::draw_point // Access: Published // Description: Draws an antialiased point on the PNMImage, using the // current pen. //////////////////////////////////////////////////////////////////// 3 4 this 3 534 1 x 1 482 1 y 1 482 283 14 Dtool_5U4kdfA6 4 195 488 0 14 Dtool_5U4kdfA6 303 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::draw_line // Access: Published // Description: Draws an antialiased line on the PNMImage, using the // current pen. //////////////////////////////////////////////////////////////////// 5 4 this 3 534 2 xa 1 482 2 ya 1 482 2 xb 1 482 2 yb 1 482 284 14 Dtool_5U4kIBht 4 196 488 0 14 Dtool_5U4kIBht 488 //////////////////////////////////////////////////////////////////// // Function: PNMPainter::draw_rectangle // Access: Published // Description: Draws a filled rectangule on the PNMImage, using the // current pen for the outline, and the current fill // brush for the interior. // // The two coordinates specify any two diagonally // opposite corners. //////////////////////////////////////////////////////////////////// 5 4 this 3 534 2 xa 1 482 2 ya 1 482 2 xb 1 482 2 yb 1 482 74 463 8 PNMBrush 75777 8 PNMBrush 8 PNMBrush 0 0 0 0 0 0 4 285 286 287 288 0 0 1 0 464 0 0 0 1 465 836 //////////////////////////////////////////////////////////////////// // Class : PNMBrush // Description : This class is used to control the shape and color of // the drawing operations performed by a PNMPainter // object. // // Normally, you don't create a PNMBrush directly; // instead, use one of the static PNMBrush::make_*() // methods provided here. // // A PNMBrush is used to draw the border of a polygon or // rectangle, as well as for filling its interior. When // it is used to draw a border, the brush is "smeared" // over the border; when it is used to fill the // interior, it is tiled through the interior. //////////////////////////////////////////////////////////////////// 464 14 ReferenceCount 2049 14 ReferenceCount 14 ReferenceCount 0 0 0 0 0 0 0 0 0 0 0 0 425 //////////////////////////////////////////////////////////////////// // Class : ReferenceCount // Description : A base class for all things that want to be // reference-counted. ReferenceCount works in // conjunction with PointerTo to automatically delete // objects when the last pointer to them goes away. //////////////////////////////////////////////////////////////////// 465 11 BrushEffect 794624 21 PNMBrush::BrushEffect 21 PNMBrush::BrushEffect 463 0 0 0 0 0 0 0 0 0 4 6 BE_set 16 PNMBrush::BE_set 0 8 BE_blend 18 PNMBrush::BE_blend 1 9 BE_darken 19 PNMBrush::BE_darken 2 10 BE_lighten 20 PNMBrush::BE_lighten 3 0 0 466 3 xel 140289 5 pixel 5 pixel 0 0 0 1 289 305 3 537 538 539 9 290 291 292 293 294 295 296 297 298 0 0 0 0 0 0 467 18 unsigned short int 8262 18 unsigned short int 18 unsigned short int 0 1 0 0 0 0 0 0 0 0 0 0 0 468 11 PNMFileType 75777 11 PNMFileType 11 PNMFileType 0 0 0 0 0 0 5 306 307 308 309 310 1 540 0 1 0 469 0 0 0 0 330 //////////////////////////////////////////////////////////////////// // Class : PNMFileType // Description : This is the base class of a family of classes that // represent particular image file types that PNMImage // supports. //////////////////////////////////////////////////////////////////// 469 13 TypedWritable 2049 13 TypedWritable 13 TypedWritable 0 0 0 0 0 0 0 0 0 0 0 0 356 //////////////////////////////////////////////////////////////////// // Class : TypedWritable // Description : Base class for objects that can be written to and // read from Bam files. // // See also TypedObject for detailed instructions. //////////////////////////////////////////////////////////////////// 470 19 PNMFileTypeRegistry 26625 19 PNMFileTypeRegistry 19 PNMFileTypeRegistry 0 0 0 0 311 0 7 312 313 314 315 316 317 318 1 541 0 0 0 0 280 //////////////////////////////////////////////////////////////////// // Class : PNMFileTypeRegistry // Description : This class maintains the set of all known // PNMFileTypes in the universe. //////////////////////////////////////////////////////////////////// 471 14 PNMImageHeader 26625 14 PNMImageHeader 14 PNMImageHeader 0 0 0 1 319 321 0 18 320 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 0 0 0 0 4 472 473 474 475 616 //////////////////////////////////////////////////////////////////// // Class : PNMImageHeader // Description : This is the base class of PNMImage, PNMReader, and // PNMWriter. It encapsulates all the information // associated with an image that describes its size, // number of channels, etc; that is, all the information // about the image except the image data itself. It's // the sort of information you typically read from the // image file's header. //////////////////////////////////////////////////////////////////// 472 9 ColorType 794624 25 PNMImageHeader::ColorType 25 PNMImageHeader::ColorType 471 0 0 0 0 0 0 0 0 0 5 10 CT_invalid 26 PNMImageHeader::CT_invalid 0 12 CT_grayscale 28 PNMImageHeader::CT_grayscale 1 14 CT_two_channel 30 PNMImageHeader::CT_two_channel 2 8 CT_color 24 PNMImageHeader::CT_color 3 15 CT_four_channel 31 PNMImageHeader::CT_four_channel 4 0 198 // This enumerated type indicates the number of channels in the // image, and also implies an image type. You can treat it either // as an integer number of channels or as an enumerated image type. 473 9 PixelSpec 403457 25 PNMImageHeader::PixelSpec 25 PNMImageHeader::PixelSpec 471 0 0 1 339 356 0 16 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 0 0 0 0 0 179 // Contains a single pixel specification used in compute_histogram() // and make_histogram(). Note that pixels are stored by integer // value, not by floating-point scaled value. 474 14 PixelSpecCount 403457 30 PNMImageHeader::PixelSpecCount 30 PNMImageHeader::PixelSpecCount 471 0 0 0 357 0 0 0 0 0 0 0 93 // Associates a pixel specification with an appearance count, for // use in Histogram, below. 475 9 Histogram 403457 25 PNMImageHeader::Histogram 25 PNMImageHeader::Histogram 471 0 0 1 358 363 0 4 359 360 361 362 1 542 0 0 0 0 65 // Used to return a pixel histogram in PNMImage::get_histogram(). 476 8 PNMImage 26625 8 PNMImage 8 PNMImage 0 0 0 1 364 366 0 88 365 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 0 0 1 0 471 0 0 0 0 1506 //////////////////////////////////////////////////////////////////// // Class : PNMImage // Description : The name of this class derives from the fact that we // originally implemented it as a layer on top of the // "pnm library", based on netpbm, which was built to // implement pbm, pgm, and pbm files, and is the // underlying support of a number of public-domain image // file converters. Nowadays we are no longer derived // directly from the pnm library, mainly to allow // support of C++ iostreams instead of the C stdio FILE // interface. // // Conceptually, a PNMImage is a two-dimensional array // of xels, which are the PNM-defined generic pixel // type. Each xel may have a red, green, and blue // component, or (if the image is grayscale) a gray // component. The image may be read in, the individual // xels manipulated, and written out again, or a black // image may be constructed from scratch. // // The image is of size XSize() by YSize() xels, // numbered from top to bottom, left to right, beginning // at zero. // // Files can be specified by filename, or by an iostream // pointer. The filename "-" refers to stdin or stdout. //////////////////////////////////////////////////////////////////// 477 10 PNMPainter 26625 10 PNMPainter 10 PNMPainter 0 0 0 1 454 455 0 7 456 457 458 459 460 461 462 0 0 0 0 0 596 //////////////////////////////////////////////////////////////////// // Class : PNMPainter // Description : This class provides a number of convenient methods // for painting drawings directly into a PNMImage. // // It stores a pointer to the PNMImage you pass it, but // it does not take ownership of the object; you are // responsible for ensuring that the PNMImage does not // destruct during the lifetime of the PNMPainter // object. //////////////////////////////////////////////////////////////////// 478 10 PNMBrush * 8576 10 PNMBrush * 10 PNMBrush * 0 0 463 0 0 0 0 0 0 0 0 0 0 479 18 LVecBase4d const * 8576 18 LVecBase4d const * 18 LVecBase4d const * 0 0 480 0 0 0 0 0 0 0 0 0 0 480 16 LVecBase4d const 8832 16 LVecBase4d const 16 LVecBase4d const 0 0 481 0 0 0 0 0 0 0 0 0 0 481 6 Colord 2048 10 LVecBase4d 10 LVecBase4d 0 0 0 0 0 0 0 0 0 0 0 0 265 //////////////////////////////////////////////////////////////////// // Class : LVecBase4 // Description : This is the base class for all three-component // vectors and points. //////////////////////////////////////////////////////////////////// 482 6 double 8194 6 double 6 double 0 3 0 0 0 0 0 0 0 0 0 0 0 483 4 bool 8194 4 bool 4 bool 0 4 0 0 0 0 0 0 0 0 0 0 0 484 16 PNMImage const * 8576 16 PNMImage const * 16 PNMImage const * 0 0 485 0 0 0 0 0 0 0 0 0 0 485 14 PNMImage const 8832 14 PNMImage const 14 PNMImage const 0 0 476 0 0 0 0 0 0 0 0 0 0 486 7 pixel * 8576 7 pixel * 7 pixel * 0 0 466 0 0 0 0 0 0 0 0 0 0 487 3 int 8194 3 int 3 int 0 1 0 0 0 0 0 0 0 0 0 0 0 488 4 void 8194 4 void 4 void 0 6 0 0 0 0 0 0 0 0 0 0 0 489 13 pixel const * 8576 13 pixel const * 13 pixel const * 0 0 490 0 0 0 0 0 0 0 0 0 0 490 11 pixel const 8832 11 pixel const 11 pixel const 0 0 466 0 0 0 0 0 0 0 0 0 0 491 19 PNMFileType const * 8576 19 PNMFileType const * 19 PNMFileType const * 0 0 492 0 0 0 0 0 0 0 0 0 0 492 17 PNMFileType const 8832 17 PNMFileType const 17 PNMFileType const 0 0 468 0 0 0 0 0 0 0 0 0 0 493 13 atomic string 2 13 atomic string 13 atomic string 0 7 0 0 0 0 0 0 0 0 0 0 0 494 10 TypeHandle 2048 10 TypeHandle 10 TypeHandle 0 0 0 0 0 0 0 0 0 0 0 0 1098 //////////////////////////////////////////////////////////////////// // Class : TypeHandle // Description : TypeHandle is the identifier used to differentiate // C++ class types. Any C++ classes that inherit from // some base class, and must be differentiated at run // time, should store a static TypeHandle object that // can be queried through a static member function // named get_class_type(). Most of the time, it is also // desirable to inherit from TypedObject, which provides // some virtual functions to return the TypeHandle for a // particular instance. // // At its essence, a TypeHandle is simply a unique // identifier that is assigned by the TypeRegistry. The // TypeRegistry stores a tree of TypeHandles, so that // ancestry of a particular type may be queried, and the // type name may be retrieved for run-time display. //////////////////////////////////////////////////////////////////// 495 12 TypeHandle * 8576 12 TypeHandle * 12 TypeHandle * 0 0 494 0 0 0 0 0 0 0 0 0 0 496 27 PNMFileTypeRegistry const * 8576 27 PNMFileTypeRegistry const * 27 PNMFileTypeRegistry const * 0 0 497 0 0 0 0 0 0 0 0 0 0 497 25 PNMFileTypeRegistry const 8832 25 PNMFileTypeRegistry const 25 PNMFileTypeRegistry const 0 0 470 0 0 0 0 0 0 0 0 0 0 498 13 PNMFileType * 8576 13 PNMFileType * 13 PNMFileType * 0 0 468 0 0 0 0 0 0 0 0 0 0 499 9 ostream * 8576 9 ostream * 9 ostream * 0 0 500 0 0 0 0 0 0 0 0 0 0 500 7 ostream 2048 7 ostream 7 ostream 0 0 0 0 0 0 0 0 0 0 0 0 0 501 21 PNMFileTypeRegistry * 8576 21 PNMFileTypeRegistry * 21 PNMFileTypeRegistry * 0 0 470 0 0 0 0 0 0 0 0 0 0 502 16 PNMImageHeader * 8576 16 PNMImageHeader * 16 PNMImageHeader * 0 0 471 0 0 0 0 0 0 0 0 0 0 503 22 PNMImageHeader const * 8576 22 PNMImageHeader const * 22 PNMImageHeader const * 0 0 504 0 0 0 0 0 0 0 0 0 0 504 20 PNMImageHeader const 8832 20 PNMImageHeader const 20 PNMImageHeader const 0 0 471 0 0 0 0 0 0 0 0 0 0 505 16 Filename const * 8576 16 Filename const * 16 Filename const * 0 0 506 0 0 0 0 0 0 0 0 0 0 506 14 Filename const 8832 14 Filename const 14 Filename const 0 0 507 0 0 0 0 0 0 0 0 0 0 507 8 Filename 2048 8 Filename 8 Filename 0 0 0 0 0 0 0 0 0 0 0 0 869 //////////////////////////////////////////////////////////////////// // Class : Filename // Description : The name of a file, such as a texture file or an Egg // file. Stores the full pathname, and includes // functions for extracting out the directory prefix // part and the file extension and stuff. // // A Filename is also aware of the mapping between the // Unix-like filename convention we use internally, and // the local OS's specific filename convention, and it // knows how to perform basic OS-specific I/O, like // testing for file existence and searching a // searchpath, as well as the best way to open an // fstream for reading or writing. //////////////////////////////////////////////////////////////////// 508 9 istream * 8576 9 istream * 9 istream * 0 0 509 0 0 0 0 0 0 0 0 0 0 509 7 istream 2048 7 istream 7 istream 0 0 0 0 0 0 0 0 0 0 0 0 0 510 11 PNMReader * 8576 11 PNMReader * 11 PNMReader * 0 0 511 0 0 0 0 0 0 0 0 0 0 511 9 PNMReader 2048 9 PNMReader 9 PNMReader 0 0 0 0 0 0 0 0 0 0 0 0 0 512 11 PNMWriter * 8576 11 PNMWriter * 11 PNMWriter * 0 0 513 0 0 0 0 0 0 0 0 0 0 513 9 PNMWriter 2048 9 PNMWriter 9 PNMWriter 0 0 0 0 0 0 0 0 0 0 0 0 0 514 22 basic_string< char > * 8576 22 basic_string< char > * 22 basic_string< char > * 0 0 515 0 0 0 0 0 0 0 0 0 0 515 6 string 2048 20 basic_string< char > 20 basic_string< char > 0 0 0 0 0 0 0 0 0 0 0 0 0 516 17 PixelSpec const * 8576 33 PNMImageHeader::PixelSpec const * 33 PNMImageHeader::PixelSpec const * 0 0 517 0 0 0 0 0 0 0 0 0 0 517 15 PixelSpec const 8832 31 PNMImageHeader::PixelSpec const 31 PNMImageHeader::PixelSpec const 0 0 473 0 0 0 0 0 0 0 0 0 0 518 11 PixelSpec * 8576 27 PNMImageHeader::PixelSpec * 27 PNMImageHeader::PixelSpec * 0 0 473 0 0 0 0 0 0 0 0 0 0 519 11 Histogram * 8576 27 PNMImageHeader::Histogram * 27 PNMImageHeader::Histogram * 0 0 475 0 0 0 0 0 0 0 0 0 0 520 17 Histogram const * 8576 33 PNMImageHeader::Histogram const * 33 PNMImageHeader::Histogram const * 0 0 521 0 0 0 0 0 0 0 0 0 0 521 15 Histogram const 8832 31 PNMImageHeader::Histogram const 31 PNMImageHeader::Histogram const 0 0 475 0 0 0 0 0 0 0 0 0 0 522 10 PNMImage * 8576 10 PNMImage * 10 PNMImage * 0 0 476 0 0 0 0 0 0 0 0 0 0 523 17 LMatrix4f const * 8576 17 LMatrix4f const * 17 LMatrix4f const * 0 0 524 0 0 0 0 0 0 0 0 0 0 524 15 LMatrix4f const 8832 15 LMatrix4f const 15 LMatrix4f const 0 0 525 0 0 0 0 0 0 0 0 0 0 525 9 LMatrix4f 2048 9 LMatrix4f 9 LMatrix4f 0 0 0 0 0 0 0 3 543 544 545 0 0 0 0 703 // Filename: lmatrix4_src.h // Created by: drose (15Jan99) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Class : LMatrix4 // Description : This is a 4-by-4 transform matrix. //////////////////////////////////////////////////////////////////// 526 9 RGBColord 2048 10 LVecBase3d 10 LVecBase3d 0 0 0 0 0 0 0 0 0 0 0 0 754 // Filename: lvecBase3_src.h // Created by: drose (08Mar00) // //////////////////////////////////////////////////////////////////// // // PANDA 3D SOFTWARE // Copyright (c) Carnegie Mellon University. All rights reserved. // // All use of this software is subject to the terms of the revised BSD // license. You should have received a copy of this license along // with this source code in a file named "LICENSE." // //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// // Class : LVecBase3 // Description : This is the base class for all three-component // vectors and points. //////////////////////////////////////////////////////////////////// 527 12 LVecBase3d * 8576 12 LVecBase3d * 12 LVecBase3d * 0 0 526 0 0 0 0 0 0 0 0 0 0 528 18 LVecBase3d const * 8576 18 LVecBase3d const * 18 LVecBase3d const * 0 0 529 0 0 0 0 0 0 0 0 0 0 529 16 LVecBase3d const 8832 16 LVecBase3d const 16 LVecBase3d const 0 0 526 0 0 0 0 0 0 0 0 0 0 530 12 LVecBase4d * 8576 12 LVecBase4d * 12 LVecBase4d * 0 0 481 0 0 0 0 0 0 0 0 0 0 531 21 StackedPerlinNoise2 * 8576 21 StackedPerlinNoise2 * 21 StackedPerlinNoise2 * 0 0 532 0 0 0 0 0 0 0 0 0 0 532 19 StackedPerlinNoise2 2048 19 StackedPerlinNoise2 19 StackedPerlinNoise2 0 0 0 0 0 0 0 0 0 0 0 0 359 //////////////////////////////////////////////////////////////////// // Class : StackedPerlinNoise2 // Description : Implements a multi-layer PerlinNoise, with one or // more high-frequency noise functions added to a // lower-frequency base noise function. //////////////////////////////////////////////////////////////////// 533 17 unsigned long int 8214 17 unsigned long int 17 unsigned long int 0 1 0 0 0 0 0 0 0 0 0 0 0 534 12 PNMPainter * 8576 12 PNMPainter * 12 PNMPainter * 0 0 477 0 0 0 0 0 0 0 0 0 0 535 18 PNMPainter const * 8576 18 PNMPainter const * 18 PNMPainter const * 0 0 536 0 0 0 0 0 0 0 0 0 0 536 16 PNMPainter const 8832 16 PNMPainter const 16 PNMPainter const 0 0 477 0 0 0 0 0 0 0 0 0 0 0 3 537 1 b 6 467 299 300 8 pixel::b 538 1 g 6 467 301 302 8 pixel::g 539 1 r 6 467 303 304 8 pixel::r 6 540 0 30 14 get_extensions 18 get_num_extensions 13 get_extension 541 0 37 9 get_types 13 get_num_types 8 get_type 542 0 89 10 get_pixels 14 get_num_pixels 9 get_pixel 543 0 386 8 get_rows 4 size 7 get_row 544 0 386 8 get_cols 4 size 7 get_col 545 0 386 9 get_row3s 4 size 8 get_row3