Statistics
| Revision:

gvsig-3d / 2.0 / trunk / org.gvsig.gvsig3d / org.gvsig.gvsig3d.lib / org.gvsig.gvsig3d.lib.impl / src / main / java / org / gvsig / gvsig3d / impl / symbology3d / Symbol3DFactory.java @ 327

History | View | Annotate | Download (2.11 KB)

1
package org.gvsig.gvsig3d.impl.symbology3d;
2

    
3
import org.gvsig.gvsig3d.impl.symbology3d.fill.impl.SimpleFill3DSymbol;
4
import org.gvsig.gvsig3d.impl.symbology3d.line.impl.SimpleLine3DSymbol;
5
import org.gvsig.gvsig3d.impl.symbology3d.marker.impl.GeometryMarker3DSymbol;
6
import org.gvsig.gvsig3d.impl.symbology3d.marker.impl.NodeMarker3DSymbol;
7
import org.gvsig.gvsig3d.impl.symbology3d.marker.impl.PictureMarker3DSymbol;
8
import org.gvsig.gvsig3d.impl.symbology3d.marker.impl.SimpleMarker3DSymbol;
9
import org.gvsig.gvsig3d.symbology3d.I3DSymbol;
10
import org.gvsig.osgvp.exceptions.node.NodeException;
11
import org.gvsig.osgvp.symbology.ISymbol3D;
12
import org.gvsig.osgvp.symbology.fill.SimpleFill;
13
import org.gvsig.osgvp.symbology.line.SimpleLine;
14
import org.gvsig.osgvp.symbology.marker.NodeMarker;
15
import org.gvsig.osgvp.symbology.marker.PictureMarker;
16
import org.gvsig.osgvp.symbology.marker.SimpleMarker;
17
import org.gvsig.osgvp.symbology.marker.GeometryMarker;
18

    
19
public class Symbol3DFactory {
20

    
21
        public static ISymbol3D getSymbol3D(I3DSymbol symbol) throws NodeException {
22
                // Method to create osgVP symbol related to gvSIG 3D symbol
23
                ISymbol3D newSymbol = null;
24
                if (symbol instanceof SimpleFill3DSymbol)
25
                        newSymbol= new SimpleFill();
26

    
27
                if (symbol instanceof SimpleLine3DSymbol)
28
                        newSymbol= new SimpleLine();
29
                
30
                if (symbol instanceof NodeMarker3DSymbol)
31
                {
32
                        newSymbol = new NodeMarker();
33
                        ((NodeMarker)newSymbol).setNodeFile(((NodeMarker3DSymbol)symbol).getNodeFileURL());
34
                        return newSymbol;
35
                }
36
                if (symbol instanceof PictureMarker3DSymbol)
37
                {
38
                        newSymbol = new PictureMarker();
39
                        ((PictureMarker)newSymbol).setPictureFile(((PictureMarker3DSymbol)symbol).getPictureFileURL());
40
                        ((PictureMarker)newSymbol).setPointSize((float)((PictureMarker3DSymbol) symbol).getSize());
41
                        return newSymbol;
42
                }
43
                if (symbol instanceof SimpleMarker3DSymbol)
44
                {
45
                        newSymbol= new SimpleMarker();
46
                        ((SimpleMarker)newSymbol).setPointSize((float)((SimpleMarker3DSymbol) symbol).getSize());
47
                }        
48
                
49
                if (symbol instanceof GeometryMarker3DSymbol)
50
                        newSymbol= new GeometryMarker();
51
                        
52
                newSymbol.setColor(symbol.getColor());
53
        
54
                return newSymbol;
55
        }
56

    
57
}