My favorites | English | Sign in

o3d.DrawElement Class Reference

Inherits o3d.ParamObject

List of all members.


Detailed Description

A DrawElement causes an Element to be Drawn with a particular material. You can override other Effect parameters by adding corresponding params to the DrawElement.

See Also

Public Member Functions

copyParams(sourceParamObject) o3d.ParamObject
o3d.Param  createParam(paramName, paramTypeName) o3d.ParamObject
o3d.Param  getParam(paramName) o3d.ParamObject
boolean  isAClassName(className) o3d.ObjectBase
boolean  removeParam(param) o3d.ParamObject

Public Properties

string className o3d.ObjectBase
number clientId o3d.ObjectBase
o3d.Material material o3d.DrawElement
string name o3d.NamedObject
o3d.Element owner o3d.DrawElement
!Array.<!o3d.Param> params o3d.ParamObject

Parameters

o3d.ParamMaterial material o3d.DrawElement

Member Function Documentation

DrawElement.copyParams ( !o3d.ParamObject sourceParamObject ) [inherited from o3d.ParamObject]

Copies all the params from a the given source_param_object to this param object. Does not replace any currently existing params with the same name.

Parameters:
sourceParamObject param object to copy params from.
o3d.Param DrawElement.createParam ( string paramName
string paramTypeName ) [inherited from o3d.ParamObject]

Creates a Param with the given name and type on the ParamObject. Will fail if a param with the same name already exists.

Parameters:
paramName The name of the Param to be created.
paramTypeName The type of Param to create. Valid types are
  • 'o3d.ParamBoolean'
  • 'o3d.ParamBoundingBox'
  • 'o3d.ParamDrawContext'
  • 'o3d.ParamDrawList'
  • 'o3d.ParamEffect'
  • 'o3d.ParamFloat'
  • 'o3d.ParamFloat2'
  • 'o3d.ParamFloat3'
  • 'o3d.ParamFloat4'
  • 'o3d.ParamFunction'
  • 'o3d.ParamInteger'
  • 'o3d.ParamMaterial'
  • 'o3d.ParamMatrix4'
  • 'o3d.ParamParamArray'
  • 'o3d.ParamRenderSurface'
  • 'o3d.ParamRenderDepthStencilSurface'
  • 'o3d.ParamSampler'
  • 'o3d.ParamSkin'
  • 'o3d.ParamSteamBank'
  • 'o3d.ParamState'
  • 'o3d.ParamString'
  • 'o3d.ParamTexture'
  • 'o3d.ParamTransform'
  • 'o3d.ProjectionParamMatrix4'
  • 'o3d.ProjectionInverseParamMatrix4'
  • 'o3d.ProjectionTransposeParamMatrix4'
  • 'o3d.ProjectionInverseTransposeParamMatrix4'
  • 'o3d.ViewParamMatrix4'
  • 'o3d.ViewInverseParamMatrix4'
  • 'o3d.ViewTransposeParamMatrix4'
  • 'o3d.ViewInverseTransposeParamMatrix4'
  • 'o3d.ViewProjectionParamMatrix4'
  • 'o3d.ViewProjectionInverseParamMatrix4'
  • 'o3d.ViewProjectionTransposeParamMatrix4'
  • 'o3d.ViewProjectionInverseTransposeParamMatrix4'
  • 'o3d.WorldParamMatrix4'
  • 'o3d.WorldInverseParamMatrix4'
  • 'o3d.WorldTransposeParamMatrix4'
  • 'o3d.WorldInverseTransposeParamMatrix4'
  • 'o3d.WorldViewParamMatrix4'
  • 'o3d.WorldViewInverseParamMatrix4'
  • 'o3d.WorldViewTransposeParamMatrix4'
  • 'o3d.WorldViewInverseTransposeParamMatrix4'
  • 'o3d.WorldViewProjectionParamMatrix4'
  • 'o3d.WorldViewProjectionInverseParamMatrix4'
  • 'o3d.WorldViewProjectionTransposeParamMatrix4'
  • 'o3d.WorldViewProjectionInverseTransposeParamMatrix4'
  • Returns:
    o3d.Param.The newly created Param or null on failure.
    o3d.Param DrawElement.getParam ( string paramName ) [inherited from o3d.ParamObject]

    Searches by name for a Param defined in the object.

    Parameters:
    paramName Name to search for.
    Returns:
    o3d.Param.The Param with the given name, or null otherwise.
    boolean DrawElement.isAClassName ( string className ) [inherited from o3d.ObjectBase]

    Takes the name of a class as an argument, and returns true if this object is either an instance of that class or derives from that class.

    var t = pack.createObject('o3d.Transform');
    t.isAClassName('o3d.Transform');    // true
    t.isAClassName('o3d.ParamObject');  // true
    t.isAClassName('o3d.Shape');        // false
    
    Parameters:
    className Name of class to check for.
    Returns:
    boolean.true if this object is a or is derived from the given class name.
    boolean DrawElement.removeParam ( !o3d.Param param ) [inherited from o3d.ParamObject]

    Removes a Param from a ParamObject. This function will fail if the param does not exist on this ParamObject or if the param is unremovable.

    Parameters:
    param param to remove.
    Returns:
    boolean.True if the param was removed.

    Member Property Documentation

    string DrawElement.className [inherited from o3d.ObjectBase]

    The concrete class name for an object derived from ObjectBase. If you want to know if an object is of a certain type you should use objectBase.isAClassName

    var t = pack.createObject('o3d.Transform');
    t.className == 'o3d.Transform';  // true
    
    This property is read-only.
    number DrawElement.clientId [inherited from o3d.ObjectBase]

    Unique id of the object. This id will be unique, even across multiple O3D clients in the same page. This property is read-only.

    o3d.Material DrawElement.material

    The Material for this DrawElement. If it is null the material of owner will be used.

    string DrawElement.name [inherited from o3d.NamedObject]

    The object's name. Setting this has no meaning to O3D, but is useful for debugging and for the functions Client.getObjects, Pack.getObject, RenderNode.getRenderNodesByNameInTree and RenderNode.getTransformsByNameInTree which search for objects by name.

    o3d.Element DrawElement.owner

    The current owner of this Draw Element. Set to null to stop being owned. Note: DrawElements are referenced by the Pack they are created in and their owner. If the DrawElement is removed from its Pack then setting the owner to null will free the DrawElement. Or, visa versa, if you set the DrawElement's owner to null then removing it from its Pack will free the DrawElement.

    !Array.<!o3d.Param> DrawElement.params [inherited from o3d.ParamObject]

    Gets all the param on this param object. Each access to this field gets the entire list, so it is best to get it just once. For example:

    var params = paramObject.params;
    for (var i = 0; i < params.length; i++) {
      var param = params[i];
    }
    
    Note that modifications to this array [e.g. push()] will not affect the underlying ParamObject, while modifications to the array's members will affect them. This property is read-only.

    Parameter Documentation

    The material used to render this the Element that owns this DrawElement.