Open CASCADE Technology 7.8.2.dev
Graphic3d_Texture2Dplane Class Reference

This class allows the management of a 2D texture defined from a plane equation Use the SetXXX() methods for positioning the texture as you want. More...

#include <Graphic3d_Texture2Dplane.hxx>

Inheritance diagram for Graphic3d_Texture2Dplane:

Public Member Functions

 Graphic3d_Texture2Dplane (const TCollection_AsciiString &theFileName)
 Creates a texture from a file.
 
 Graphic3d_Texture2Dplane (const Graphic3d_NameOfTexture2D theNOT)
 Creates a texture from a predefined texture name set.
 
 Graphic3d_Texture2Dplane (const Handle< Image_PixMap > &thePixMap)
 Creates a texture from the pixmap.
 
void SetPlaneS (const Standard_ShortReal A, const Standard_ShortReal B, const Standard_ShortReal C, const Standard_ShortReal D)
 Defines the texture projection plane for texture coordinate S default is <1.0, 0.0, 0.0, 0.0>
 
void SetPlaneT (const Standard_ShortReal A, const Standard_ShortReal B, const Standard_ShortReal C, const Standard_ShortReal D)
 Defines the texture projection plane for texture coordinate T default is <0.0, 1.0, 0.0, 0.0>
 
void SetPlane (const Graphic3d_NameOfTexturePlane thePlane)
 Defines the texture projection plane for both S and T texture coordinate default is NOTP_XY meaning: <1.0, 0.0, 0.0, 0.0> for S and <0.0, 1.0, 0.0, 0.0> for T.
 
void SetScaleS (const Standard_ShortReal theVal)
 Defines the texture scale for the S texture coordinate much easier than recomputing the S plane equation but the result is the same default to 1.0.
 
void SetScaleT (const Standard_ShortReal theVal)
 Defines the texture scale for the T texture coordinate much easier than recompution the T plane equation but the result is the same default to 1.0.
 
void SetTranslateS (const Standard_ShortReal theVal)
 Defines the texture translation for the S texture coordinate you can obtain the same effect by modifying the S plane equation but its not easier. default to 0.0.
 
void SetTranslateT (const Standard_ShortReal theVal)
 Defines the texture translation for the T texture coordinate you can obtain the same effect by modifying the T plane equation but its not easier. default to 0.0.
 
void SetRotation (const Standard_ShortReal theVal)
 Sets the rotation angle of the whole texture. the same result might be achieved by recomputing the S and T plane equation but it's not the easiest way... the angle is expressed in degrees default is 0.0.
 
Graphic3d_NameOfTexturePlane Plane () const
 Returns the current texture plane name or NOTP_UNKNOWN when the plane is user defined.
 
void PlaneS (Standard_ShortReal &A, Standard_ShortReal &B, Standard_ShortReal &C, Standard_ShortReal &D) const
 Returns the current texture plane S equation.
 
void PlaneT (Standard_ShortReal &A, Standard_ShortReal &B, Standard_ShortReal &C, Standard_ShortReal &D) const
 Returns the current texture plane T equation.
 
void TranslateS (Standard_ShortReal &theVal) const
 Returns the current texture S translation value.
 
void TranslateT (Standard_ShortReal &theVal) const
 Returns the current texture T translation value.
 
void ScaleS (Standard_ShortReal &theVal) const
 Returns the current texture S scale value.
 
void ScaleT (Standard_ShortReal &theVal) const
 Returns the current texture T scale value.
 
void Rotation (Standard_ShortReal &theVal) const
 Returns the current texture rotation angle.
 
- Public Member Functions inherited from Graphic3d_Texture2D
 Graphic3d_Texture2D (const TCollection_AsciiString &theFileName)
 Creates a texture from a file. MipMaps levels will be automatically generated if needed.
 
 Graphic3d_Texture2D (const Graphic3d_NameOfTexture2D theNOT)
 Creates a texture from a predefined texture name set. MipMaps levels will be automatically generated if needed.
 
 Graphic3d_Texture2D (const Handle< Image_PixMap > &thePixMap)
 Creates a texture from the pixmap. MipMaps levels will be automatically generated if needed.
 
