Revision 323 2.0/trunk/org.gvsig.gvsig3d/org.gvsig.gvsig3d.lib/org.gvsig.gvsig3d.lib.impl/src/main/java/org/gvsig/gvsig3d/impl/map3d/MapContext3DImpl.java
MapContext3DImpl.java | ||
---|---|---|
118 | 118 |
import org.gvsig.raster.impl.provider.DefaultRasterProvider; |
119 | 119 |
import org.gvsig.raster.impl.provider.tile.FileTileServer; |
120 | 120 |
import org.gvsig.raster.netcdf.io.NetCDFDataParameters; |
121 |
import org.gvsig.symbology.fmap.mapcontext.rendering.symbol.fill.IFillSymbol; |
|
122 |
import org.gvsig.symbology.fmap.mapcontext.rendering.symbol.line.ILineSymbol; |
|
121 | 123 |
import org.gvsig.tools.ToolsLocator; |
122 | 124 |
import org.gvsig.tools.dynobject.DynStruct; |
123 | 125 |
import org.gvsig.tools.dynobject.exception.DynMethodException; |
... | ... | |
339 | 341 |
} |
340 | 342 |
|
341 | 343 |
Layer3DProps props = getLayer3DProps(layer); |
342 |
|
|
343 |
// hack!! |
|
344 |
// props.setType(Layer3DPropsImpl.layer3DVector); |
|
345 | 344 |
GeometryManager geoMan; |
346 | 345 |
|
347 | 346 |
geoMan = GeometryLocator.getGeometryManager(); |
... | ... | |
453 | 452 |
// Vector layers |
454 | 453 |
if (props.getType() == Layer3DPropsImpl.layer3DVector) { |
455 | 454 |
// if (layer instanceof FLyrVect) { |
456 |
|
|
457 |
// Set a 3D Legend for jordi |
|
455 |
// Set a 3D Legend |
|
458 | 456 |
try { |
459 | 457 |
((FLyrVect) layer).setLegend((IVectorLegend) MapContextLocator |
460 | 458 |
.getMapContextManager().getLegend( |
... | ... | |
1239 | 1237 |
|
1240 | 1238 |
private UpdateDataEvent loadVectorData(FLayer layer, Envelope envelope, |
1241 | 1239 |
RequestDataEvent rde) { |
1242 |
|
|
1240 |
|
|
1243 | 1241 |
System.out.println("vector data"); |
1244 | 1242 |
UpdateDataEvent ude = new UpdateDataEvent(); |
1245 | 1243 |
ude.copyDataFromRequest(rde); |
1246 | 1244 |
|
1245 |
|
|
1247 | 1246 |
// Convenience casting |
1248 | 1247 |
I3DSymbol sy = (I3DSymbol) ((FLyrVect) layer).getLegend() |
1249 | 1248 |
.getDefaultSymbol(); |
1250 |
|
|
1249 |
//Hack for polylines and polygons only rendered rasterized by now |
|
1250 |
if (sy instanceof IFillSymbol || sy instanceof ILineSymbol) |
|
1251 |
{ |
|
1252 |
removeLayerToTerrain(layer); |
|
1253 |
getLayer3DProps(layer).setType(Layer3DPropsImpl.layer3DImage); |
|
1254 |
addLayerToTerrain(layer, true); |
|
1255 |
return null; |
|
1256 |
}//End hack |
|
1257 |
Layer3DProps layerprops = getLayer3DProps(layer); |
|
1258 |
|
|
1259 |
if (layerprops.isZEnable()==false) |
|
1260 |
sy.setFixedHeight(layerprops.getHeight()); |
|
1261 |
|
|
1262 |
|
|
1251 | 1263 |
ViewPort vp = new ViewPort(_viewProjection); |
1252 | 1264 |
vp.setEnvelope(envelope); // the real extent of the tile |
1253 | 1265 |
vp.setAdjustable(false); |
1254 | 1266 |
vp.setImageSize(new Dimension(256, 256)); |
1255 | 1267 |
vp.setDist1pixel(0.000000001); |
1256 | 1268 |
double scale = 0.5 * (layer.getMaxScale() + layer.getMinScale()); |
1257 |
|
|
1269 |
|
|
1258 | 1270 |
try { |
1259 | 1271 |
layer.draw(null, null, vp, new MyCancel(), scale); |
1260 | 1272 |
} catch (ReadException e) { |
... | ... | |
1285 | 1297 |
e.printStackTrace(); |
1286 | 1298 |
} |
1287 | 1299 |
//sm.setPointSize((float) sy.getSize()); |
1300 |
|
|
1288 | 1301 |
Color color = sy.getColor(); |
1289 | 1302 |
sym.setColor(color); |
1290 | 1303 |
n = sym.buildSceneGraph(sy.getGeometry()); |
Also available in: Unified diff