public void initialize() { which_changed = (SFInt32) getEventOut("which_changed"); which_changed.setValue(0); }
public void processEvent(Event e) { String name = e.getName(); if (name.equals("touch")) { which_changed.setValue(1 - which_changed.getValue()); } }
public void initialize() { // System.out.println("Creating Fence geometry"); int num = 0; int len = startField.getSize(); float[] start = new float[3]; float[] end = new float[3]; float height; // One shape for a panel, panelTop and post, post Top int shape_groups = 4; int num_panels = len; int num_panels_per_shape = fencesPerShapeField.getValue(); int num_shapes = (num_panels / num_panels_per_shape) * shape_groups; int num_posts_per_shape = num_panels_per_shape; // System.out.println("Number of posts: " + len); // System.out.println("Number of panels: " + num_panels); // System.out.println("Number of shapes: " + num_shapes); // System.out.println("Number of panels per shape: " + num_panels_per_shape); // System.out.println("Number of posts per shape: " + num_posts_per_shape); X3DNode[] shapes = new X3DNode[num_shapes]; X3DExecutionContext mainScene = browser.getExecutionContext(); // Create a common Appearance to share X3DNode[] appearances = new X3DNode[appearanceField.getSize()]; appearanceField.getValue(appearances); X3DNode panel_appearance = appearances[panelAppearanceField.getValue()]; X3DNode panelTop_appearance = appearances[panelTopAppearanceField.getValue()]; X3DNode panelRail_appearance = appearances[panelRailAppearanceField.getValue()]; X3DNode post_appearance = appearances[postAppearanceField.getValue()]; X3DNode postTop_appearance = appearances[postTopAppearanceField.getValue()]; int shape_idx = 0; // Create Panels X3DNode[] new_shapes = createSegmentGeom( mainScene, panel_appearance, postField, postGeometryField, panelHeightField, startField, endField, false, null, len, (num_shapes / shape_groups), num_posts_per_shape, true, true, 1, 1); for (int i = 0; i < new_shapes.length; i++) { shapes[shape_idx++] = new_shapes[i]; } // Create PanelTops new_shapes = createSegmentGeom( mainScene, panelTop_appearance, postField, postGeometryField, panelTopHeightField, startField, endField, true, panelHeightField, len, (num_shapes / shape_groups), num_posts_per_shape, true, true, 15, 10); for (int i = 0; i < new_shapes.length; i++) { X3DNode panel_shape = mainScene.createNode("Shape"); shapes[shape_idx++] = new_shapes[i]; } // Create Posts new_shapes = createVertexGeom( mainScene, post_appearance, postField, postGeometryField, postSizeField, startField, endField, false, null, (num_shapes / shape_groups), num_posts_per_shape); for (int i = 0; i < new_shapes.length; i++) { X3DNode panel_shape = mainScene.createNode("Shape"); shapes[shape_idx++] = new_shapes[i]; } // Create PostTops new_shapes = createVertexGeom( mainScene, postTop_appearance, postTopField, postTopGeometryField, postTopSizeField, startField, endField, true, postSizeField, (num_shapes / shape_groups), num_posts_per_shape); for (int i = 0; i < new_shapes.length; i++) { shapes[shape_idx++] = new_shapes[i]; } childrenField.setValue(shapes.length, shapes); // System.out.println("Done creating fence geometry"); }