OpenSceneGraph 3.6.5
|
Image class for encapsulating the storage texture image data. More...
#include <Image>
Classes | |
class | DataIterator |
Convenience class for assisting the copying of image data when the image data isn't contiguous. More... | |
class | DimensionsChangedCallback |
struct | UpdateCallback |
Convenience update callback class that can be attached to a StateAttribute (such as Textures) to ensure that the Image::update(NodeVisitor*) method is called during the update traversal. More... |
Public Types | |
enum | WriteHint { NO_PREFERENCE , STORE_INLINE , EXTERNAL_FILE } |
enum | AllocationMode { NO_DELETE , USE_NEW_DELETE , USE_MALLOC_FREE } |
enum | Origin { BOTTOM_LEFT , TOP_LEFT } |
typedef std::vector< unsigned int > | MipmapDataType |
Precomputed mipmaps stuff. | |
typedef std::vector< osg::ref_ptr< DimensionsChangedCallback > > | DimensionsChangedCallbackVector |
Public Types inherited from osg::Object | |
enum | DataVariance { DYNAMIC , STATIC , UNSPECIFIED } |
Public Member Functions | |
Image () | |
Image (const Image &image, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. | |
virtual Object * | cloneType () const |
Clone the type of an object, with Object* return type. | |
virtual Object * | clone (const CopyOp ©op) const |
Clone an object, with Object* return type. | |
virtual bool | isSameKindAs (const Object *obj) const |
virtual const char * | libraryName () const |
return the name of the object's library. | |
virtual const char * | className () const |
return the name of the object's class type. | |
virtual osg::Image * | asImage () |
Convert 'this' into a Image pointer if Object is a Image, otherwise return 0. | |
virtual const osg::Image * | asImage () const |
Convert 'this' into a Image pointer if Object is a Image, otherwise return 0. | |
virtual const GLvoid * | getDataPointer () const |
virtual unsigned int | getTotalDataSize () const |
virtual int | compare (const Image &rhs) const |
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. | |
void | setFileName (const std::string &fileName) |
const std::string & | getFileName () const |
void | setWriteHint (WriteHint writeHint) |
WriteHint | getWriteHint () const |
void | setAllocationMode (AllocationMode mode) |
Set the method used for deleting data once it goes out of scope. | |
AllocationMode | getAllocationMode () const |
Get the method used for deleting data once it goes out of scope. | |
virtual void | allocateImage (int s, int t, int r, GLenum pixelFormat, GLenum type, int packing=1) |
Allocate a pixel block of specified size and type. | |
virtual void | setImage (int s, int t, int r, GLint internalTextureformat, GLenum pixelFormat, GLenum type, unsigned char *data, AllocationMode mode, int packing=1, int rowLength=0) |
Set the image dimensions, format and data. | |
virtual void | readPixels (int x, int y, int width, int height, GLenum pixelFormat, GLenum type, int packing=1) |
Read pixels from current frame buffer at specified position and size, using glReadPixels. | |
virtual void | readImageFromCurrentTexture (unsigned int contextID, bool copyMipMapsIfAvailable, GLenum type=GL_UNSIGNED_BYTE, unsigned int face=0) |
Read the contents of the current bound texture, handling compressed pixelFormats if present. | |
void | swap (osg::Image &rhs) |
swap the data and settings between two image objects. | |
void | scaleImage (int s, int t, int r) |
Scale image to specified size. | |
virtual void | scaleImage (int s, int t, int r, GLenum newDataType) |
Scale image to specified size and with specified data type. | |
virtual void | copySubImage (int s_offset, int t_offset, int r_offset, const osg::Image *source) |
Copy a source Image into a subpart of this Image at specified position. | |
void | setOrigin (Origin origin) |
Set the origin of the image. | |
Origin | getOrigin () const |
Get the origin of the image. | |
int | s () const |
Width of image. | |
int | t () const |
Height of image. | |
int | r () const |
Depth of image. | |
void | setRowLength (int length) |
int | getRowLength () const |
void | setInternalTextureFormat (GLint internalFormat) |
GLint | getInternalTextureFormat () const |
void | setPixelFormat (GLenum pixelFormat) |
GLenum | getPixelFormat () const |
void | setDataType (GLenum dataType) |
GLenum | getDataType () const |
void | setPacking (unsigned int packing) |
unsigned int | getPacking () const |
bool | isCompressed () const |
Return true of the pixel format is an OpenGL compressed pixel format. | |
void | setPixelAspectRatio (float pixelAspectRatio) |
Set the pixel aspect ratio, defined as the pixel width divided by the pixel height. | |
float | getPixelAspectRatio () const |
Get the pixel aspect ratio. | |
unsigned int | getPixelSizeInBits () const |
Return the number of bits required for each pixel. | |
unsigned int | getRowSizeInBytes () const |
Return the number of bytes each row of pixels occupies once it has been packed. | |
unsigned int | getRowStepInBytes () const |
Return the number of bytes between each successive row. | |
unsigned int | getImageSizeInBytes () const |
Return the number of bytes each image (_s*_t) of pixels occupies. | |
unsigned int | getImageStepInBytes () const |
Return the number of bytes between each successive image. | |
unsigned int | getTotalSizeInBytes () const |
Return the number of bytes the whole row/image/volume of pixels occupies. | |
unsigned int | getTotalSizeInBytesIncludingMipmaps () const |
Return the number of bytes the whole row/image/volume of pixels occupies, including all mip maps if included. | |
bool | valid () const |
Return true if the Image represent a valid and usable imagery. | |
unsigned char * | data () |
Raw image data. | |
const unsigned char * | data () const |
Raw const image data. | |
unsigned char * | data (unsigned int column, unsigned int row=0, unsigned int image=0) |
const unsigned char * | data (unsigned int column, unsigned int row=0, unsigned int image=0) const |
bool | isDataContiguous () const |
return true if the data stored in the image is a contiguous block of data. | |
Vec4 | getColor (unsigned int s, unsigned t=0, unsigned r=0) const |
Get the color value for specified texcoord. | |
Vec4 | getColor (const Vec2 &texcoord) const |
Get the color value for specified texcoord. | |
Vec4 | getColor (const Vec3 &texcoord) const |
Get the color value for specified texcoord. | |
void | setColor (const osg::Vec4 &color, unsigned int s, unsigned int t=0, unsigned int r=0) |
Set the color value for specified texcoord. | |
void | setColor (const osg::Vec4 &color, const osg::Vec2 &texcoord) |
Set the color value for specified texcoord. | |
void | setColor (const osg::Vec4 &color, const osg::Vec3 &texcoord) |
Set the color value for specified texcoord. | |
void | flipHorizontal () |
Flip the image horizontally, around s dimension. | |
void | flipVertical () |
Flip the image vertically, around t dimension. | |
void | flipDepth () |
Flip the image around the r dimension. | |
void | ensureValidSizeForTexturing (GLint maxTextureSize) |
Ensure image dimensions are a power of two. | |
bool | isMipmap () const |
unsigned int | getNumMipmapLevels () const |
void | setMipmapLevels (const MipmapDataType &mipmapDataVector) |
Send offsets into data. | |
const MipmapDataType & | getMipmapLevels () const |
unsigned int | getMipmapOffset (unsigned int mipmapLevel) const |
unsigned char * | getMipmapData (unsigned int mipmapLevel) |
const unsigned char * | getMipmapData (unsigned int mipmapLevel) const |
bool | supportsTextureSubloading () const |
returns false for texture formats that do not support texture subloading | |
virtual bool | isImageTranslucent () const |
Return true if this image is translucent - i.e. | |
void | setPixelBufferObject (PixelBufferObject *buffer) |
Set the optional PixelBufferObject used to map the image memory efficiently to graphics memory. | |
PixelBufferObject * | getPixelBufferObject () |
Get the PixelBufferObject. | |
const PixelBufferObject * | getPixelBufferObject () const |
Get the const PixelBufferObject. | |
virtual bool | requiresUpdateCall () const |
Return whether the update(NodeVisitor* nv) should be required on each frame to enable proper working of osg::Image. | |
virtual void | update (NodeVisitor *) |
update method for osg::Image subclasses that update themselves during the update traversal. | |
virtual bool | sendFocusHint (bool) |
Hint whether to enable or disable focus to images acting as front ends to interactive surfaces such as a vnc or browser window. | |
virtual bool | sendPointerEvent (int, int, int) |
Send pointer events to images that are acting as front ends to interactive surfaces such as a vnc or browser window. | |
virtual bool | sendKeyEvent (int, bool) |
Send key events to images that are acting as front ends to interactive surfaces such as a vnc or browser window. | |
virtual void | setFrameLastRendered (const osg::FrameStamp *) |
Pass frame information to the custom Image classes, to be called only when objects associated with imagery are not culled. | |
void | addDimensionsChangedCallback (DimensionsChangedCallback *cb) |
void | removeDimensionsChangedCallback (DimensionsChangedCallback *cb) |
Public Member Functions inherited from osg::BufferData | |
BufferData () | |
BufferData (const BufferData &bd, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. | |
virtual osg::Array * | asArray () |
virtual const osg::Array * | asArray () const |
virtual osg::PrimitiveSet * | asPrimitiveSet () |
virtual const osg::PrimitiveSet * | asPrimitiveSet () const |
void | setBufferObject (BufferObject *bufferObject) |
BufferObject * | getBufferObject () |
const BufferObject * | getBufferObject () const |
void | setBufferIndex (unsigned int index) |
unsigned int | getBufferIndex () const |
GLBufferObject * | getGLBufferObject (unsigned int contextID) const |
GLBufferObject * | getOrCreateGLBufferObject (unsigned int contextID) const |
void | setModifiedCallback (ModifiedCallback *md) |
ModifiedCallback * | getModifiedCallback () |
const ModifiedCallback * | getModifiedCallback () const |
void | dirty () |
Dirty the primitive, which increments the modified count, to force buffer objects to update. | |
void | setModifiedCount (unsigned int value) |
Set the modified count value. | |
unsigned int | getModifiedCount () const |
Get modified count value. | |
virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
Resize any per context GLObject buffers to specified size. | |
void | releaseGLObjects (State *state=0) const |
If State is non-zero, this function releases OpenGL objects for the specified graphics context. | |
unsigned int | getNumClients () const |
void | addClient (osg::Object *) |
void | removeClient (osg::Object *) |
Public Member Functions inherited from osg::Object | |
Object () | |
Construct an object. | |
Object (bool threadSafeRefUnref) | |
Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor, optional CopyOp object can be used to control shallow vs deep copying of dynamic data. | |
std::string | getCompoundClassName () const |
return the compound class name that combines the library name and class name. | |
virtual Node * | asNode () |
Convert 'this' into a Node pointer if Object is a Node, otherwise return 0. | |
virtual const Node * | asNode () const |
convert 'const this' into a const Node pointer if Object is a Node, otherwise return 0. | |
virtual NodeVisitor * | asNodeVisitor () |
Convert 'this' into a NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. | |
virtual const NodeVisitor * | asNodeVisitor () const |
convert 'const this' into a const NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. | |
virtual StateSet * | asStateSet () |
Convert 'this' into a StateSet pointer if Object is a StateSet, otherwise return 0. | |
virtual const StateSet * | asStateSet () const |
convert 'const this' into a const StateSet pointer if Object is a StateSet, otherwise return 0. | |
virtual StateAttribute * | asStateAttribute () |
Convert 'this' into a StateAttribute pointer if Object is a StateAttribute, otherwise return 0. | |
virtual const StateAttribute * | asStateAttribute () const |
convert 'const this' into a const StateAttribute pointer if Object is a StateAttribute, otherwise return 0. | |
virtual Uniform * | asUniform () |
Convert 'this' into a Uniform pointer if Object is a Uniform, otherwise return 0. | |
virtual const Uniform * | asUniform () const |
convert 'const this' into a const Uniform pointer if Object is a Uniform, otherwise return 0. | |
virtual Camera * | asCamera () |
Convert 'this' into a Camera pointer if Node is a Camera, otherwise return 0. | |
virtual const Camera * | asCamera () const |
convert 'const this' into a const Camera pointer if Node is a Camera, otherwise return 0. | |
virtual Drawable * | asDrawable () |
Convert 'this' into a Drawable pointer if Object is a Drawable, otherwise return 0. | |
virtual const Drawable * | asDrawable () const |
convert 'const this' into a const Drawable pointer if Object is a Drawable, otherwise return 0. | |
virtual Callback * | asCallback () |
Convert 'this' into a Callback pointer if Object is a Callback, otherwise return 0. | |
virtual const Callback * | asCallback () const |
convert 'const this' into a const Callback pointer if Object is a Callback, otherwise return 0. | |
virtual CallbackObject * | asCallbackObject () |
Convert 'this' into a CallbackObject pointer if Object is a CallbackObject, otherwise return 0. | |
virtual const CallbackObject * | asCallbackObject () const |
convert 'const this' into a const CallbackObject pointer if Object is a CallbackObject, otherwise return 0. | |
virtual UserDataContainer * | asUserDataContainer () |
Convert 'this' into a UserDataContainer pointer if Object is a UserDataContainer, otherwise return 0. | |
virtual const UserDataContainer * | asUserDataContainer () const |
convert 'const this' into a const UserDataContainer pointer if Object is a UserDataContainer, otherwise return 0. | |
virtual ValueObject * | asValueObject () |
Convert 'this' into a ValueObject pointer if Object is a ValueObject, otherwise return 0. | |
virtual const ValueObject * | asValueObject () const |
Convert 'this' into a ValueObject pointer if Object is a ValueObject, otherwise return 0. | |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
Set whether to use a mutex to ensure ref() and unref() are thread safe. | |
virtual void | setName (const std::string &name) |
Set the name of object using C++ style string. | |
void | setName (const char *name) |
Set the name of object using a C style string. | |
const std::string & | getName () const |
Get the name of object. | |
void | setDataVariance (DataVariance dv) |
Set the data variance of this object. | |
DataVariance | getDataVariance () const |
Get the data variance of this object. | |
virtual void | computeDataVariance () |
Compute the DataVariance based on an assessment of callback etc. | |
void | setUserDataContainer (osg::UserDataContainer *udc) |
set the UserDataContainer object. | |
template<class T> | |
void | setUserDataContainer (const ref_ptr< T > &udc) |
osg::UserDataContainer * | getUserDataContainer () |
get the UserDataContainer attached to this object. | |
const osg::UserDataContainer * | getUserDataContainer () const |
get the const UserDataContainer attached to this object. | |
osg::UserDataContainer * | getOrCreateUserDataContainer () |
Convenience method that returns the UserDataContainer, and if one doesn't already exist creates and assigns a DefaultUserDataContainer to the Object and then return this new UserDataContainer. | |
virtual void | setUserData (Referenced *obj) |
Set user data, data must be subclassed from Referenced to allow automatic memory handling. | |
template<class T> | |
void | setUserData (const ref_ptr< T > &ud) |
virtual Referenced * | getUserData () |
Get user data. | |
virtual const Referenced * | getUserData () const |
Get const user data. | |
template<typename T> | |
bool | getUserValue (const std::string &name, T &value) const |
Convenience method that casts the named UserObject to osg::TemplateValueObject<T> and gets the value. | |
template<typename T> | |
void | setUserValue (const std::string &name, const T &value) |
Convenience method that creates the osg::TemplateValueObject<T> to store the specified value and adds it as a named UserObject. | |
template<typename T> | |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const |
provide implementation of osg::Object::getUserValue(..) template | |
Public Member Functions inherited from osg::Referenced | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Deprecated, Referenced is now always uses thread safe ref/unref, use default Referenced() constructor instead. | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
Get whether a mutex is used to ensure ref() and unref() are thread safe. | |
OpenThreads::Mutex * | getRefMutex () const |
Get the mutex used to ensure thread safety of ref()/unref(). | |
int | ref () const |
Increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
int | unref () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. | |
int | unref_nodelete () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. | |
int | referenceCount () const |
Return the number of pointers currently referencing this object. | |
ObserverSet * | getObserverSet () const |
Get the ObserverSet if one is attached, otherwise return NULL. | |
ObserverSet * | getOrCreateObserverSet () const |
Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. | |
void | addObserver (Observer *observer) const |
Add a Observer that is observing this object, notify the Observer when this object gets deleted. | |
void | removeObserver (Observer *observer) const |
Remove Observer that is observing this object. |
Static Public Member Functions | |
static bool | isPackedType (GLenum type) |
static GLenum | computePixelFormat (GLenum pixelFormat) |
static GLenum | computeFormatDataType (GLenum pixelFormat) |
static osg::Vec3i | computeBlockFootprint (GLenum pixelFormat) |
return the dimensions of a block of compressed pixels | |
static unsigned int | computeBlockSize (GLenum pixelFormat, GLenum packing) |
return the size in bytes of a block of compressed pixels | |
static unsigned int | computeNumComponents (GLenum pixelFormat) |
static unsigned int | computePixelSizeInBits (GLenum pixelFormat, GLenum type) |
static unsigned int | computeRowWidthInBytes (int width, GLenum pixelFormat, GLenum type, int packing) |
static unsigned int | computeImageSizeInBytes (int width, int height, int depth, GLenum pixelFormat, GLenum type, int packing=1, int slice_packing=1, int image_packing=1) |
static int | roudUpToMultiple (int s, int pack) |
static int | computeNearestPowerOfTwo (int s, float bias=0.5f) |
static int | computeNumberOfMipmapLevels (int s, int t=1, int r=1) |
Static Public Member Functions inherited from osg::Referenced | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
Get the optional global Referenced mutex, this can be shared between all osg::Referenced. | |
static void | setDeleteHandler (DeleteHandler *handler) |
Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. | |
static DeleteHandler * | getDeleteHandler () |
Get a DeleteHandler. |
Protected Member Functions | |
virtual | ~Image () |
Image & | operator= (const Image &) |
void | handleDimensionsChangedCallbacks () |
void | deallocateData () |
void | setData (unsigned char *data, AllocationMode allocationMode) |
Protected Member Functions inherited from osg::BufferData | |
virtual | ~BufferData () |
Protected Member Functions inherited from osg::Object | |
virtual | ~Object () |
Object destructor. | |
Protected Member Functions inherited from osg::Referenced | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Protected Attributes | |
std::string | _fileName |
WriteHint | _writeHint |
Origin | _origin |
int | _s |
int | _t |
int | _r |
int | _rowLength |
GLint | _internalTextureFormat |
GLenum | _pixelFormat |
GLenum | _dataType |
unsigned int | _packing |
float | _pixelAspectRatio |
AllocationMode | _allocationMode |
unsigned char * | _data |
MipmapDataType | _mipmapData |
DimensionsChangedCallbackVector | _dimensionsChangedCallbacks |
Protected Attributes inherited from osg::BufferData | |
unsigned int | _modifiedCount |
unsigned int | _bufferIndex |
osg::ref_ptr< BufferObject > | _bufferObject |
osg::ref_ptr< ModifiedCallback > | _modifiedCallback |
unsigned int | _numClients |
Protected Attributes inherited from osg::Object | |
std::string | _name |
DataVariance | _dataVariance |
osg::UserDataContainer * | _userDataContainer |
Protected Attributes inherited from osg::Referenced | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
Image class for encapsulating the storage texture image data.
typedef std::vector< osg::ref_ptr<DimensionsChangedCallback> > osg::Image::DimensionsChangedCallbackVector |
typedef std::vector< unsigned int > osg::Image::MipmapDataType |
Precomputed mipmaps stuff.
enum osg::Image::Origin |
osg::Image::Image | ( | ) |
Referenced by clone(), cloneType(), compare(), osg::ImageStream::compare(), osg::Image::DataIterator::DataIterator(), Image(), isSameKindAs(), and operator=().
osg::Image::Image | ( | const Image & | image, |
const CopyOp & | copyop = CopyOp::SHALLOW_COPY ) |
Copy constructor using CopyOp to manage deep vs shallow copy.
References Image(), and osg::CopyOp::SHALLOW_COPY.
|
protectedvirtual |
void osg::Image::addDimensionsChangedCallback | ( | DimensionsChangedCallback * | cb | ) |
|
virtual |
|
inlinevirtual |
Convert 'this' into a Image pointer if Object is a Image, otherwise return 0.
Equivalent to dynamic_cast<Image*>(this).
Reimplemented from osg::BufferData.
|
inlinevirtual |
Convert 'this' into a Image pointer if Object is a Image, otherwise return 0.
Equivalent to dynamic_cast<Image*>(this).
Reimplemented from osg::BufferData.
|
inlinevirtual |
return the name of the object's class type.
Must be defined by derived classes.
Reimplemented from osg::BufferData.
Reimplemented in osg::ImageSequence, and osg::ImageStream.
Clone an object, with Object* return type.
Must be defined by derived classes.
Implements osg::Object.
Reimplemented in osg::ImageSequence, and osg::ImageStream.
References Image().
|
inlinevirtual |
Clone the type of an object, with Object* return type.
Must be defined by derived classes.
Implements osg::Object.
Reimplemented in osg::ImageSequence, and osg::ImageStream.
References Image().
|
virtual |
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
Reimplemented in osg::ImageSequence, and osg::ImageStream.
References Image().
|
static |
return the dimensions of a block of compressed pixels
|
static |
return the size in bytes of a block of compressed pixels
|
static |
|
static |
|
static |
References s().
|
static |
|
static |
|
static |
|
static |
Referenced by getPixelSizeInBits().
|
static |
Referenced by getRowSizeInBytes(), and getRowStepInBytes().
|
virtual |
Copy a source Image into a subpart of this Image at specified position.
Typically used to copy to an already allocated image, such as creating a 3D image from a stack 2D images. If this Image is empty then image data is created to accommodate the source image in its offset position. If source is NULL then no operation happens, this Image is left unchanged.
|
inline |
Raw image data.
Note, data in successive rows may not be contiguous, isDataContiguous() return false then you should take care to access the data per row rather than treating the whole data as a single block.
References _data.
Referenced by getDataPointer(), osg::modifyImage(), osg::readImage(), osgUtil::CubeMapGenerator::set_pixel(), setData(), setImage(), and osg::ImageSequence::setImage().
|
inline |
Raw const image data.
Note, data in successive rows may not be contiguous, isDataContiguous() return false then you should take care to access the data per row rather than treating the whole data as a single block.
References _data.
|
inline |
References _data, getImageSizeInBytes(), getPixelSizeInBits(), getRowStepInBytes(), and NULL.
|
inline |
References _data, getImageSizeInBytes(), getPixelSizeInBits(), getRowStepInBytes(), and NULL.
|
protected |
void osg::Image::ensureValidSizeForTexturing | ( | GLint | maxTextureSize | ) |
Ensure image dimensions are a power of two.
Mipmapped textures require the image dimensions to be power of two and are within the maximum texture size for the host machine.
void osg::Image::flipDepth | ( | ) |
Flip the image around the r dimension.
Only relevant for 3D textures.
void osg::Image::flipHorizontal | ( | ) |
Flip the image horizontally, around s dimension.
void osg::Image::flipVertical | ( | ) |
Flip the image vertically, around t dimension.
|
inline |
Get the method used for deleting data once it goes out of scope.
References _allocationMode.
Get the color value for specified texcoord.
References getColor(), osg::Vec2f::x(), and osg::Vec2f::y().
Referenced by getColor().
Get the color value for specified texcoord.
Vec4 osg::Image::getColor | ( | unsigned int | s, |
unsigned | t = 0, | ||
unsigned | r = 0 ) const |
|
inlinevirtual |
Implements osg::BufferData.
References data().
|
inline |
References _dataType.
Referenced by osg::modifyImage(), osg::readImage(), and scaleImage().
|
inline |
References _fileName.
|
inline |
Return the number of bytes each image (_s*_t) of pixels occupies.
References _t, and getRowSizeInBytes().
Referenced by data(), data(), and getTotalSizeInBytes().
|
inline |
Return the number of bytes between each successive image.
Note, getImageSizeInBytes() will only equal getImageStepInBytes() when isDataContiguous() return true.
References _t, and getRowStepInBytes().
|
inline |
References _internalTextureFormat.
|
inline |
References _data, and getMipmapOffset().
|
inline |
References _data, and getMipmapOffset().
|
inline |
References _mipmapData.
|
inline |
References _mipmapData, and getNumMipmapLevels().
Referenced by getMipmapData(), and getMipmapData().
|
inline |
References _mipmapData.
Referenced by getMipmapOffset().
|
inline |
References _packing.
|
inline |
Get the pixel aspect ratio.
References _pixelAspectRatio.
|
inline |
Get the PixelBufferObject.
References osg::BufferData::getBufferObject().
|
inline |
Get the const PixelBufferObject.
References osg::BufferData::getBufferObject().
|
inline |
References _pixelFormat.
Referenced by osg::modifyImage(), and osg::readImage().
|
inline |
Return the number of bits required for each pixel.
References _dataType, _pixelFormat, and computePixelSizeInBits().
|
inline |
References _rowLength.
|
inline |
Return the number of bytes each row of pixels occupies once it has been packed.
References _dataType, _packing, _pixelFormat, _s, and computeRowWidthInBytes().
Referenced by getImageSizeInBytes().
|
inline |
Return the number of bytes between each successive row.
Note, getRowSizeInBytes() will only equal getRowStepInBytes() when isDataContiguous() return true.
References _dataType, _packing, _pixelFormat, _rowLength, _s, and computeRowWidthInBytes().
Referenced by data(), data(), and getImageStepInBytes().
|
inlinevirtual |
Implements osg::BufferData.
References getTotalSizeInBytesIncludingMipmaps().
|
inline |
Return the number of bytes the whole row/image/volume of pixels occupies.
References _r, and getImageSizeInBytes().
unsigned int osg::Image::getTotalSizeInBytesIncludingMipmaps | ( | ) | const |
Return the number of bytes the whole row/image/volume of pixels occupies, including all mip maps if included.
Referenced by getTotalDataSize().
|
inline |
References _writeHint.
|
inlineprotected |
References _dimensionsChangedCallbacks.
bool osg::Image::isCompressed | ( | ) | const |
Return true of the pixel format is an OpenGL compressed pixel format.
|
inline |
return true if the data stored in the image is a contiguous block of data.
References _rowLength, and _s.
|
virtual |
Return true if this image is translucent - i.e.
it has alpha values that are less 1.0 (when normalized).
|
inline |
References _mipmapData.
|
static |
|
inlinevirtual |
Reimplemented from osg::BufferData.
Reimplemented in osg::ImageSequence, and osg::ImageStream.
References Image().
|
inlinevirtual |
return the name of the object's library.
Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.
Reimplemented from osg::BufferData.
Reimplemented in osg::ImageSequence, and osg::ImageStream.
|
inline |
Depth of image.
References _r.
Referenced by allocateImage(), computeNumberOfMipmapLevels(), getColor(), osg::modifyImage(), osg::readImage(), scaleImage(), scaleImage(), setColor(), setImage(), and osg::ImageSequence::setImage().
|
virtual |
Read the contents of the current bound texture, handling compressed pixelFormats if present.
Create memory for storage if required, reuse existing pixel coords if possible.
|
virtual |
Read pixels from current frame buffer at specified position and size, using glReadPixels.
Create memory for storage if required, reuse existing pixel coords if possible.
void osg::Image::removeDimensionsChangedCallback | ( | DimensionsChangedCallback * | cb | ) |
|
inlinevirtual |
Return whether the update(NodeVisitor* nv) should be required on each frame to enable proper working of osg::Image.
Reimplemented in osg::ImageSequence.
|
static |
References s().
|
inline |
Width of image.
References _s.
Referenced by allocateImage(), computeNearestPowerOfTwo(), computeNumberOfMipmapLevels(), getColor(), osg::modifyImage(), osg::readImage(), roudUpToMultiple(), scaleImage(), scaleImage(), setColor(), setImage(), and osg::ImageSequence::setImage().
|
inline |
Scale image to specified size.
References getDataType(), r(), s(), scaleImage(), and t().
Referenced by scaleImage().
|
virtual |
|
inlinevirtual |
Hint whether to enable or disable focus to images acting as front ends to interactive surfaces such as a vnc or browser window.
Return true if handled.
|
inlinevirtual |
Send key events to images that are acting as front ends to interactive surfaces such as a vnc or browser window.
Return true if handled.
|
inlinevirtual |
Send pointer events to images that are acting as front ends to interactive surfaces such as a vnc or browser window.
Return true if handled.
|
inline |
Set the method used for deleting data once it goes out of scope.
References _allocationMode.
Set the color value for specified texcoord.
Note texcoord is clamped to edge.
References setColor().
Referenced by setColor().
Set the color value for specified texcoord.
Note texcoord is clamped to edge.
void osg::Image::setColor | ( | const osg::Vec4 & | color, |
unsigned int | s, | ||
unsigned int | t = 0, | ||
unsigned int | r = 0 ) |
|
protected |
References data().
void osg::Image::setDataType | ( | GLenum | dataType | ) |
void osg::Image::setFileName | ( | const std::string & | fileName | ) |
|
inlinevirtual |
Pass frame information to the custom Image classes, to be called only when objects associated with imagery are not culled.
|
virtual |
Set the image dimensions, format and data.
References data(), r(), s(), and t().
Referenced by osg::ImageSequence::setImage(), and osgFX::AnisotropicLighting::setLightingMap().
void osg::Image::setInternalTextureFormat | ( | GLint | internalFormat | ) |
|
inline |
Send offsets into data.
It is assumed that first mipmap offset (index 0) is 0.
References _mipmapData.
|
inline |
Set the origin of the image.
The default value is BOTTOM_LEFT and is consistent with OpenGL. TOP_LEFT is used for imagery that follows standard Imagery convention, such as movies, and hasn't been flipped yet. For such images one much flip the t axis of the tex coords. to handle this origin position.
References _origin.
|
inline |
References _packing.
|
inline |
Set the pixel aspect ratio, defined as the pixel width divided by the pixel height.
References _pixelAspectRatio.
|
inline |
Set the optional PixelBufferObject used to map the image memory efficiently to graphics memory.
References osg::BufferData::setBufferObject().
void osg::Image::setPixelFormat | ( | GLenum | pixelFormat | ) |
void osg::Image::setRowLength | ( | int | length | ) |
|
inline |
References _writeHint.
bool osg::Image::supportsTextureSubloading | ( | ) | const |
returns false for texture formats that do not support texture subloading
void osg::Image::swap | ( | osg::Image & | rhs | ) |
swap the data and settings between two image objects.
|
inline |
Height of image.
References _t.
Referenced by allocateImage(), computeNumberOfMipmapLevels(), getColor(), osg::modifyImage(), osg::readImage(), scaleImage(), scaleImage(), setColor(), setImage(), osg::ImageSequence::setImage(), and osg::ImageSequence::setReferenceTime().
|
inlinevirtual |
update method for osg::Image subclasses that update themselves during the update traversal.
Reimplemented in osg::ImageSequence.
|
inline |
|
protected |
Referenced by getAllocationMode(), and setAllocationMode().
|
protected |
Referenced by data(), data(), data(), data(), getMipmapData(), getMipmapData(), and valid().
|
protected |
Referenced by getDataType(), getPixelSizeInBits(), getRowSizeInBytes(), getRowStepInBytes(), and valid().
|
protected |
Referenced by handleDimensionsChangedCallbacks().
|
protected |
Referenced by getFileName().
|
protected |
Referenced by getInternalTextureFormat().
|
protected |
Referenced by getMipmapLevels(), getMipmapOffset(), getNumMipmapLevels(), isMipmap(), and setMipmapLevels().
|
protected |
Referenced by getOrigin(), and setOrigin().
|
protected |
Referenced by getPacking(), getRowSizeInBytes(), getRowStepInBytes(), and setPacking().
|
protected |
Referenced by getPixelAspectRatio(), and setPixelAspectRatio().
|
protected |
Referenced by getPixelFormat(), getPixelSizeInBits(), getRowSizeInBytes(), and getRowStepInBytes().
|
protected |
Referenced by getTotalSizeInBytes(), r(), and valid().
|
protected |
Referenced by getRowLength(), getRowStepInBytes(), and isDataContiguous().
|
protected |
Referenced by getRowSizeInBytes(), getRowStepInBytes(), isDataContiguous(), s(), and valid().
|
protected |
Referenced by getImageSizeInBytes(), getImageStepInBytes(), t(), and valid().
|
protected |
Referenced by getWriteHint(), and setWriteHint().
![]() | Generated at Sun Jul 20 2025 00:00:00 for the OpenSceneGraph by doxygen 1.14.0. |