Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

panda/src/pnmimage/pnm-image-filter.cxx File Reference

#include <pandabase.h>
#include <math.h>
#include <cmath.h>
#include "pnmImage.h"
#include "pnm-image-filter-core.cxx"

Go to the source code of this file.

Defines

#define FUNCTION_NAME   filter_red_xy
#define ASIZE   get_x_size
#define BSIZE   get_y_size
#define GETVAL(a, b)   get_red(a, b)
#define SETVAL(a, b, v)   set_red(a, b, v)
#define FUNCTION_NAME   filter_green_xy
#define ASIZE   get_x_size
#define BSIZE   get_y_size
#define GETVAL(a, b)   get_green(a, b)
#define SETVAL(a, b, v)   set_green(a, b, v)
#define FUNCTION_NAME   filter_blue_xy
#define ASIZE   get_x_size
#define BSIZE   get_y_size
#define GETVAL(a, b)   get_blue(a, b)
#define SETVAL(a, b, v)   set_blue(a, b, v)
#define FUNCTION_NAME   filter_gray_xy
#define ASIZE   get_x_size
#define BSIZE   get_y_size
#define GETVAL(a, b)   get_bright(a, b)
#define SETVAL(a, b, v)   set_xel(a, b, v)
#define FUNCTION_NAME   filter_alpha_xy
#define ASIZE   get_x_size
#define BSIZE   get_y_size
#define GETVAL(a, b)   get_alpha(a, b)
#define SETVAL(a, b, v)   set_alpha(a, b, v)
#define FUNCTION_NAME   filter_red_yx
#define ASIZE   get_y_size
#define BSIZE   get_x_size
#define GETVAL(a, b)   get_red(b, a)
#define SETVAL(a, b, v)   set_red(b, a, v)
#define FUNCTION_NAME   filter_green_yx
#define ASIZE   get_y_size
#define BSIZE   get_x_size
#define GETVAL(a, b)   get_green(b, a)
#define SETVAL(a, b, v)   set_green(b, a, v)
#define FUNCTION_NAME   filter_blue_yx
#define ASIZE   get_y_size
#define BSIZE   get_x_size
#define GETVAL(a, b)   get_blue(b, a)
#define SETVAL(a, b, v)   set_blue(b, a, v)
#define FUNCTION_NAME   filter_gray_yx
#define ASIZE   get_y_size
#define BSIZE   get_x_size
#define GETVAL(a, b)   get_bright(b, a)
#define SETVAL(a, b, v)   set_xel(b, a, v)
#define FUNCTION_NAME   filter_alpha_yx
#define ASIZE   get_y_size
#define BSIZE   get_x_size
#define GETVAL(a, b)   get_alpha(b, a)
#define SETVAL(a, b, v)   set_alpha(b, a, v)

Typedefs

typedef double WorkType
typedef float StoreType
typedef void FilterFunction (double scale, double width, WorkType *&filter, double &filter_width)

Functions

void filter_row (StoreType dest[], int dest_len, const StoreType source[], int source_len, double scale, const WorkType filter[], double filter_width)
void box_filter_impl (double scale, double width, WorkType *&filter, double &filter_width)
void gaussian_filter_impl (double scale, double width, WorkType *&filter, double &filter_width)
void filter_image (PNMImage &dest, const PNMImage &source, double width, FilterFunction *make_filter)
void box_filter_xel (const PNMImage &image, int x, int y, double x_contrib, double y_contrib, double &red, double &grn, double &blu, double &alpha, double &pixel_count)
void box_filter_line (const PNMImage &image, double x0, int y, double x1, double y_contrib, double &red, double &grn, double &blu, double &alpha, double &pixel_count)
void box_filter_region (const PNMImage &image, double x0, double y0, double x1, double y1, xel &result, xelval &alpha_result)

Variables

const WorkType source_max = 1.0
const WorkType filter_max = 1.0


Detailed Description

Definition in file pnm-image-filter.cxx.


