Ptex
|
Common data structures and enums used throughout the API. More...
Classes | |
struct | FaceInfo |
Information about a face, as stored in the Ptex file header. More... | |
struct | Res |
Pixel resolution of a given texture. More... | |
class | String |
Memory-managed string. More... | |
Enumerations | |
enum | MeshType { mt_triangle, mt_quad } |
Type of base mesh for which the textures are defined. More... | |
enum | DataType { dt_uint8, dt_uint16, dt_half, dt_float } |
Type of data stored in texture file. More... | |
enum | EdgeFilterMode { efm_none, efm_tanvec } |
How to handle transformation across edges when filtering. More... | |
enum | BorderMode { m_clamp, m_black, m_periodic } |
How to handle mesh border when filtering. More... | |
enum | EdgeId { e_bottom, e_right, e_top, e_left } |
Edge IDs used in adjacency data in the Ptex::FaceInfo struct. More... | |
enum | MetaDataType { mdt_string, mdt_int8, mdt_int16, mdt_int32, mdt_float, mdt_double } |
Type of meta data entry. More... | |
Functions | |
const char * | MeshTypeName (MeshType mt) |
Look up name of given mesh type. More... | |
const char * | DataTypeName (DataType dt) |
Look up name of given data type. More... | |
const char * | BorderModeName (BorderMode m) |
Look up name of given border mode. More... | |
const char * | EdgeFilterModeName (EdgeFilterMode m) |
Look up name of given edge filter mode. More... | |
const char * | EdgeIdName (EdgeId eid) |
Look up name of given edge ID. More... | |
const char * | MetaDataTypeName (MetaDataType mdt) |
Look up name of given meta data type. More... | |
int | DataSize (DataType dt) |
Look up size of given data type (in bytes). More... | |
float | OneValue (DataType dt) |
Look up value of given data type that corresponds to the normalized value of 1.0. More... | |
float | OneValueInv (DataType dt) |
Lookup up inverse value of given data type that corresponds to the normalized value of 1.0. More... | |
void | ConvertToFloat (float *dst, const void *src, Ptex::DataType dt, int numChannels) |
Convert a number of data values from the given data type to float. More... | |
void | ConvertFromFloat (void *dst, const float *src, Ptex::DataType dt, int numChannels) |
Convert a number of data values from float to the given data type. More... | |
Common data structures and enums used throughout the API.
enum Ptex::BorderMode |
How to handle mesh border when filtering.
Enumerator | |
---|---|
m_clamp | texel access is clamped to border |
m_black | texel beyond border are assumed to be black |
m_periodic | texel access wraps to other side of face |
Definition at line 99 of file Ptexture.h.
enum Ptex::DataType |
Type of data stored in texture file.
Enumerator | |
---|---|
dt_uint8 | Unsigned, 8-bit integer. |
dt_uint16 | Unsigned, 16-bit integer. |
dt_half | Half-precision (16-bit) floating point. |
dt_float | Single-precision (32-bit) floating point. |
Definition at line 85 of file Ptexture.h.
enum Ptex::EdgeFilterMode |
How to handle transformation across edges when filtering.
Enumerator | |
---|---|
efm_none | Don't do anything with the values. |
efm_tanvec | Values are vectors in tangent space; rotate values. |
Definition at line 93 of file Ptexture.h.
enum Ptex::EdgeId |
Edge IDs used in adjacency data in the Ptex::FaceInfo struct.
Edge ID usage for triangle meshes is TBD.
Enumerator | |
---|---|
e_bottom | Bottom edge, from UV (0,0) to (1,0) |
e_right | Right edge, from UV (1,0) to (1,1) |
e_top | Top edge, from UV (1,1) to (0,1) |
e_left | Left edge, from UV (0,1) to (0,0) |
Definition at line 107 of file Ptexture.h.
enum Ptex::MeshType |
Type of base mesh for which the textures are defined.
A mesh can be triangle-based (with triangular textures) or quad-based (with rectangular textures).
Enumerator | |
---|---|
mt_triangle | Mesh is triangle-based. |
mt_quad | Mesh is quad-based. |
Definition at line 79 of file Ptexture.h.
enum Ptex::MetaDataType |
Type of meta data entry.
Definition at line 115 of file Ptexture.h.
const char* Ptex::BorderModeName | ( | BorderMode | m | ) |
Look up name of given border mode.
void Ptex::ConvertFromFloat | ( | void * | dst, |
const float * | src, | ||
Ptex::DataType | dt, | ||
int | numChannels | ||
) |
Convert a number of data values from float to the given data type.
Referenced by OneValueInv().
void Ptex::ConvertToFloat | ( | float * | dst, |
const void * | src, | ||
Ptex::DataType | dt, | ||
int | numChannels | ||
) |
Convert a number of data values from the given data type to float.
Referenced by PtexSeparableFilter::eval(), PtexTriangleFilter::eval(), and OneValueInv().
|
inline |
Look up size of given data type (in bytes).
Definition at line 143 of file Ptexture.h.
Referenced by PtexSeparableFilter::eval(), PtexTriangleFilter::eval(), PtexReader::getPixel(), Header::pixelSize(), PtexReader::readFaceData(), PtexReader::TiledFaceBase::TiledFaceBase(), and PtexWriterBase::writeFaceBlock().
const char* Ptex::DataTypeName | ( | DataType | dt | ) |
Look up name of given data type.
const char* Ptex::EdgeFilterModeName | ( | EdgeFilterMode | m | ) |
Look up name of given edge filter mode.
const char* Ptex::EdgeIdName | ( | EdgeId | eid | ) |
Look up name of given edge ID.
const char* Ptex::MeshTypeName | ( | MeshType | mt | ) |
Look up name of given mesh type.
const char* Ptex::MetaDataTypeName | ( | MetaDataType | mdt | ) |
Look up name of given meta data type.
|
inline |
Look up value of given data type that corresponds to the normalized value of 1.0.
Definition at line 149 of file Ptexture.h.
Referenced by PtexUtils::divalpha(), PtexSeparableFilter::eval(), and PtexTriangleFilter::eval().
|
inline |
Lookup up inverse value of given data type that corresponds to the normalized value of 1.0.
Definition at line 155 of file Ptexture.h.
References ConvertFromFloat(), ConvertToFloat(), and PTEXAPI.
Referenced by PtexUtils::multalpha().