processing.opengl
Class Texture
- java.lang.Object
-
- processing.opengl.Texture
-
- All Implemented Interfaces:
- PConstants
public class Texture extends java.lang.Object implements PConstants
This class wraps an OpenGL texture. By Andres Colubri
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static classTexture.ParametersThis class stores the parameters for a texture: target, internal format, minimization filter and magnification filter.
-
Field Summary
Fields Modifier and Type Field and Description intglFormatintglHeightintglMagFilterintglMinFilterintglNameintglTargetintglWidthintglWrapSintglWrapTintheightstatic intMAX_BUFFER_CACHE_SIZEintwidth-
Fields inherited from interface processing.core.PConstants
ADD, ALPHA, ALT, AMBIENT, ARC, ARGB, ARROW, BACKSPACE, BASELINE, BEVEL, BEZIER_VERTEX, BLEND, BLUR, BOTTOM, BOX, BREAK, BURN, CENTER, CHATTER, CHORD, CLAMP, CLOSE, CODED, COMPLAINT, CONTROL, CORNER, CORNERS, CROSS, CURVE_VERTEX, CUSTOM, DARKEST, DEG_TO_RAD, DELETE, DIAMETER, DIFFERENCE, DILATE, DIRECTIONAL, DISABLE_ASYNC_SAVEFRAME, DISABLE_BUFFER_READING, DISABLE_DEPTH_MASK, DISABLE_DEPTH_SORT, DISABLE_DEPTH_TEST, DISABLE_KEY_REPEAT, DISABLE_NATIVE_FONTS, DISABLE_OPENGL_ERRORS, DISABLE_OPTIMIZED_STROKE, DISABLE_STROKE_PERSPECTIVE, DISABLE_STROKE_PURE, DISABLE_TEXTURE_MIPMAPS, DODGE, DOWN, DXF, ELLIPSE, ENABLE_ASYNC_SAVEFRAME, ENABLE_BUFFER_READING, ENABLE_DEPTH_MASK, ENABLE_DEPTH_SORT, ENABLE_DEPTH_TEST, ENABLE_KEY_REPEAT, ENABLE_NATIVE_FONTS, ENABLE_OPENGL_ERRORS, ENABLE_OPTIMIZED_STROKE, ENABLE_STROKE_PERSPECTIVE, ENABLE_STROKE_PURE, ENABLE_TEXTURE_MIPMAPS, ENTER, EPSILON, ERODE, ESC, EXCLUSION, FX2D, GIF, GRAY, GROUP, HALF_PI, HAND, HARD_LIGHT, HINT_COUNT, HSB, IMAGE, INVERT, JAVA2D, JPEG, LANDSCAPE, LEFT, LIGHTEST, LINE, LINE_LOOP, LINE_STRIP, LINES, LINUX, MACOSX, MAX_FLOAT, MAX_INT, MIN_FLOAT, MIN_INT, MITER, MODEL, MODELVIEW, MOVE, MULTIPLY, NORMAL, OPAQUE, OPEN, OPENGL, ORTHOGRAPHIC, OTHER, OVERLAY, P2D, P3D, PATH, PDF, PERSPECTIVE, PI, PIE, platformNames, POINTS, POLYGON, PORTRAIT, POSTERIZE, PROBLEM, PROJECT, PROJECTION, QUAD, QUAD_BEZIER_VERTEX, QUAD_STRIP, QUADRATIC_VERTEX, QUADS, QUARTER_PI, RAD_TO_DEG, RADIUS, RECT, REPEAT, REPLACE, RETURN, RGB, RIGHT, ROUND, SCREEN, SHAPE, SHIFT, SOFT_LIGHT, SPAN, SPHERE, SPOT, SQUARE, SUBTRACT, SVG, TAB, TARGA, TAU, TEXT, THIRD_PI, THRESHOLD, TIFF, TOP, TRIANGLE, TRIANGLE_FAN, TRIANGLE_STRIP, TRIANGLES, TWO_PI, UP, VERTEX, WAIT, WHITESPACE, WINDOWS, X, Y, Z
-
-
Constructor Summary
Constructors Constructor and Description Texture(PGraphicsOpenGL pg)Texture(PGraphicsOpenGL pg, int width, int height)Creates an instance of PTexture with size width x height.Texture(PGraphicsOpenGL pg, int width, int height, java.lang.Object params)Creates an instance of PTexture with size width x height and with the specified parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description booleanavailable()Returns true if the texture has been initialized.voidbind()booleanbound()booleancolorBuffer()voidcolorBuffer(boolean value)voidcopyBufferFromSource(java.lang.Object natRef, java.nio.ByteBuffer byteBuf, int w, int h)intcurrentSampling()voiddisposeSourceBuffer()voidget(int[] pixels)Copy texture to pixels.voidgetBufferPixels(int[] pixels)intgetModifiedX1()intgetModifiedX2()intgetModifiedY1()intgetModifiedY2()Texture.ParametersgetParameters()booleanhasBuffers()booleanhasBufferSource()voidinit(int width, int height)Sets the size of the image and texture to width x height.voidinit(int width, int height, int glName, int glTarget, int glFormat, int glWidth, int glHeight, int glMinFilter, int glMagFilter, int glWrapS, int glWrapT)Initializes the texture using GL parametersvoidinit(int width, int height, Texture.Parameters params)Sets the size of the image and texture to width x height, and the parameters of the texture to params.booleaninvertedX()Returns true if the texture is inverted along the horizontal direction.voidinvertedX(boolean v)Sets the texture as inverted or not along the horizontal direction.booleaninvertedY()Returns true if the texture is inverted along the vertical direction.voidinvertedY(boolean v)Sets the texture as inverted or not along the vertical direction.booleanisModified()floatmaxTexcoordU()Returns the maximum possible value for the texture coordinate U (horizontal).floatmaxTexcoordV()Returns the maximum possible value for the texture coordinate V (vertical).voidput(int texTarget, int texName, int texWidth, int texHeight, int w, int h)voidput(int texTarget, int texName, int texWidth, int texHeight, int target, int tex, int x, int y, int w, int h)voidput(Texture tex)voidput(Texture tex, int x, int y, int w, int h)voidresize(int wide, int high)voidset(int[] pixels)voidset(int[] pixels, int format)voidset(int[] pixels, int x, int y, int w, int h)voidset(int[] pixels, int x, int y, int w, int h, int format)voidset(int texTarget, int texName, int texWidth, int texHeight, int w, int h)voidset(int texTarget, int texName, int texWidth, int texHeight, int target, int tex, int x, int y, int w, int h)voidset(Texture tex)voidset(Texture tex, int x, int y, int w, int h)voidsetBufferSource(java.lang.Object source)voidsetModified()voidsetModified(boolean m)voidsetNative(int[] pixels)voidsetNative(int[] pixels, int x, int y, int w, int h)voidsetNative(java.nio.IntBuffer pixBuf, int x, int y, int w, int h)voidunbind()voidupdateTexels()voidupdateTexels(int x, int y, int w, int h)booleanusingMipmaps()Returns true or false whether or not the texture is using mipmaps.voidusingMipmaps(boolean mipmaps, int sampling)booleanusingRepeat()Returns true or false whether or not the texture is using repeat wrap mode along either U or V directions.voidusingRepeat(boolean repeat)
-
-
-
Field Detail
-
width
public int width
-
height
public int height
-
glName
public int glName
-
glTarget
public int glTarget
-
glFormat
public int glFormat
-
glMinFilter
public int glMinFilter
-
glMagFilter
public int glMagFilter
-
glWrapS
public int glWrapS
-
glWrapT
public int glWrapT
-
glWidth
public int glWidth
-
glHeight
public int glHeight
-
MAX_BUFFER_CACHE_SIZE
public static final int MAX_BUFFER_CACHE_SIZE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Texture
public Texture(PGraphicsOpenGL pg)
-
Texture
public Texture(PGraphicsOpenGL pg, int width, int height)
Creates an instance of PTexture with size width x height. The texture is initialized (empty) to that size.- Parameters:
width- intheight- int
-
Texture
public Texture(PGraphicsOpenGL pg, int width, int height, java.lang.Object params)
Creates an instance of PTexture with size width x height and with the specified parameters. The texture is initialized (empty) to that size.- Parameters:
width- intheight- intparams- Parameters
-
-
Method Detail
-
init
public void init(int width, int height)Sets the size of the image and texture to width x height. If the texture is already initialized, it first destroys the current OpenGL texture object and then creates a new one with the specified size.- Parameters:
width- intheight- int
-
init
public void init(int width, int height, Texture.Parameters params)Sets the size of the image and texture to width x height, and the parameters of the texture to params. If the texture is already initialized, it first destroys the current OpenGL texture object and then creates a new one with the specified size.- Parameters:
width- intheight- intparams- GLTextureParameters
-
init
public void init(int width, int height, int glName, int glTarget, int glFormat, int glWidth, int glHeight, int glMinFilter, int glMagFilter, int glWrapS, int glWrapT)Initializes the texture using GL parameters
-
resize
public void resize(int wide, int high)
-
available
public boolean available()
Returns true if the texture has been initialized.- Returns:
- boolean
-
set
public void set(Texture tex)
-
set
public void set(Texture tex, int x, int y, int w, int h)
-
set
public void set(int texTarget, int texName, int texWidth, int texHeight, int w, int h)
-
set
public void set(int texTarget, int texName, int texWidth, int texHeight, int target, int tex, int x, int y, int w, int h)
-
set
public void set(int[] pixels)
-
set
public void set(int[] pixels, int format)
-
set
public void set(int[] pixels, int x, int y, int w, int h)
-
set
public void set(int[] pixels, int x, int y, int w, int h, int format)
-
setNative
public void setNative(int[] pixels)
-
setNative
public void setNative(int[] pixels, int x, int y, int w, int h)
-
setNative
public void setNative(java.nio.IntBuffer pixBuf, int x, int y, int w, int h)
-
get
public void get(int[] pixels)
Copy texture to pixels. Involves video memory to main memory transfer (slow).
-
put
public void put(Texture tex)
-
put
public void put(Texture tex, int x, int y, int w, int h)
-
put
public void put(int texTarget, int texName, int texWidth, int texHeight, int w, int h)
-
put
public void put(int texTarget, int texName, int texWidth, int texHeight, int target, int tex, int x, int y, int w, int h)
-
usingMipmaps
public boolean usingMipmaps()
Returns true or false whether or not the texture is using mipmaps.- Returns:
- boolean
-
usingMipmaps
public void usingMipmaps(boolean mipmaps, int sampling)
-
usingRepeat
public boolean usingRepeat()
Returns true or false whether or not the texture is using repeat wrap mode along either U or V directions.- Returns:
- boolean
-
usingRepeat
public void usingRepeat(boolean repeat)
-
maxTexcoordU
public float maxTexcoordU()
Returns the maximum possible value for the texture coordinate U (horizontal).- Returns:
- float
-
maxTexcoordV
public float maxTexcoordV()
Returns the maximum possible value for the texture coordinate V (vertical).- Returns:
- float
-
invertedX
public boolean invertedX()
Returns true if the texture is inverted along the horizontal direction.- Returns:
- boolean;
-
invertedX
public void invertedX(boolean v)
Sets the texture as inverted or not along the horizontal direction.- Parameters:
v- boolean;
-
invertedY
public boolean invertedY()
Returns true if the texture is inverted along the vertical direction.- Returns:
- boolean;
-
invertedY
public void invertedY(boolean v)
Sets the texture as inverted or not along the vertical direction.- Parameters:
v- boolean;
-
currentSampling
public int currentSampling()
-
bind
public void bind()
-
unbind
public void unbind()
-
bound
public boolean bound()
-
isModified
public boolean isModified()
-
setModified
public void setModified()
-
setModified
public void setModified(boolean m)
-
getModifiedX1
public int getModifiedX1()
-
getModifiedX2
public int getModifiedX2()
-
getModifiedY1
public int getModifiedY1()
-
getModifiedY2
public int getModifiedY2()
-
updateTexels
public void updateTexels()
-
updateTexels
public void updateTexels(int x, int y, int w, int h)
-
setBufferSource
public void setBufferSource(java.lang.Object source)
-
copyBufferFromSource
public void copyBufferFromSource(java.lang.Object natRef, java.nio.ByteBuffer byteBuf, int w, int h)
-
disposeSourceBuffer
public void disposeSourceBuffer()
-
getBufferPixels
public void getBufferPixels(int[] pixels)
-
hasBufferSource
public boolean hasBufferSource()
-
hasBuffers
public boolean hasBuffers()
-
colorBuffer
public void colorBuffer(boolean value)
-
colorBuffer
public boolean colorBuffer()
-
getParameters
public Texture.Parameters getParameters()
-
-
DataMelt 3.0 © DataMelt by jWork.ORG