List of usage examples for javax.media.j3d TransparencyAttributes BLENDED
int BLENDED
To view the source code for javax.media.j3d TransparencyAttributes BLENDED.
Click Source Link
From source file:RedGreenGriffin.java
public BranchGroup createSceneGraph(int i) { System.out.println("Creating scene for: " + URLString); // Create the root of the branch graph BranchGroup objRoot = new BranchGroup(); try {/*from w w w. j a v a 2 s . c o m*/ Transform3D myTransform3D = new Transform3D(); myTransform3D.setTranslation(new Vector3f(+0.0f, -0.15f, -3.6f)); TransformGroup objTrans = new TransformGroup(myTransform3D); objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); Transform3D t = new Transform3D(); TransformGroup tg = new TransformGroup(t); tg.setCapability(TransformGroup.ALLOW_TRANSFORM_READ); tg.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); objTrans.addChild(tg); URL url = new URL(URLString); ObjectFile f = new ObjectFile(); f.setFlags(ObjectFile.RESIZE | ObjectFile.TRIANGULATE | ObjectFile.STRIPIFY); System.out.println("About to load"); Scene s = f.load(url); Transform3D myTrans = new Transform3D(); myTrans.setTranslation(new Vector3f(eyeOffset, -eyeOffset, 0F)); TransformGroup mytg = new TransformGroup(myTrans); //mytg.addChild(s.getSceneGroup()); tg.addChild(mytg); Transform3D myTrans2 = new Transform3D(); myTrans2.setTranslation(new Vector3f(-eyeOffset, +eyeOffset, 0F)); TransformGroup mytg2 = new TransformGroup(myTrans2); //mytg2.addChild(s.getSceneGroup()); Hashtable table = s.getNamedObjects(); for (Enumeration e = table.keys(); e.hasMoreElements();) { Object key = e.nextElement(); System.out.println(key); Object obj = table.get(key); System.out.println(obj.getClass().getName()); Shape3D shape = (Shape3D) obj; //shape.setCapability(Shape3D.ALLOW_APPEARANCE_WRITE); Appearance ap = new Appearance(); Color3f black = new Color3f(0.0f, 0.0f, 0.0f); Color3f red = new Color3f(0.7f, .0f, .15f); Color3f green = new Color3f(0f, .7f, .15f); ap.setMaterial(new Material(green, black, green, black, 1.0f)); Appearance ap2 = new Appearance(); ap2.setMaterial(new Material(red, black, red, black, 1.0f)); float transparencyValue = 0.5f; TransparencyAttributes t_attr = new TransparencyAttributes(TransparencyAttributes.BLENDED, transparencyValue, TransparencyAttributes.BLEND_SRC_ALPHA, TransparencyAttributes.BLEND_ONE); ap2.setTransparencyAttributes(t_attr); ap2.setRenderingAttributes(new RenderingAttributes()); ap.setTransparencyAttributes(t_attr); ap.setRenderingAttributes(new RenderingAttributes()); // bg.addChild(ap); shape.setAppearance(ap); mytg2.addChild(new Shape3D(shape.getGeometry(), ap2)); mytg.addChild(new Shape3D(shape.getGeometry(), ap)); } tg.addChild(mytg2); System.out.println("Finished Loading"); BoundingSphere bounds = new BoundingSphere(new Point3d(0.0, 0.0, 0.0), 100.0); Color3f light1Color = new Color3f(.9f, 0.9f, 0.9f); Vector3f light1Direction = new Vector3f(4.0f, -7.0f, -12.0f); DirectionalLight light1 = new DirectionalLight(light1Color, light1Direction); light1.setInfluencingBounds(bounds); objTrans.addChild(light1); // Set up the ambient light Color3f ambientColor = new Color3f(1.0f, .4f, 0.3f); AmbientLight ambientLightNode = new AmbientLight(ambientColor); ambientLightNode.setInfluencingBounds(bounds); objTrans.addChild(ambientLightNode); MouseRotate behavior = new MouseRotate(); behavior.setTransformGroup(tg); objTrans.addChild(behavior); // Create the translate behavior node MouseTranslate behavior3 = new MouseTranslate(); behavior3.setTransformGroup(tg); objTrans.addChild(behavior3); behavior3.setSchedulingBounds(bounds); KeyNavigatorBehavior keyNavBeh = new KeyNavigatorBehavior(tg); keyNavBeh.setSchedulingBounds(new BoundingSphere(new Point3d(), 1000.0)); objTrans.addChild(keyNavBeh); behavior.setSchedulingBounds(bounds); objRoot.addChild(objTrans); } catch (Throwable t) { System.out.println("Error: " + t); } return objRoot; }
From source file:GeometryByReferenceTest.java
public void actionPerformed(ActionEvent e) { Object target = e.getSource(); GeometryArray geo;/*from www. j a v a 2s . c o m*/ boolean setColor = false, setVertex = false; if (target == geomType) { geo = geoArrays[geomType.getSelectedIndex()]; // Set everything to null, and set it later .. geo.setColorRefFloat(null); geo.setColorRef3f(null); geo.setCoordRefFloat(null); geo.setCoordRef3f(null); shape.setGeometry(geoArrays[geomType.getSelectedIndex()]); setColor = true; setVertex = true; } else if (target == transparency) { if (transparency.isSelected()) { transp.setTransparencyMode(TransparencyAttributes.BLENDED); } else { transp.setTransparencyMode(TransparencyAttributes.NONE); } } else if (target == updates) { updateIndex = updates.getSelectedIndex(); if (updateIndex == 1) { System.out.println("Doing coordinate update"); ((GeometryArray) (shape.getGeometry())).updateData(this); } else if (updateIndex == 2) { System.out.println("Doing color update"); ((GeometryArray) (shape.getGeometry())).updateData(this); } } else if (target == vertexType) { geo = ((GeometryArray) shape.getGeometry()); if (vertexIndex == 0) { geo.setCoordRefFloat(null); } else if (vertexIndex == 1) { geo.setCoordRef3f(null); } vertexIndex = vertexType.getSelectedIndex(); setVertex = true; } else if (target == colorType) { geo = (GeometryArray) shape.getGeometry(); if (colorIndex == 0) { geo.setColorRefFloat(null); } else if (colorIndex == 1) { geo.setColorRef3f(null); } colorIndex = colorType.getSelectedIndex(); setColor = true; } if (setVertex) { geo = (GeometryArray) shape.getGeometry(); if (vertexIndex == 0) { if (geo instanceof IndexedGeometryArray) geo.setCoordRefFloat(indexedFloatVerts); else geo.setCoordRefFloat(floatVerts); } else if (vertexIndex == 1) { if (geo instanceof IndexedGeometryArray) geo.setCoordRef3f(indexedP3fVerts); else geo.setCoordRef3f(p3fVerts); } } if (setColor) { geo = (GeometryArray) shape.getGeometry(); if (colorIndex == 0) { if (geo instanceof IndexedGeometryArray) geo.setColorRefFloat(indexedFloatClrs); else geo.setColorRefFloat(floatClrs); } else if (colorIndex == 1) { if (geo instanceof IndexedGeometryArray) geo.setColorRef3f(indexedC3fClrs); else geo.setColorRef3f(c3fClrs); } } }
From source file:GeometryByReferenceNIOBuffer.java
public void actionPerformed(ActionEvent e) { Object target = e.getSource(); GeometryArray geo;/*from w w w . j av a 2s . co m*/ boolean setColor = false, setVertex = false; if (target == geomType) { geo = geoArrays[geomType.getSelectedIndex()]; // Set everything to null, and set it later .. geo.setColorRefBuffer(null); geo.setCoordRefBuffer(null); shape.setGeometry(geoArrays[geomType.getSelectedIndex()]); setColor = true; setVertex = true; } else if (target == transparency) { if (transparency.isSelected()) { transp.setTransparencyMode(TransparencyAttributes.BLENDED); } else { transp.setTransparencyMode(TransparencyAttributes.NONE); } } else if (target == updates) { updateIndex = updates.getSelectedIndex(); if (updateIndex == 1) { System.out.println("Doing coordinate update"); ((GeometryArray) (shape.getGeometry())).updateData(this); } else if (updateIndex == 2) { System.out.println("Doing color update"); ((GeometryArray) (shape.getGeometry())).updateData(this); } } if (setVertex) { geo = (GeometryArray) shape.getGeometry(); if (geo instanceof IndexedGeometryArray) geo.setCoordRefBuffer(indexedFloatBufferCoord); else geo.setCoordRefBuffer(floatBufferCoord); } if (setColor) { geo = (GeometryArray) shape.getGeometry(); if (geo instanceof IndexedGeometryArray) geo.setColorRefBuffer(indexedFloatBufferColor); else geo.setColorRefBuffer(floatBufferColor); } }
From source file:InterleavedNIOBuffer.java
public void actionPerformed(ActionEvent e) { Object target = e.getSource(); if (target == geomType) { shape.setGeometry(geoArrays[geomType.getSelectedIndex()]); } else if (target == transparency) { if (transparency.isSelected()) { transp.setTransparencyMode(TransparencyAttributes.BLENDED); } else {/*from w ww . j ava 2s . c om*/ transp.setTransparencyMode(TransparencyAttributes.NONE); } } else if (target == textureBox) { if (textureBox.isSelected()) { app.setTextureUnitState(textureUnitState); } else { app.setTextureUnitState(null); } } }
From source file:KeyNavigateTest.java
void createWater(Group mapGroup, int nPixelX, int nPixelY) { Point3d point = convertToWorldCoordinatesPixelCenter(nPixelX, nPixelY); if (m_WaterAppearance == null) { m_WaterAppearance = new Appearance(); m_WaterAppearance.setPolygonAttributes( new PolygonAttributes(PolygonAttributes.POLYGON_FILL, PolygonAttributes.CULL_NONE, 0, false)); m_WaterAppearance//from w w w . j a v a2 s.co m .setTransparencyAttributes(new TransparencyAttributes(TransparencyAttributes.BLENDED, 1.0f)); m_WaterAppearance.setTextureAttributes(new TextureAttributes(TextureAttributes.REPLACE, new Transform3D(), new Color4f(0, 0, 0, 1), TextureAttributes.FASTEST)); } Land water = new Land(this, mapGroup, ComplexObject.GEOMETRY | ComplexObject.TEXTURE); water.createObject(m_WaterAppearance, new Vector3d(point.x, m_kFloorLevel + 0.1, point.z), new Vector3d(40, 1, 40), "water.gif", null, null); }
From source file:KeyNavigateTest.java
protected Group createGeometryGroup(Appearance app, Vector3d position, Vector3d scale, String szTextureFile, String szSoundFile) {/*from w w w. java 2s.c o m*/ Group g = new Group(); app.setPolygonAttributes( new PolygonAttributes(PolygonAttributes.POLYGON_FILL, PolygonAttributes.CULL_NONE, 0, false)); app.setTransparencyAttributes(new TransparencyAttributes(TransparencyAttributes.BLENDED, 1.0f)); m_TextureAttributes = new TextureAttributes(TextureAttributes.REPLACE, new Transform3D(), new Color4f(0, 0, 0, 1), TextureAttributes.FASTEST); app.setTextureAttributes(m_TextureAttributes); if ((m_nFlags & ComplexObject.TEXTURE) == ComplexObject.TEXTURE) setTexture(app, szTextureFile); Cone cone = new Cone(1, 1, Primitive.GENERATE_TEXTURE_COORDS, app); g.addChild(cone); attachBehavior(new TextureAnimationBehavior(m_TextureAttributes)); return g; }
From source file:AppearanceTest.java
public void onBLENDED() { getTransparencyAttributes().setTransparencyMode(TransparencyAttributes.BLENDED); }
From source file:AppearanceExplorer.java
TransparencyAttributesEditor(TransparencyAttributes init) { transpAttr = init;//from w ww . java 2 s . c o m transparency = transpAttr.getTransparency(); mode = transpAttr.getTransparencyMode(); srcBlendFunction = transpAttr.getSrcBlendFunction(); dstBlendFunction = transpAttr.getDstBlendFunction(); setLayout(new GridLayout(4, 1)); FloatLabelJSlider transparencySlider = new FloatLabelJSlider("Transparency", 0.1f, 0.0f, 1.0f, transparency); transparencySlider.setMajorTickSpacing(0.1f); transparencySlider.setPaintTicks(true); transparencySlider.addFloatListener(new FloatListener() { public void floatChanged(FloatEvent e) { transparency = e.getValue(); transpAttr.setTransparency(transparency); } }); add(transparencySlider); String[] modeNames = { "NONE", "SCREEN_DOOR", "BLENDED", "NICEST", "FASTEST" }; int[] modeValues = { TransparencyAttributes.NONE, TransparencyAttributes.SCREEN_DOOR, TransparencyAttributes.BLENDED, TransparencyAttributes.NICEST, TransparencyAttributes.FASTEST }; IntChooser modeChooser = new IntChooser("Mode:", modeNames, modeValues, mode); modeChooser.addIntListener(new IntListener() { public void intChanged(IntEvent event) { mode = event.getValue(); transpAttr.setTransparencyMode(mode); } }); add(modeChooser); String[] blendNames = { "BLEND_ZERO", "BLEND_ONE", "BLEND_SRC_ALPHA", "BLEND_ONE_MINUS_SRC_ALPHA" }; int[] blendValues = { TransparencyAttributes.BLEND_ZERO, TransparencyAttributes.BLEND_ONE, TransparencyAttributes.BLEND_SRC_ALPHA, TransparencyAttributes.BLEND_ONE_MINUS_SRC_ALPHA, }; IntChooser srcBlendFunctionChooser = new IntChooser("Src Blend Func:", blendNames, blendValues, srcBlendFunction); srcBlendFunctionChooser.addIntListener(new IntListener() { public void intChanged(IntEvent event) { srcBlendFunction = event.getValue(); transpAttr.setSrcBlendFunction(srcBlendFunction); } }); add(srcBlendFunctionChooser); IntChooser dstBlendFunctionChooser = new IntChooser("Dst Blend Func:", blendNames, blendValues, dstBlendFunction); dstBlendFunctionChooser.addIntListener(new IntListener() { public void intChanged(IntEvent event) { dstBlendFunction = event.getValue(); transpAttr.setDstBlendFunction(dstBlendFunction); } }); add(dstBlendFunctionChooser); }