public class Gradient
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static int |
TRANSITION_ARC_03
Transition circulaire entre 0H et 3H : f(x) = sqrt(1 - x^2)
|
static int |
TRANSITION_ARC_36
Transition circulaire entre 3H et 6H : f(x) = 1 - sqrt(1 - x^2)
|
static int |
TRANSITION_ARC_69
Transition circulaire entre 6H et 9H : f(x) = 1 - sqrt(1 - (x-1)^2)
|
static int |
TRANSITION_ARC_90
Transition circulaire entre 9H et 12H : f(x) = sqrt(1 - (x-1)^2)
|
static int |
TRANSITION_GAUSSIAN_0001
Transition suivant une loi gaussienne [f(1) = 0.9999] : f(x) = 1 - e^(-9.21 * x^2)
|
static int |
TRANSITION_GAUSSIAN_001
Transition suivant une loi gaussienne [f(1) = 0.999] : f(x) = 1 - e^(-6.9 * x^2)
|
static int |
TRANSITION_GAUSSIAN_01
Transition suivant une loi gaussienne [f(1) = 0.99] : f(x) = 1 - e^(-4.6 * x^2)
|
static int |
TRANSITION_LINEAR
Transition linéaire suivant la fonction f(x) = x
|
static Vector3D |
X_ROTATION
Axe de rotations
|
static Vector3D |
Y_ROTATION
Y rotation
|
static Vector3D |
Z_ROTATION
Z rotation
|
| Constructor and Description |
|---|
Gradient()
Constructeur de l'objet Gradient
|
Gradient(int[] c,
double[] a,
double[] r)
Constructeur de l'objet Gradient
|
Gradient(int[] c,
double[] a,
double[] r,
int t)
Constructeur de l'objet Gradient
|
| Modifier and Type | Method and Description |
|---|---|
void |
appendRotation(double angle,
Vector3D axe)
Ajoute ensuite une transformation de type rotation à la matrice
selon un axe quelconque
|
void |
appendScale(double sx,
double sy,
double sz)
Ajout ensuite une transformation de type homothétie à la matrice
|
void |
appendTranslation(double tx,
double ty,
double tz)
Ajoute ensuite une transformation de type translation à la matrice
|
protected double |
evaluate(double x)
Corrige la valeur du pourcentage en fonction de la loi à suivre
|
double |
getLastAlpha() |
int |
getLinearPixelAt(double pcentX,
double pcentY,
double pcentZ) |
int |
getRadialPixelAt(double pcentX,
double pcentY,
double pcentZ)
Get the pixel value at ???
|
void |
reset()
Reprend tout à zéro
|
void |
setAlphas(double[] a)
Définir la transparence des pixels limites
|
void |
setCenter(Point3D p)
Définir le centre du gradient.
|
void |
setCenter(Vector3D c)
Définir le centre du gradient.
|
void |
setRatios(double[] r)
Définir le ratio des pixels limites
|
void |
setTransformation(GeomTransform3D gt)
Définir la matrice de transformation
|
void |
setTransition(int t)
Définir le type de transition
|
void |
setValues(int[] c)
Définir la valeur des pixels limites.
|
public static final int TRANSITION_LINEAR
public static final int TRANSITION_ARC_69
public static final int TRANSITION_ARC_90
public static final int TRANSITION_ARC_03
public static final int TRANSITION_ARC_36
public static final int TRANSITION_GAUSSIAN_01
public static final int TRANSITION_GAUSSIAN_001
public static final int TRANSITION_GAUSSIAN_0001
public static final Vector3D X_ROTATION
public static final Vector3D Y_ROTATION
public static final Vector3D Z_ROTATION
public Gradient()
public Gradient(int[] c,
double[] a,
double[] r)
c - Valeur des pixels limitesa - Opacité des pixels limites [0-1]r - Ratios des pixels limites [0-1]public Gradient(int[] c,
double[] a,
double[] r,
int t)
c - Valeur des pixels limitesa - Opacité des pixels limites [0-1]r - Ratios des pixels limites [0-1]t - Type de transitionpublic int getLinearPixelAt(double pcentX,
double pcentY,
double pcentZ)
pcentX - pourcentage du gradient sur XpcentY - pourcentage du gradient sur YpcentZ - pourcentage du gradient sur Zpublic int getRadialPixelAt(double pcentX,
double pcentY,
double pcentZ)
pcentX - pcentY - pcentZ - public double getLastAlpha()
public void reset()
public void setValues(int[] c)
c - Tableau donnant la valeur des pixels intermédiairespublic void setAlphas(double[] a)
a - Tableau donnant la valeur de l'opacité des pixels intermédiairespublic void setRatios(double[] r)
r - Valeur comprise entre 0 et 1 indiquant la position sur le dégradé en pourcentpublic void setTransformation(GeomTransform3D gt)
gt - public void setCenter(Vector3D c)
c - Les coordonées du centre (0 = 0% et 1 = 100%)public void setCenter(Point3D p)
p - Les coordonées du centre (0 = 0% et 1 = 100%)public void appendTranslation(double tx,
double ty,
double tz)
tx - Translation selon Xty - Translation selon Ytz - Translation selon Zpublic void appendScale(double sx,
double sy,
double sz)
sx - Valeur de multiplication de l'échelle sur Xsy - Valeur de multiplication de l'échelle sur Ysz - Valeur de multiplication de l'échelle sur Zpublic void appendRotation(double angle,
Vector3D axe)
angle - Angle de rotation (radian)axe - Axe de rotation (quelconque)public void setTransition(int t)
t - Type de transitionprotected double evaluate(double x)
x - Valeur à corriger (entre 0 et 1)