Ptex
|
Bilinear filter (for rectangular textures) More...
Public Member Functions | |
PtexBilinearFilter (PtexTexture *tx, const PtexFilter::Options &opts) | |
Public Member Functions inherited from PtexSeparableFilter | |
virtual void | release () |
Release resources held by this pointer (pointer becomes invalid). | |
virtual void | eval (float *result, int firstchan, int nchannels, int faceid, float u, float v, float uw1, float vw1, float uw2, float vw2, float width, float blur) |
Apply filter to a ptex data file. | |
virtual void | release ()=0 |
Release resources held by this pointer (pointer becomes invalid). | |
virtual void | eval (float *result, int firstchan, int nchannels, int faceid, float u, float v, float uw1, float vw1, float uw2, float vw2, float width=1, float blur=0)=0 |
Apply filter to a ptex data file. | |
Protected Member Functions | |
virtual void | buildKernel (PtexSeparableKernel &k, float u, float v, float uw, float vw, Res faceRes) |
Protected Member Functions inherited from PtexSeparableFilter | |
PtexSeparableFilter (PtexTexture *tx, const PtexFilter::Options &opts) | |
virtual | ~PtexSeparableFilter () |
virtual void | buildKernel (PtexSeparableKernel &k, float u, float v, float uw, float vw, Res faceRes)=0 |
void | splitAndApply (PtexSeparableKernel &k, int faceid, const Ptex::FaceInfo &f) |
void | applyAcrossEdge (PtexSeparableKernel &k, int faceid, const Ptex::FaceInfo &f, int eid) |
void | applyToCorner (PtexSeparableKernel &k, int faceid, const Ptex::FaceInfo &f, int eid) |
void | applyToCornerFace (PtexSeparableKernel &k, const Ptex::FaceInfo &f, int eid, int cfaceid, const Ptex::FaceInfo &cf, int ceid) |
void | apply (PtexSeparableKernel &k, int faceid, const Ptex::FaceInfo &f) |
Protected Member Functions inherited from PtexFilter | |
virtual | ~PtexFilter () |
Destructor not for public use. Use release() instead. | |
Additional Inherited Members | |
Public Types inherited from PtexFilter | |
enum | FilterType { f_point , f_bilinear , f_box , f_gaussian , f_bicubic , f_bspline , f_catmullrom , f_mitchell } |
Filter types. More... | |
Static Public Member Functions inherited from PtexFilter | |
static PtexFilter * | getFilter (PtexTexture *tx, const Options &opts) |
Protected Attributes inherited from PtexSeparableFilter | |
PtexTexture * | _tx |
Options | _options |
float * | _result |
float | _weight |
int | _firstChanOffset |
int | _nchan |
int | _ntxchan |
DataType | _dt |
BorderMode | _uMode |
BorderMode | _vMode |
EdgeFilterMode | _efm |
Bilinear filter (for rectangular textures)
Definition at line 375 of file PtexFilters.cpp.
|
inline |
Definition at line 378 of file PtexFilters.cpp.
|
inlineprotectedvirtual |
Implements PtexSeparableFilter.
Definition at line 382 of file PtexFilters.cpp.
References PtexUtils::calcResFromWidth(), PtexSeparableKernel::ku, PtexSeparableKernel::kv, PtexUtils::max(), PtexUtils::min(), PtexUtils::reciprocalPow2(), PtexSeparableKernel::res, PtexSeparableKernel::u, PtexSeparableKernel::uw, PtexSeparableKernel::v, and PtexSeparableKernel::vw.