Revision 23304 trunk/libraries/lib3DMap/src/org/gvsig/gvsig3d/simbology3D/symbol3D/point/ObjectPoint3DSymbol.java

View differences:

ObjectPoint3DSymbol.java
21 21
import com.iver.cit.gvsig.fmap.core.symbols.ISymbol;
22 22
import com.sun.java_cup.internal.sym;
23 23

  
24
public class ObjectPoint3DSymbol extends Abstract3DSymbol{
24
public class ObjectPoint3DSymbol extends Abstract3DSymbol {
25 25

  
26 26
	private Object3DMarkerSymbol object3DMarketSymbol;
27
	private static Node object3D = null;
28
	private static String oldPath = "";
27 29

  
28 30
	public ObjectPoint3DSymbol(ISymbol symbol) {
29 31
		super(symbol);
......
32 34

  
33 35
	@Override
34 36
	public Node generateSymbol(List<Vec3> position) {
35
		
37

  
36 38
		Group group = new Group();
37 39
		PositionAttitudeTransform posAttTrasn = null;
38 40
		Vec3 scale = object3DMarketSymbol.getScale();
39 41
		Vec3 rotation = object3DMarketSymbol.getRotationObject();
40 42
		try {
41
//			Node object3D = osgDB.readNodeFile("D:/modelos3d/cow.ive");
42
			Node object3D = osgDB.readNodeFile(object3DMarketSymbol
43
					.getObject3DPath());
43
			// Node object3D = osgDB.readNodeFile("D:/modelos3d/cow.ive");
44
			if (!(oldPath.equals(object3DMarketSymbol.getObject3DPath()))){
45
				oldPath = object3DMarketSymbol.getObject3DPath();
46
				object3D = osgDB.readNodeFile(oldPath);
47
			}
44 48
			for (Iterator iterator = position.iterator(); iterator.hasNext();) {
45 49
				Vec3 pos = (Vec3) iterator.next();
46
//				System.err.println("position " + pos.x() + " " + pos.y() + " "
47
//						+ pos.z());
50
				System.err.println("position " + pos.x() + " " + pos.y() + " "
51
						+ pos.z());
48 52
				posAttTrasn = new PositionAttitudeTransform();
49 53
				posAttTrasn.setPosition(pos);
50 54
				posAttTrasn.setScale(scale);
51
				
52
				if (object3DMarketSymbol.isAutoRotate()){
53
					AutoTransform autoRotateTrasn = null;	
54
					autoRotateTrasn = new AutoTransform(); 
55

  
56
				if (object3DMarketSymbol.isAutoRotate()) {
57
					AutoTransform autoRotateTrasn = null;
58
					autoRotateTrasn = new AutoTransform();
55 59
					autoRotateTrasn.setPosition(pos);
56 60
					autoRotateTrasn.addChild(posAttTrasn);
57
					autoRotateTrasn.setAutoRotateMode(AutoTransform.AutoRotateMode.ROTATE_TO_CAMERA);
58
//					autoRotateTrasn.setAutoScaleToScreen(true);
61
					autoRotateTrasn
62
							.setAutoRotateMode(AutoTransform.AutoRotateMode.ROTATE_TO_CAMERA);
63
					// autoRotateTrasn.setAutoScaleToScreen(true);
59 64
					group.addChild(autoRotateTrasn);
60
				}else{
65
				} else {
61 66
					group.addChild(posAttTrasn);
62 67
				}
63 68
				posAttTrasn.addChild(object3D);
64
				
69

  
65 70
			}
66 71
		} catch (NodeException e1) {
67 72
			// TODO Auto-generated catch block

Also available in: Unified diff