Revision 770

View differences:

2.1/trunk/org.gvsig.view3d/org.gvsig.view3d.swing/org.gvsig.view3d.swing.impl/src/main/java/org/gvsig/view3d/swing/impl/DefaultMapControl3D.java
68 68
import org.gvsig.fmap.mapcontext.layers.FLayer;
69 69
import org.gvsig.fmap.mapcontext.layers.FLayers;
70 70
import org.gvsig.fmap.mapcontext.layers.operations.LayersVisitor;
71
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
71 72
import org.gvsig.tools.exception.BaseException;
72 73
import org.gvsig.tools.observer.BaseNotification;
73 74
import org.gvsig.tools.observer.Notification;
......
81 82
import org.gvsig.view3d.lib.api.loader.Loader;
82 83
import org.gvsig.view3d.lib.api.loader.LoaderFactory;
83 84
import org.gvsig.view3d.lib.api.loader.LoaderParameters;
85
import org.gvsig.view3d.lib.api.loader.RasterLoaderParameters;
84 86
import org.gvsig.view3d.swing.api.MapControl3D;
85 87
import org.gvsig.view3d.swing.api.View3DSwingLocator;
86 88
import org.gvsig.view3d.swing.api.View3DSwingManager;
87 89
import org.gvsig.view3d.swing.api.View3DSwingManager.TYPE;
88 90
import org.gvsig.view3d.swing.api.properties.GeneralProperties3D;
89 91
import org.gvsig.view3d.swing.api.properties.MapControlProperties3D;
92
import org.gvsig.view3d.vector.lib.api.VectorLoaderParameters;
90 93

  
91 94
/**
92 95
 * Default implementation of {@link MapControl3D}.
......
278 281

  
279 282
        View3DManager manager = View3DLocator.getManager();
280 283
        LoaderParameters loaderParameters = manager.getLoaderParameters(layer);
284
        LoaderFactory loaderFactory = null;
281 285
        if (loaderParameters == null) {
282
            // Default loader
283
            List<LoaderFactory> loaderFactories = manager.getLoaderFactories();
284
            if(loaderFactories.isEmpty()) {
286

  
287
            try {
288
            // Default loader depending on layer type
289
            if (layer instanceof FLyrVect){
290
                loaderFactory = manager.getLoaderFactory(VectorLoaderParameters.NAME);
291
            } else {
292
                loaderFactory = manager.getLoaderFactory(RasterLoaderParameters.NAME);
293
            }
294
            } catch (FactoryNotRegisteredException e){
295
                LOG.error("{} or {} loader factory is not registered", VectorLoaderParameters.NAME, RasterLoaderParameters.NAME);
285 296
                return;
286 297
            }
287
            loaderParameters = loaderFactories.get(0).createParameters(layer);
288 298

  
299
            if(loaderFactory == null){
300
                LOG.warn("There are not default loader factory to load {}", layer.getName());
301
                return;
302
            }
303
            
304
            loaderParameters = loaderFactory.createParameters(layer);
305
        } else {
306
            try {
307
                loaderFactory = manager.getLoaderFactory(loaderParameters.getName());
308
            } catch (FactoryNotRegisteredException e) {
309
                LOG.error("{} loader factory is not registered", loaderParameters.getName());
310
                return;
311
            }
289 312
        }
290
        LoaderFactory loaderFactory = null;
291
        try {
292
            loaderFactory = manager.getLoaderFactory(loaderParameters.getName());
293
        } catch (FactoryNotRegisteredException e) {
294
            LOG.error("{} loader factory is not registered", loaderParameters.getName());
295
            return;
296
        }
313
        
297 314
        Loader loader = loaderFactory.createLoader();
298 315
        Object object = null;
299 316
        object = loader.load(loaderParameters);
2.1/trunk/org.gvsig.view3d/org.gvsig.view3d.swing/org.gvsig.view3d.swing.impl/pom.xml
31 31
		</dependency>
32 32
		<dependency>
33 33
			<groupId>org.gvsig</groupId>
34
			<artifactId>org.gvsig.view3d.vector.lib.api</artifactId>
35
		</dependency>
36
		<dependency>
37
			<groupId>org.gvsig</groupId>
34 38
			<artifactId>org.gvsig.raster.fmap</artifactId>
35 39
		</dependency>
36 40
		<dependency>
2.1/trunk/org.gvsig.view3d/org.gvsig.view3d.vector/org.gvsig.view3d.vector.lib/org.gvsig.view3d.vector.lib.impl/src/main/java/org/gvsig/view3d/vector/lib/impl/AbstractRenderableLayer.java
87 87
    }
88 88

  
89 89
    protected int getAltitudeMode(VectorElevationMode mode) {
90
        
91
        if(mode == null) {
92
            LOG.debug("Setting clamp to ground altitude mode by default");
93
            return WorldWind.CLAMP_TO_GROUND;
94
        }
95
        
90 96
        switch (mode) {
91 97
        case CLAMP_TO_GROUND:
92 98
            return WorldWind.CLAMP_TO_GROUND;

Also available in: Unified diff