Click or drag to resize
SoTexture3EnabledElement Class

Enables/disables 3D textures.

Inheritance Hierarchy
SystemObject
  OIV.InventorSoNetBase
    OIV.Inventor.ElementsSoElement
      OIV.Inventor.ElementsSoReplacedTextureElement
        OIV.Inventor.ElementsSoTexture3EnabledElement

Namespace: OIV.Inventor.Elements
Assembly: OIV.Inventor (in OIV.Inventor.dll) Version: 2024.1.0.0 (2024.1.0)
Syntax
public class SoTexture3EnabledElement : SoReplacedTextureElement

The SoTexture3EnabledElement type exposes the following members.

Methods
  NameDescription
Public methodStatic memberDisableForShapeCache

Specify that a texture unit is not used by any shape, so we don't have to invalidate cache when this texture is enable/disable/modified.

Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodStatic memberGet(SoState)
Calls Get(state, System.Int32(0)).
Public methodStatic memberGet(SoState, Int32)

Used by shapes to figure out if they need to send texture coordinates.

Public methodStatic memberGetClassStackIndex Obsolete.

Returns the stack id for this element.

Public methodStatic memberGetDefault

By default there is not texture.

Public methodGetHashCode
Overrides GetHashCode().
(Inherited from SoNetBase.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodStatic memberIsDisabledForShapeCache

Return if that texture unit is not used by any shape, so we don't have to invalidate cache when this texture is enable/disable/modified.

Public methodPop

Overrides OIV.Inventor.Elements.SoTexture3EnabledElement.Pop(OIV.Inventor.Misc.SoState, OIV.Inventor.Elements.SoElement) method so side effects can occur in GL.

(Overrides SoElementPop(SoState, SoElement).)
Public methodPush

Overrides OIV.Inventor.Elements.SoTexture3EnabledElement.Push(OIV.Inventor.Misc.SoState) so we can remember previous elements value and avoid making GL calls if this element has the same value.

(Overrides SoReplacedTextureElementPush(SoState).)
Public methodStatic memberSet(SoState, Boolean)
Calls Set(state, value, (OIV.Inventor.Nodes.SoNode )nullptr).
Public methodStatic memberSet(SoState, Boolean, SoNode)

Used by Texture3ImageElement, set to true when a non-null image is set, set to false when there is no 3D texture image (the default).

Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Remarks

This element enables/disables 3D textures. This is implemented as a separate element from the TextureImage3Element so the texture image can be changed without invalidating caches containing shapes shapes need to know if texturing is going on or not so they can decide to send down texture coordinates or not.

This element is set by the GLTextureImage3Element and the GLTextureEnabledElement. The interaction between the three elements is a little complicated. Each of the other two elements always sets up the GL texture state appropriately, however, texturing is only enabled if both elements agree that it should be enabled (they check each other's value before calling set).

This element cannot be overridden, but, since the elements that set it check each other's value, overriding those elements has the same effect.

See Also