public class SDefaultMaterial extends SAbstractReadableWriteable implements SMaterial
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEFAULT_MATERIAL_NAME
La constante 'DEFAULT_MATERIAL_NAME' correspond au nom par défaut d'un matériel égal à "none".
|
Constructor and Description |
---|
SDefaultMaterial()
Constructeur d'un matérial par défaut avec un nom par défaut.
|
SDefaultMaterial(SBufferedReader sbr)
Constructeur d'un matériel à partir d'information lue dans un fichier de format txt.
|
SDefaultMaterial(java.lang.String material_name)
Constructeur d'un matériel avec un nom de référence.
|
Modifier and Type | Method and Description |
---|---|
SColor |
ambientColor()
Méthode pour obtenir la couleur réfléchie de façon ambiante par la surface du matériel.
|
SColor |
ambientColor(SVectorUV uv)
Méthode pour obtenir la couleur réfléchie de façon ambiante par la surface du matériel
à partir d'une coordonnée uv d'une texture.
|
boolean |
asTexture()
Méthode permettant de préciser si le matétiel contient des textures dans sa définition.
|
SColor |
diffuseColor()
Méthode pour obtenir la couleur réfléchie de façon diffuse par la surface du matériel.
|
SColor |
diffuseColor(SVectorUV uv)
Méthode pour obtenir la couleur réfléchie de façon diffuse par la surface du matériel
à partir d'une coordonnée uv d'une texture.
|
boolean |
equals(java.lang.Object other) |
java.lang.String |
getName()
Méthode pour obtenir le nom du matériel.
|
java.lang.String |
getReadableName()
Méthode pour obtenir le nom de l'objet implémentant l'interface SReadable.
|
java.lang.String[] |
getReadableParameterName()
Méthode pour obtenir un tableau des mots clés permettant de définir les paramètres de l'objet implémentant l'interface SReadable lors de sa lecture.
|
double |
getShininess()
Méthode pour obtenir le niveau de brillance de la surface du matériel.
|
boolean |
isReflective()
Méthode qui détermine si le matériel réfléchi la lumière comme un miroir.
|
boolean |
isTransparent()
Méthode qui détermine si le matériel est transparent.
|
double |
opacity()
Méthode pour obtenir le niveau d'opacité de la surface du matériel.
|
double |
reflectivity()
Méthode pour obtenir le niveau de réflexion d'une source de lumière par la surface du matériel.
|
double |
refractiveIndex()
Méthode pour obtenir l'indice de réfraction du matériel.
|
SColor |
specularColor()
Méthode pour obtenir la couleur réfléchie de façon spéculaire par la surface du matériel.
|
SColor |
specularColor(SVectorUV uv)
Méthode pour obtenir la couleur réfléchie de façon spéculaire par la surface du matériel
à partir d'une coordonnée uv d'une texture.
|
double |
transparency()
Méthode pour obtenir le niveau de transparence de la surface du matériel.
|
SColor |
transparencyColor()
Méthode pour obtenir la couleur transmise (filtrée) par la surface du matériel.
|
void |
write(java.io.BufferedWriter bw)
Méthode pour écrire un objet SWriteable dans un fichier txt en utilisant un BufferedWriter.
|
write
read
public static final java.lang.String DEFAULT_MATERIAL_NAME
public SDefaultMaterial()
public SDefaultMaterial(java.lang.String material_name) throws SConstructorException
material_name
- - Le nom du matériel.SConstructorException
- Si une erreur est survenue lors de la construction.public SDefaultMaterial(SBufferedReader sbr) throws java.io.IOException, SConstructorException
sbr
- - Le BufferedReader cherchant l'information dans le fichier txt.java.io.IOException
- Si une erreur de l'objet SBufferedWriter est lancée.SConstructorException
- Si une erreur est survenue lors de la construction.SBufferedReader
public java.lang.String getName()
SMaterial
public SColor ambientColor()
SMaterial
ambientColor
in interface SMaterial
public SColor ambientColor(SVectorUV uv)
SMaterial
ambientColor
in interface SMaterial
uv
- - La coordonnée uv de la texture.public SColor diffuseColor()
SMaterial
diffuseColor
in interface SMaterial
public SColor diffuseColor(SVectorUV uv)
SMaterial
diffuseColor
in interface SMaterial
uv
- - La coordonnée uv de la texture.public SColor specularColor()
SMaterial
specularColor
in interface SMaterial
public SColor specularColor(SVectorUV uv)
SMaterial
specularColor
in interface SMaterial
uv
- - La coordonnée uv de la texture.public SColor transparencyColor()
SMaterial
Méthode pour obtenir la couleur transmise (filtrée) par la surface du matériel. Elle permet de faire des calculs de filtrage de la lumière.
Par exemple, une couleur de transparence (1,1,1) fait tout traverser, une couleur de transparence (0.8, 0.8, 0.8) fait tout traverser avec atténuation et une couleur de transparence (1,0,0) fait uniquement traverser la couleur rouge.
Cette couleur est calculée à partir du produit de la couleur de la surface S avec la constant de transmission kt tel quetransparencyColor
in interface SMaterial
public boolean isReflective()
SMaterial
isReflective
in interface SMaterial
public double reflectivity()
SMaterial
reflectivity
in interface SMaterial
public double getShininess()
SMaterial
getShininess
in interface SMaterial
public boolean isTransparent()
SMaterial
isTransparent
in interface SMaterial
public double transparency()
SMaterial
transparency
in interface SMaterial
public double refractiveIndex()
SMaterial
refractiveIndex
in interface SMaterial
public double opacity()
SMaterial
public boolean asTexture()
SMaterial
public void write(java.io.BufferedWriter bw) throws java.io.IOException
SWriteable
write
in interface SWriteable
bw
- - Le buffer pour l'écriture.java.io.IOException
- Si une erreur de type I/O a été lancée par l'objet BufferedWriter.BufferedWriter
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
public java.lang.String getReadableName()
SReadable
getReadableName
in interface SReadable
public java.lang.String[] getReadableParameterName()
SReadable
getReadableParameterName
in interface SReadable
getReadableParameterName
in class SAbstractReadable