1 /*****************************************************************************
2 * Virtual Mockup for Machine Vision
3 * Copyright (C) 2001-2003 Fabio R. de Miranda, João E. Kogler Jr.,
4 * Carlos S. Santos.
5 * Virtual Mockup for Machine Vision Project funded by SENAC-SP
6 *
7 * Permission is granted to redistribute and/or modify this
8 * software under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This software is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License (http://www.gnu.org/copyleft/lesser.html)
16 * for more details.
17 *
18 *****************************************************************************/
19
20 package camera3d.gizmo;
21
22 import javax.media.j3d.*;
23 import javax.vecmath.*;
24 import camera3d.*;
25
26
27 /***
28 * Abstract superclass to gizmos.
29 * @author Carlos da Silva dos Santos, Fábio de Miranda
30 * @version 1.0
31 */
32 public abstract class SimpleGizmo extends BranchGroup {
33
34 Color3b color;
35 Appearance appearance;
36 Shape3D shape;
37
38 String label;
39
40 public SimpleGizmo(Color3b color) {
41 super();
42 this.color = color;
43 this.setCapability(BranchGroup.ALLOW_CHILDREN_READ);
44 this.setCapability(BranchGroup.ALLOW_CHILDREN_WRITE);
45 this.setCapability(BranchGroup.ALLOW_CHILDREN_EXTEND);
46 this.setCapability(BranchGroup.ALLOW_LOCAL_TO_VWORLD_READ);
47 this.setCapability(BranchGroup.ALLOW_DETACH);
48 }
49
50 public SimpleGizmo(Appearance app){
51 super();
52 this.appearance = app;
53 }
54
55 public SimpleGizmo(){
56 this(new Color3b((byte)200, (byte)30, (byte)30));
57 }
58
59 public abstract String getLabel();
60
61 public abstract Color3b getDefaultColor();
62
63 }
This page was automatically generated by Maven