Material

Inheritance: java.lang.Object, com.aspose.threed.A3DObject

All Implemented Interfaces: java.lang.Iterable

public abstract class Material extends A3DObject implements Iterable<TextureSlot>

Material defines the parameters necessary for visual appearance of geometry. Aspose.3D provides shading model for LambertMaterial, PhongMaterial and ShaderMaterial Example:

var mat = new LambertMaterial();
     var tex = new Texture();
     tex.setFileName("diffuse.png");
     mat.setTexture(Material.MAP_DIFFUSE, tex);
     for(var slot : mat)
     {
         System.out.printf("Texture slot %s = %s", slot.getSlotName(), slot.getTexture());
     }

Fields

FieldDescription
MAP_AMBIENTUsed in setTexture to assign a ambient texture mapping.
MAP_DIFFUSEUsed in setTexture to assign a diffuse texture mapping.
MAP_EMISSIVEUsed in setTexture to assign a emissive texture mapping.
MAP_NORMALUsed in setTexture to assign a normal texture mapping.
MAP_SPECULARUsed in setTexture to assign a specular texture mapping.

Methods

MethodDescription
equals(Object arg0)
findProperty(String propertyName)Finds the property.
getClass()
getName()Gets the name.
getProperties()Gets the collection of all properties.
getProperty(String property)Get the value of specified property
getTexture(String slotName)Gets the texture from the specified slot, it can be material’s property name or shader’s parameter name
hashCode()
iterator()Gets the enumerator to enumerate internal texture slots.
notify()
notifyAll()
removeProperty(Property property)Removes a dynamic property.
removeProperty(String property)Remove the specified property identified by name
setName(String value)Sets the name.
setProperty(String property, Object value)Sets the value of specified property
setTexture(String slotName, TextureBase texture)Sets the texture to specified slot
toString()Formats object to string
wait()
wait(long arg0)
wait(long arg0, int arg1)

MAP_AMBIENT

public static final String MAP_AMBIENT

Used in setTexture to assign a ambient texture mapping.

MAP_DIFFUSE

public static final String MAP_DIFFUSE

Used in setTexture to assign a diffuse texture mapping.

MAP_EMISSIVE

public static final String MAP_EMISSIVE

Used in setTexture to assign a emissive texture mapping.

MAP_NORMAL

public static final String MAP_NORMAL

Used in setTexture to assign a normal texture mapping.

MAP_SPECULAR

public static final String MAP_SPECULAR

Used in setTexture to assign a specular texture mapping.

equals(Object arg0)

public boolean equals(Object arg0)

Parameters:

ParameterTypeDescription
arg0java.lang.Object

Returns: boolean

findProperty(String propertyName)

public Property findProperty(String propertyName)

Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)

Parameters:

ParameterTypeDescription
propertyNamejava.lang.StringProperty name.

Returns: Property - The property.

getClass()

public final native Class<?> getClass()

Returns: java.lang.Class

getName()

public String getName()

Gets the name.

Returns: java.lang.String

getProperties()

public PropertyCollection getProperties()

Gets the collection of all properties.

Returns: PropertyCollection

getProperty(String property)

public Object getProperty(String property)

Get the value of specified property

Parameters:

ParameterTypeDescription
propertyjava.lang.StringProperty name

Returns: java.lang.Object - The value of the found property

getTexture(String slotName)

public TextureBase getTexture(String slotName)

Gets the texture from the specified slot, it can be material’s property name or shader’s parameter name

Parameters:

ParameterTypeDescription
slotNamejava.lang.StringSlot name.

Returns: TextureBase - The texture. Example:

var mat = new LambertMaterial();
     var tex = new Texture();
     tex.setFileName("diffuse.png");
     mat.setTexture(Material.MAP_DIFFUSE, tex);
     tex = (Texture)mat.getTexture(Material.MAP_DIFFUSE);

hashCode()

public native int hashCode()

Returns: int

iterator()

public Iterator<TextureSlot> iterator()

Gets the enumerator to enumerate internal texture slots.

Returns: java.util.Iterator<com.aspose.threed.TextureSlot>

notify()

public final native void notify()

notifyAll()

public final native void notifyAll()

removeProperty(Property property)

public boolean removeProperty(Property property)

Removes a dynamic property.

Parameters:

ParameterTypeDescription
propertyPropertyWhich property to remove

Returns: boolean - true if the property is successfully removed

removeProperty(String property)

public boolean removeProperty(String property)

Remove the specified property identified by name

Parameters:

ParameterTypeDescription
propertyjava.lang.String

Returns: boolean

setName(String value)

public void setName(String value)

Sets the name.

Parameters:

ParameterTypeDescription
valuejava.lang.StringNew value

setProperty(String property, Object value)

public void setProperty(String property, Object value)

Sets the value of specified property

Parameters:

ParameterTypeDescription
propertyjava.lang.StringProperty name
valuejava.lang.ObjectThe value of the property

setTexture(String slotName, TextureBase texture)

public void setTexture(String slotName, TextureBase texture)

Sets the texture to specified slot

Parameters:

ParameterTypeDescription
slotNamejava.lang.StringSlot name.
textureTextureBaseTexture. Example:
var mat = new LambertMaterial();
     var tex = new Texture();
     tex.setFileName("diffuse.png");
     mat.setTexture(Material.MAP_NORMAL, tex);
``` |

### toString() {#toString--}

public String toString()



Formats object to string

**Returns:**
java.lang.String - Object string
### wait() {#wait--}

public final void wait()





### wait(long arg0) {#wait-long-}

public final void wait(long arg0)





**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| arg0 | long |  |

### wait(long arg0, int arg1) {#wait-long-int-}

public final void wait(long arg0, int arg1)





**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| arg0 | long |  |
| arg1 | int |  |