Define Documentation

#define ASIZE   get_y_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_y_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_y_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_y_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_y_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_x_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_x_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_x_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_x_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define ASIZE   get_x_size
 

Definition at line 387 of file pnm-image-filter.cxx.

#define BSIZE   get_x_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_x_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_x_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_x_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_x_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_y_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_y_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_y_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_y_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define BSIZE   get_y_size
 

Definition at line 388 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_alpha_yx
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_gray_yx
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_blue_yx
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_green_yx
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_red_yx
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_alpha_xy
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_gray_xy
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_blue_xy
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_green_xy
 

Definition at line 386 of file pnm-image-filter.cxx.

#define FUNCTION_NAME   filter_red_xy
 

Definition at line 386 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_alpha(b, a)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_bright(b, a)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_blue(b, a)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_green(b, a)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_red(b, a)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_alpha(a, b)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_bright(a, b)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_blue(a, b)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_green(a, b)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define GETVAL a,
 )     get_red(a, b)
 

Definition at line 389 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_alpha(b, a, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_xel(b, a, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_blue(b, a, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_green(b, a, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_red(b, a, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_alpha(a, b, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_xel(a, b, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_blue(a, b, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_green(a, b, v)
 

Definition at line 390 of file pnm-image-filter.cxx.

#define SETVAL a,
b,
 )     set_red(a, b, v)
 

Definition at line 390 of file pnm-image-filter.cxx.


Typedef Documentation

typedef void FilterFunction(double scale, double width, WorkType *&filter, double &filter_width)
 

Definition at line 183 of file pnm-image-filter.cxx.

typedef float StoreType
 

Definition at line 82 of file pnm-image-filter.cxx.

typedef double WorkType
 

Definition at line 81 of file pnm-image-filter.cxx.

Referenced by filter_row().


Function Documentation

void box_filter_impl double  scale,
double  width,
WorkType *&  filter,
double &  filter_width
[static]
 

Definition at line 187 of file pnm-image-filter.cxx.

void box_filter_line const PNMImage image,
double  x0,
int  y,
double  x1,
double  y_contrib,
double &  red,
double &  grn,
double &  blu,
double &  alpha,
double &  pixel_count
[inline]
 

Definition at line 503 of file pnm-image-filter.cxx.

void box_filter_region const PNMImage image,
double  x0,
double  y0,
double  x1,
double  y1,
xel result,
xelval alpha_result
[static]
 

Definition at line 532 of file pnm-image-filter.cxx.

References y.

void box_filter_xel const PNMImage image,
int  x,
int  y,
double  x_contrib,
double  y_contrib,
double &  red,
double &  grn,
double &  blu,
double &  alpha,
double &  pixel_count
[inline]
 

Definition at line 486 of file pnm-image-filter.cxx.

References x, and y.

void filter_image PNMImage dest,
const PNMImage source,
double  width,
FilterFunction make_filter
[static]
 

Definition at line 402 of file pnm-image-filter.cxx.

References PNMImageHeader::has_alpha(), PNMImageHeader::is_grayscale(), and width.

Referenced by PNMImage::box_filter_from().

void filter_row StoreType  dest[],
int  dest_len,
const StoreType  source[],
int  source_len,
double  scale,
const WorkType  filter[],
double  filter_width
[static]
 

Definition at line 115 of file pnm-image-filter.cxx.

References cceil(), cfloor(), and WorkType.

void gaussian_filter_impl double  scale,
double  width,
WorkType *&  filter,
double &  filter_width
[static]
 

Definition at line 213 of file pnm-image-filter.cxx.

Referenced by PNMImage::box_filter_from().


Variable Documentation

const WorkType filter_max = 1.0 [static]
 

Definition at line 84 of file pnm-image-filter.cxx.

const WorkType source_max = 1.0 [static]
 

Definition at line 83 of file pnm-image-filter.cxx.


Generated on Fri May 2 00:46:04 2003 for Panda by doxygen1.3