import javax.media.j3d.Appearance; import javax.media.j3d.BranchGroup; import javax.media.j3d.PolygonAttributes; import javax.media.j3d.Shape3D; import javax.media.j3d.TriangleArray; import javax.vecmath.Color3f; import javax.vecmath.Point3f; /* * Created on 2006/01/01 */ /** * �g���C�t�H�[�X��\�z���� * * @author mori */ public class Triforce { private BranchGroup triforceBG; public Triforce() { triforceBG = new BranchGroup(); // Geometry�̐��� TriangleArray t1 = new TriangleArray(3, TriangleArray.COORDINATES | TriangleArray.COLOR_3); TriangleArray t2 = new TriangleArray(3, TriangleArray.COORDINATES | TriangleArray.COLOR_3); TriangleArray t3 = new TriangleArray(3, TriangleArray.COORDINATES | TriangleArray.COLOR_3); // ���_�̃Z�b�g Color3f yellow = new Color3f(1.0f, 1.0f, 0.0f); // �g���C�t�H�[�X�̐F // ��̎O�p�` t1.setCoordinate(0, new Point3f(0.0f, 0.6f, 0.0f)); t1.setCoordinate(1, new Point3f(-0.3f, 0.0f, 0.0f)); t1.setCoordinate(2, new Point3f(0.3f, 0.0f, 0.0f)); t1.setColor(0, yellow); t1.setColor(1, yellow); t1.setColor(2, yellow); // �����̎O�p�` t2.setCoordinate(0, new Point3f(-0.3f, 0.0f, 0.0f)); t2.setCoordinate(1, new Point3f(-0.6f, -0.6f, 0.0f)); t2.setCoordinate(2, new Point3f(0.0f, -0.6f, 0.0f)); t2.setColor(0, yellow); t2.setColor(1, yellow); t2.setColor(2, yellow); // �E���̎O�p�` t3.setCoordinate(0, new Point3f(0.3f, 0.0f, 0.0f)); t3.setCoordinate(1, new Point3f(0.0f, -0.6f, 0.0f)); t3.setCoordinate(2, new Point3f(0.6f, -0.6f, 0.0f)); t3.setColor(0, yellow); t3.setColor(1, yellow); t3.setColor(2, yellow); // Appearance�̐ݒ� Appearance app = new Appearance(); PolygonAttributes pAttr = new PolygonAttributes(); pAttr.setCullFace(PolygonAttributes.CULL_NONE); // ���ʂ�`�� app.setPolygonAttributes(pAttr); // BG�ɒlj� triforceBG.addChild(new Shape3D(t1, app)); triforceBG.addChild(new Shape3D(t2, app)); triforceBG.addChild(new Shape3D(t3, app)); } /** * �\�z����BG��Ԃ� * * @return BG */ public BranchGroup getBG() { return triforceBG; } }