Graphic3d_NameOfTexture2D Name () const
 Returns the name of the predefined textures or NOT_2D_UNKNOWN when the name is given as a filename.
 
void SetImage (const Handle< Image_PixMap > &thePixMap)
 Assign new image to the texture. Note that this method does not invalidate already uploaded resources - consider calling UpdateRevision() if needed.
 
- Public Member Functions inherited from Graphic3d_TextureMap
void EnableSmooth ()
 enable texture smoothing
 
Standard_Boolean IsSmoothed () const
 Returns TRUE if the texture is smoothed.
 
void DisableSmooth ()
 disable texture smoothing
 
void EnableModulate ()
 enable texture modulate mode. the image is modulate with the shading of the surface.
 
void DisableModulate ()
 disable texture modulate mode. the image is directly decal on the surface.
 
Standard_Boolean IsModulate () const
 Returns TRUE if the texture is modulate.
 
void EnableRepeat ()
 use this methods if you want to enable texture repetition on your objects.
 
void DisableRepeat ()
 use this methods if you want to disable texture repetition on your objects.
 
Standard_Boolean IsRepeat () const
 Returns TRUE if the texture repeat is enable.
 
Graphic3d_LevelOfTextureAnisotropy AnisoFilter () const
 
void SetAnisoFilter (const Graphic3d_LevelOfTextureAnisotropy theLevel)
 
- Public Member Functions inherited from Graphic3d_TextureRoot
 ~Graphic3d_TextureRoot ()
 Destructor.
 
virtual Standard_Boolean IsDone () const
 Checks if a texture class is valid or not.
 
const OSD_PathPath () const
 Returns the full path of the defined texture. It could be empty path if GetImage() is overridden to load image not from file.
 
Graphic3d_TypeOfTexture Type () const
 
const TCollection_AsciiStringGetId () const
 This ID will be used to manage resource in graphic driver.
 
Standard_Size Revision () const
 Return image revision.
 
void UpdateRevision ()
 Update image revision. Can be used for signaling changes in the texture source (e.g. file update, pixmap update) without re-creating texture source itself (since unique id should be never modified).
 
virtual Handle< Image_CompressedPixMapGetCompressedImage (const Handle< Image_SupportedFormats > &theSupported)
 This method will be called by graphic driver each time when texture resource should be created. It is called in front of GetImage() for uploading compressed image formats natively supported by GPU.
 
virtual Handle< Image_PixMapGetImage (const Handle< Image_SupportedFormats > &theSupported)
 This method will be called by graphic driver each time when texture resource should be created. Default constructors allow defining the texture source as path to texture image or directly as pixmap. If the source is defined as path, then the image will be dynamically loaded when this method is called (and no copy will be preserved in this class instance). Inheritors may dynamically generate the image. Notice, image data should be in Bottom-Up order (see Image_PixMap::IsTopDown())!
 
const Handle< Graphic3d_TextureParams > & GetParams () const
 
Standard_Boolean IsColorMap () const
 Return flag indicating color nature of values within the texture; TRUE by default.
 
void SetColorMap (Standard_Boolean theIsColor)
 Set flag indicating color nature of values within the texture.
 
Standard_Boolean HasMipmaps () const
 Returns whether mipmaps should be generated or not.
 
void SetMipmapsGeneration (Standard_Boolean theToGenerateMipmaps)
 Sets whether to generate mipmaps or not.
 
Standard_Boolean IsTopDown () const
 Returns whether row's memory layout is top-down.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Graphic3d_Texture2D
static Standard_Integer NumberOfTextures ()
 Returns the number of predefined textures.
 
static TCollection_AsciiString TextureName (const Standard_Integer theRank)
 Returns the name of the predefined texture of rank <aRank>
 
