本文整理汇总了Java中javax.media.j3d.PolygonAttributes.setBackFaceNormalFlip方法的典型用法代码示例。如果您正苦于以下问题:Java PolygonAttributes.setBackFaceNormalFlip方法的具体用法?Java PolygonAttributes.setBackFaceNormalFlip怎么用?Java PolygonAttributes.setBackFaceNormalFlip使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.media.j3d.PolygonAttributes
的用法示例。
在下文中一共展示了PolygonAttributes.setBackFaceNormalFlip方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setBackFaceNormalFlip
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Sets whether all <code>Shape3D</code> children nodes of <code>node</code> should have
* their normal flipped or not.
* Caution !!! Should be executed only once per instance
* @param backFaceNormalFlip <code>true</code> if normals should be flipped.
*/
private void setBackFaceNormalFlip(Node node, boolean backFaceNormalFlip)
{
if (node instanceof Group)
{
// Set back face normal flip of all children
Enumeration<?> enumeration = ((Group) node).getAllChildren();
while (enumeration.hasMoreElements())
{
setBackFaceNormalFlip((Node) enumeration.nextElement(), backFaceNormalFlip);
}
}
else if (node instanceof Link)
{
setBackFaceNormalFlip(((Link) node).getSharedGroup(), backFaceNormalFlip);
}
else if (node instanceof Shape3D)
{
Appearance appearance = ((Shape3D) node).getAppearance();
if (appearance == null)
{
appearance = createAppearanceWithChangeCapabilities();
((Shape3D) node).setAppearance(appearance);
}
PolygonAttributes polygonAttributes = appearance.getPolygonAttributes();
if (polygonAttributes == null)
{
polygonAttributes = createPolygonAttributesWithChangeCapabilities();
appearance.setPolygonAttributes(polygonAttributes);
}
// Change back face normal flip
polygonAttributes.setBackFaceNormalFlip(
backFaceNormalFlip ^ polygonAttributes.getCullFace() == PolygonAttributes.CULL_FRONT);
}
}
示例2: generateMaterial
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Missing setSmoothness et ambientIntensity
*
* @param X3Dmaterial
* @return
*/
private void generateMaterial(CG_X3DMaterial X3Dmaterial) {
// Autorisations pour l'apparence
this.apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
this.apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
this.apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
this.apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
this.apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_ATTRIBUTES_READ);
this.apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_ATTRIBUTES_WRITE);
this.apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_WRITE);
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
// Indique que l'on est en mode surfacique
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
this.apparenceFinale.setPolygonAttributes(pa);
Material material = new Material();
material.setShininess(X3Dmaterial.getShininess().floatValue());
material.setSpecularColor(X3Dmaterial.getSpecularColor());
material.setDiffuseColor(X3Dmaterial.getDiffuseColor());
material.setEmissiveColor(X3Dmaterial.getEmissiveColor());
this.apparenceFinale.setMaterial(material);
if (X3Dmaterial.getTransparency() != 0) {
TransparencyAttributes t_attr = new TransparencyAttributes(TransparencyAttributes.BLENDED,
X3Dmaterial.getTransparency().floatValue(), TransparencyAttributes.BLEND_SRC_ALPHA,
TransparencyAttributes.BLENDED);
this.apparenceFinale.setTransparencyAttributes(t_attr);
}
CG_StyleGenerator.lMaterial.add(X3Dmaterial);
CG_StyleGenerator.lAppearance.add(this.apparenceFinale);
}
示例3: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Génère l'apparence à appliquer à la géométrie
*
* @param isClrd
* @param color
* @param coefOpacity
* @param isSolid
* @return
*/
private Appearance generateAppearance(boolean isClrd, Color color,
double coefOpacity, boolean isSolid) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
if (isSolid) {
// Indique que l'on est en mode surfacique
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
// Indique que l'on n'affiche pas les faces cachées
if (ConstantRepresentation.cullMode) {
pa.setCullFace(PolygonAttributes.CULL_BACK);
}
} else {
// Indique que l'on est en mode filaire
pa.setPolygonMode(PolygonAttributes.POLYGON_LINE);
}
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
if (isClrd) {
Color3f couleur3F = new Color3f(color);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
material.setAmbientColor(couleur3F);
material.setDiffuseColor(couleur3F);
material.setEmissiveColor(couleur3F);
material.setLightingEnable(true);
material.setSpecularColor(couleur3F);
material.setShininess(1);
apparenceFinale.setMaterial(material);
}
if (coefOpacity != 1) {
TransparencyAttributes t_attr =
new TransparencyAttributes(TransparencyAttributes.FASTEST,
(float) (1 - coefOpacity));
apparenceFinale.setTransparencyAttributes(t_attr);
}
return apparenceFinale;
}
示例4: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Génère l'apparence à appliquer à la géométrie
*
* @param isClrd
* @param color
* @param coefOpacity
* @param isSolid
* @return
*/
private Appearance generateAppearance(boolean isClrd, Color color,
double coefOpacity, boolean isSolid) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
if (isSolid) {
// Indique que l'on est en mode surfacique
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
// Indique que l'on n'affiche pas les faces cachées
} else {
// Indique que l'on est en mode filaire
pa.setPolygonMode(PolygonAttributes.POLYGON_LINE);
}
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
if (isClrd) {
Color3f couleur3F = new Color3f(color);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
material.setAmbientColor(couleur3F);
material.setDiffuseColor(couleur3F);
material.setSpecularColor(couleur3F);
material.setEmissiveColor(couleur3F);
material.setShininess(1);
apparenceFinale.setMaterial(material);
}
if (coefOpacity != 1) {
TransparencyAttributes t_attr = new TransparencyAttributes(
TransparencyAttributes.BLENDED, (float) coefOpacity,
TransparencyAttributes.BLEND_SRC_ALPHA,
TransparencyAttributes.BLENDED);
apparenceFinale.setTransparencyAttributes(t_attr);
}
return apparenceFinale;
}
示例5: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Génère l'apparence à appliquer à la géométrie
*
* @param isClrd
* @param color
* @param coefTransp
* @param isSolid
* @return
*/
private Appearance generateAppearance(boolean isClrd, Color color,
double coefTransp, boolean isSolid) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
if (isSolid) {
// Indique que l'on est en mode surfacique
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
// Indique que l'on n'affiche pas les faces cachées
if (ConstantRepresentation.cullMode) {
pa.setCullFace(PolygonAttributes.CULL_BACK);
}
} else {
// Indique que l'on est en mode filaire
pa.setPolygonMode(PolygonAttributes.POLYGON_LINE);
}
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
if (isClrd) {
Color3f couleur3F = new Color3f(color);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
material.setDiffuseColor(couleur3F);
material.setSpecularColor(new Color3f(color.brighter()));
material.setAmbientColor(new Color3f(color.darker()));
material.setEmissiveColor(new Color3f(color.darker()));
material.setShininess(128);
apparenceFinale.setMaterial(material);
}
if (coefTransp != 1) {
TransparencyAttributes t_attr = new TransparencyAttributes(
TransparencyAttributes.BLENDED, (float) coefTransp,
TransparencyAttributes.BLEND_SRC_ALPHA,
TransparencyAttributes.BLENDED);
apparenceFinale.setTransparencyAttributes(t_attr);
}
return apparenceFinale;
}
示例6: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Génère l'apparence à appliquer à la géométrie
*
* @param isClrd
* @param color
* @param coefTransp
* @param isSolid
* @return
*/
private Appearance generateAppearance(boolean isClrd, Color color,
double coefTransp, boolean isSolid) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
if (isSolid) {
// Indique que l'on est en mode surfacique
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
// Indique que l'on n'affiche pas les faces cachées
if (ConstantRepresentation.cullMode) {
pa.setCullFace(PolygonAttributes.CULL_BACK);
}
} else {
// Indique que l'on est en mode filaire
pa.setPolygonMode(PolygonAttributes.POLYGON_LINE);
}
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
if (isClrd) {
Color3f couleur3F = new Color3f(color);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
material.setDiffuseColor(couleur3F);
material.setSpecularColor(new Color3f(color.brighter()));
material.setAmbientColor(new Color3f(color.darker()));
material.setShininess(128);
apparenceFinale.setMaterial(material);
}
if (coefTransp != 1) {
TransparencyAttributes t_attr = new TransparencyAttributes(
TransparencyAttributes.BLENDED, (float) coefTransp,
TransparencyAttributes.BLEND_SRC_ALPHA,
TransparencyAttributes.BLENDED);
apparenceFinale.setTransparencyAttributes(t_attr);
}
return apparenceFinale;
}
示例7: initBGSel
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Permet de créer un BranchGroup contenant une sphère Elle servira à indiquer
* si un objet est selectionné
*/
private void initBGSel() {
// On initialise la selection
// On récupère la sphère englobante de l'objet
BoundingSphere bs = new BoundingSphere(this.bGRep.getBounds());
Point3d pt = new Point3d();
bs.getCenter(pt);
// On place le sphère aux bonnes coordonnées
Transform3D translate = new Transform3D();
translate.set(new Vector3f((float) pt.getX(), (float) pt.getY(), (float) pt
.getZ()));
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
// Indique que l'on est en mode surfacique
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
pa.setCullFace(PolygonAttributes.CULL_BACK);
pa.setBackFaceNormalFlip(false);
Color3f couleur3F = new Color3f(ConstantRepresentation.selectionColor);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
material.setAmbientColor(couleur3F.x / 2, couleur3F.y / 2, couleur3F.z / 2);
material.setDiffuseColor(couleur3F);
material.setSpecularColor(new Color3f(1.0f, 1.0f, 1.0f));
material.setShininess(128);
apparenceFinale.setMaterial(material);
// On applique l'apparence à la sphère
Sphere sphere = new Sphere((float) bs.getRadius(), apparenceFinale);
TransparencyAttributes t_attr = new TransparencyAttributes(
TransparencyAttributes.BLENDED, (float) 0.5,
TransparencyAttributes.BLEND_SRC_ALPHA, TransparencyAttributes.BLENDED);
apparenceFinale.setTransparencyAttributes(t_attr);
TransformGroup TG1 = new TransformGroup(translate);
TG1.addChild(sphere);
this.bgSel = new BranchGroup();
this.bgSel.setCapability(BranchGroup.ALLOW_DETACH);
this.bgSel.addChild(TG1);
}
示例8: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Génère l'apparence de l'objet
*
* @return
*/
private Appearance generateAppearance() {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_ATTRIBUTES_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
apparenceFinale.setTexture(this.texture);
apparenceFinale.setTextureAttributes(new TextureAttributes());
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
return apparenceFinale;
}
示例9: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Permet de créer l'apparence en fonction de paramètres Dans le cadre d'un
* ponctuel, certains paramètres n'ont aucun sens
*
* @param isColored
* @param color
* @param coefficientTransparence
* @param isRepresentationSolid
* @return
*/
private static Appearance generateAppearance(Color color, double coefOpacity,
boolean isSolid) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
material.setAmbientColor(0.2f, 0.2f, 0.2f);
material.setDiffuseColor(new Color3f(color));
material.setSpecularColor(new Color3f(color));
material.setShininess(128);
// et de material
apparenceFinale.setMaterial(material);
if (coefOpacity != 1) {
TransparencyAttributes t_attr =
new TransparencyAttributes(TransparencyAttributes.BLENDED,
(float) coefOpacity,
TransparencyAttributes.BLEND_SRC_ALPHA,
TransparencyAttributes.BLENDED);
apparenceFinale.setTransparencyAttributes(t_attr);
}
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
if (isSolid) {
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
if (ConstantRepresentation.cullMode) {
pa.setCullFace(PolygonAttributes.CULL_BACK);
}
} else {
pa.setPolygonMode(PolygonAttributes.POLYGON_LINE);
}
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
return apparenceFinale;
}
示例10: generateApparence
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Permet de créer l'apparence en fonction de paramètres Dans le cadre d'un
* ponctuel, certains paramètres n'ont aucun sens
*
* @param color couleur
* @param coefOpacity coefficient d'opacité
* @param isSolid mode solide
* @return
*/
private static Appearance generateApparence(Color color, double coefOpacity,
boolean isSolid) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_READ);
apparenceFinale.setCapability(Appearance.ALLOW_MATERIAL_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
// Création du material (gestion des couleurs et de l'affichage)
Material material = new Material();
Color3f col3f = new Color3f(color);
material.setAmbientColor(col3f);
material.setDiffuseColor(col3f);
material.setEmissiveColor(col3f);
material.setLightingEnable(true);
material.setSpecularColor(col3f);
material.setShininess(1);
// et de material
apparenceFinale.setMaterial(material);
if (coefOpacity != 1) {
TransparencyAttributes t_attr =
new TransparencyAttributes(TransparencyAttributes.NICEST,
(float) (1 - coefOpacity));
apparenceFinale.setTransparencyAttributes(t_attr);
}
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
if (isSolid) {
pa.setPolygonMode(PolygonAttributes.POLYGON_FILL);
if (ConstantRepresentation.cullMode) {
pa.setCullFace(PolygonAttributes.CULL_BACK);
}
} else {
pa.setPolygonMode(PolygonAttributes.POLYGON_LINE);
}
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
return apparenceFinale;
}
示例11: generateAppearance
import javax.media.j3d.PolygonAttributes; //导入方法依赖的package包/类
/**
* Génère une apparence et gère le style en fonction du fait que c'est un mur
* ou pas
*
* @param isRoof indique si c'est un toit
* @return
*/
private Appearance generateAppearance(boolean isRoof) {
// Création de l'apparence
Appearance apparenceFinale = new Appearance();
// Autorisations pour l'apparence
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_POLYGON_ATTRIBUTES_WRITE);
// Autorisations pour le material
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_ATTRIBUTES_READ);
apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_ATTRIBUTES_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_TEXTURE_WRITE);
apparenceFinale.setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
// Le toit influe sur la texture
if (isRoof) {
apparenceFinale.setTexture(this.roofTexture);
} else {
apparenceFinale.setTexture(this.wallTexture);
}
apparenceFinale.setTextureAttributes(new TextureAttributes());
// Création des attributs du polygone
PolygonAttributes pa = new PolygonAttributes();
pa.setCullFace(PolygonAttributes.CULL_NONE);
pa.setCapability(PolygonAttributes.ALLOW_CULL_FACE_WRITE);
pa.setBackFaceNormalFlip(false);
// Association à l'apparence des attributs de géométrie et de material
apparenceFinale.setPolygonAttributes(pa);
return apparenceFinale;
}