- Static Public Member Functions inherited from Graphic3d_TextureRoot
static TCollection_AsciiString TexturesFolder ()
 The path to textures determined from CSF_MDTVTexturesDirectory or CASROOT environment variables.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const char * get_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 
- Protected Member Functions inherited from Graphic3d_Texture2D
 Graphic3d_Texture2D (const TCollection_AsciiString &theFileName, const Graphic3d_TypeOfTexture theType)
 
 Graphic3d_Texture2D (const Graphic3d_NameOfTexture2D theName, const Graphic3d_TypeOfTexture theType)
 
 Graphic3d_Texture2D (const Handle< Image_PixMap > &thePixMap, const Graphic3d_TypeOfTexture theType)
 
- Protected Member Functions inherited from Graphic3d_TextureMap
 Graphic3d_TextureMap (const TCollection_AsciiString &theFileName, const Graphic3d_TypeOfTexture theType)
 
 Graphic3d_TextureMap (const Handle< Image_PixMap > &thePixMap, const Graphic3d_TypeOfTexture theType)
 
- Protected Member Functions inherited from Graphic3d_TextureRoot
 Graphic3d_TextureRoot (const TCollection_AsciiString &theFileName, const Graphic3d_TypeOfTexture theType)
 Creates a texture from a file Warning: Note that if <FileName> is NULL the texture must be realized using LoadTexture(image) method.
 
 Graphic3d_TextureRoot (const Handle< Image_PixMap > &thePixmap, const Graphic3d_TypeOfTexture theType)
 Creates a texture from pixmap. Please note that the implementation expects the image data to be in Bottom-Up order (see Image_PixMap::IsTopDown()).
 
void generateId ()
 Unconditionally generate new texture id. Should be called only within constructor.
 
virtual Handle< Image_PixMapGetImage () const
 Method for supporting old API; another GetImage() method should be implemented instead.
 
- Static Protected Member Functions inherited from Graphic3d_TextureRoot
static void convertToCompatible (const Handle< Image_SupportedFormats > &theSupported, const Handle< Image_PixMap > &theImage)
 Try converting image to compatible format.
 
- Protected Attributes inherited from Graphic3d_Texture2D
Graphic3d_NameOfTexture2D myName
 
- Protected Attributes inherited from Graphic3d_TextureRoot
Handle< Graphic3d_TextureParamsmyParams
 associated texture parameters
 
TCollection_AsciiString myTexId
 unique identifier of this resource (for sharing graphic resource); should never be modified outside constructor
 
Handle< Image_PixMapmyPixMap
 image pixmap - as one of the ways for defining the texture source
 
OSD_Path myPath
 image file path - as one of the ways for defining the texture source
 
Standard_Size myRevision
 image revision - for signaling changes in the texture source (e.g. file update, pixmap update)
 
Graphic3d_TypeOfTexture myType
 texture type
 
Standard_Boolean myIsColorMap
 flag indicating color nature of values within the texture
 
Standard_Boolean myIsTopDown
 Stores rows's memory layout.
 
Standard_Boolean myHasMipmaps
 Indicates whether mipmaps should be generated or not.
 

Detailed Description

This class allows the management of a 2D texture defined from a plane equation Use the SetXXX() methods for positioning the texture as you want.

Constructor & Destructor Documentation

◆ Graphic3d_Texture2Dplane() [1/3]

Graphic3d_Texture2Dplane::Graphic3d_Texture2Dplane ( const TCollection_AsciiString & theFileName)

Creates a texture from a file.

◆ Graphic3d_Texture2Dplane() [2/3]

Graphic3d_Texture2Dplane::Graphic3d_Texture2Dplane ( const Graphic3d_NameOfTexture2D theNOT)

Creates a texture from a predefined texture name set.

◆ Graphic3d_Texture2Dplane() [3/3]

Graphic3d_Texture2Dplane::Graphic3d_Texture2Dplane ( const Handle< Image_PixMap > & thePixMap)

Creates a texture from the pixmap.

Member Function Documentation

◆ Plane()

Graphic3d_NameOfTexturePlane Graphic3d_Texture2Dplane::Plane ( ) const

Returns the current texture plane name or NOTP_UNKNOWN when the plane is user defined.

◆ PlaneS()

void Graphic3d_Texture2Dplane::PlaneS ( Standard_ShortReal & A,
Standard_ShortReal & B,
Standard_ShortReal & C,
Standard_ShortReal & D ) const

Returns the current texture plane S equation.

◆ PlaneT()

void Graphic3d_Texture2Dplane::PlaneT ( Standard_ShortReal & A,
Standard_ShortReal & B,
Standard_ShortReal & C,
Standard_ShortReal & D ) const

Returns the current texture plane T equation.

◆ Rotation()

void Graphic3d_Texture2Dplane::Rotation ( Standard_ShortReal & theVal) const

Returns the current texture rotation angle.

◆ ScaleS()

void Graphic3d_Texture2Dplane::ScaleS ( Standard_ShortReal & theVal) const

Returns the current texture S scale value.

◆ ScaleT()

void Graphic3d_Texture2Dplane::ScaleT ( Standard_ShortReal & theVal) const

Returns the current texture T scale value.

◆ SetPlane()

void Graphic3d_Texture2Dplane::SetPlane ( const Graphic3d_NameOfTexturePlane thePlane)

Defines the texture projection plane for both S and T texture coordinate default is NOTP_XY meaning: <1.0, 0.0, 0.0, 0.0> for S and <0.0, 1.0, 0.0, 0.0> for T.

◆ SetPlaneS()

void Graphic3d_Texture2Dplane::SetPlaneS ( const Standard_ShortReal A,
const Standard_ShortReal B,
const Standard_ShortReal C,
const Standard_ShortReal D )

Defines the texture projection plane for texture coordinate S default is <1.0, 0.0, 0.0, 0.0>

◆ SetPlaneT()

void Graphic3d_Texture2Dplane::SetPlaneT ( const Standard_ShortReal A,
const Standard_ShortReal B,
const Standard_ShortReal C,
const Standard_ShortReal D )

Defines the texture projection plane for texture coordinate T default is <0.0, 1.0, 0.0, 0.0>

◆ SetRotation()

void Graphic3d_Texture2Dplane::SetRotation ( const Standard_ShortReal theVal)

Sets the rotation angle of the whole texture. the same result might be achieved by recomputing the S and T plane equation but it's not the easiest way... the angle is expressed in degrees default is 0.0.

◆ SetScaleS()

void Graphic3d_Texture2Dplane::SetScaleS ( const Standard_ShortReal theVal)

Defines the texture scale for the S texture coordinate much easier than recomputing the S plane equation but the result is the same default to 1.0.

◆ SetScaleT()

void Graphic3d_Texture2Dplane::SetScaleT ( const Standard_ShortReal theVal)

Defines the texture scale for the T texture coordinate much easier than recompution the T plane equation but the result is the same default to 1.0.

◆ SetTranslateS()

void Graphic3d_Texture2Dplane::SetTranslateS ( const Standard_ShortReal theVal)

Defines the texture translation for the S texture coordinate you can obtain the same effect by modifying the S plane equation but its not easier. default to 0.0.

◆ SetTranslateT()

void Graphic3d_Texture2Dplane::SetTranslateT ( const Standard_ShortReal theVal)

Defines the texture translation for the T texture coordinate you can obtain the same effect by modifying the T plane equation but its not easier. default to 0.0.

◆ TranslateS()

void Graphic3d_Texture2Dplane::TranslateS ( Standard_ShortReal & theVal) const

Returns the current texture S translation value.

◆ TranslateT()

void Graphic3d_Texture2Dplane::TranslateT ( Standard_ShortReal & theVal) const

Returns the current texture T translation value.


The documentation for this class was generated from the following file: