MapBox Satellite integrated in the principal Map

This commit is contained in:
Francesco Mangiacrapa 2021-11-12 16:57:57 +01:00
parent 2846ba6e2f
commit 002d6d2301
6 changed files with 17 additions and 26 deletions

View File

@ -95,10 +95,8 @@ public class GeoportalDataViewer implements EntryPoint {
int attempt = 0; int attempt = 0;
private LoaderIcon loaderApp = new LoaderIcon("Loading application...."); private LoaderIcon loaderApp = new LoaderIcon("Loading application....");
private HTML attributionDiv = new HTML(); private HTML attributionDiv = new HTML();
/** /**
@ -148,7 +146,7 @@ public class GeoportalDataViewer implements EntryPoint {
olMapMng = new OLMapManager(mainPanel.getMapPanel().getElement().getId(), olMapMng = new OLMapManager(mainPanel.getMapPanel().getElement().getId(),
layerManager.getLayerManagerBus(), firstBaseLayer); layerManager.getLayerManagerBus(), firstBaseLayer);
OpenLayerMap olMap = olMapMng.getOLMap(); OpenLayerMap olMap = olMapMng.getOLMap();
layerManager.setOlMap(olMap); layerManager.setOLMap(olMap);
mainPanel.setMap(olMap); mainPanel.setMap(olMap);
//mainPanel.setMapAttribution(olMapMng.getOLOSMMap().getMapAttribution()); //mainPanel.setMapAttribution(olMapMng.getOLOSMMap().getMapAttribution());
@ -310,9 +308,7 @@ public class GeoportalDataViewer implements EntryPoint {
@Override @Override
public void onLayerRendered(AddedLayerToMapEvent addedLayerToMapEvent) { public void onLayerRendered(AddedLayerToMapEvent addedLayerToMapEvent) {
GWT.log("Fired AddedLayerToMapEvent " + addedLayerToMapEvent.getLayerItem() + "layer type: "+addedLayerToMapEvent.getLayerType()); GWT.log("Fired AddedLayerToMapEvent " + addedLayerToMapEvent.getLayerItem() + "layer type: "+addedLayerToMapEvent.getLayerType());
// GeoportalDataViewerConstants.print("Fired AddedLayerToMapEvent
// "+addedLayerToMapEvent.getLayerItem());
try { try {
attempt = 0; attempt = 0;
@ -453,11 +449,11 @@ public class GeoportalDataViewer implements EntryPoint {
String attributionHTML = "<div class='map-credits'><div class='map-credits-container'>" String attributionHTML = "<div class='map-credits'><div class='map-credits-container'>"
+ baseLayer.getAttribution() + "</div></div>"; + baseLayer.getAttribution() + "</div></div>";
olMapMng.getOLMap().changeBaseMap(baseLayer); olMapMng.getOLMap().changeBaseMap(baseLayer);
//THE OSM Contributors are automatically added by gwt-ol, other ones not. // THE OSM Contributors are automatically added by gwt-ol, others ones not.
if(!baseLayer.getType().equals(BaseMapLayer.OL_BASE_MAP.OSM)) { if (!baseLayer.getType().equals(BaseMapLayer.OL_BASE_MAP.OSM)) {
attributionDiv.setHTML(attributionHTML); attributionDiv.setHTML(attributionHTML);
}else } else
attributionDiv.setHTML(""); attributionDiv.setHTML("");
} }

View File

@ -869,7 +869,7 @@ public class LayerManager {
* *
* @param olMap the new ol map * @param olMap the new ol map
*/ */
public void setOlMap(OpenLayerMap olMap) { public void setOLMap(OpenLayerMap olMap) {
this.olMap = olMap; this.olMap = olMap;
} }

View File

@ -56,10 +56,10 @@ import ol.style.TextOptions;
* *
* @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it
* *
* Nov 12, 2021 * Nov 12, 2021
*/ */
public class LightOpenLayerMap { public class LightOpenLayerMap {
public static final int MAX_ZOOM = 20; public static final int MAX_ZOOM = 20;
/** The map. */ /** The map. */
@ -81,7 +81,7 @@ public class LightOpenLayerMap {
private String markerURL = Images.ICONS.mapMarkerIcon().getURL(); private String markerURL = Images.ICONS.mapMarkerIcon().getURL();
/** /**
* Instantiates a new light open layer OSM. * Instantiates a new light open layer map.
* *
* @param divTargetId the div target id * @param divTargetId the div target id
*/ */
@ -278,7 +278,7 @@ public class LightOpenLayerMap {
Base[] layersArr = layers.getArray(); Base[] layersArr = layers.getArray();
for (int i = 0; i < layersArr.length; i++) { for (int i = 0; i < layersArr.length; i++) {
Base layer = layersArr[i]; Base layer = layersArr[i];
//GeoportalDataViewerConstants.printJs(layer.toString()); // GeoportalDataViewerConstants.printJs(layer.toString());
if (layer instanceof Image) { if (layer instanceof Image) {
Image layerImage = (Image) layer; Image layerImage = (Image) layer;
@ -308,7 +308,7 @@ public class LightOpenLayerMap {
} }
} }
GWT.log("returning mapLayerNameURL: "+mapLayerNameURL); GWT.log("returning mapLayerNameURL: " + mapLayerNameURL);
return mapLayerNameURL; return mapLayerNameURL;
} }

View File

@ -136,8 +136,6 @@ public abstract class OpenLayerMap {
private LinkedHashMap<String, Image> wmsDetailsLayerMap; private LinkedHashMap<String, Image> wmsDetailsLayerMap;
private Integer[] wmsDetailsLayerZIndex = new Integer[100];
private LinkedHashMap<String, Image> wmsLayerMap; private LinkedHashMap<String, Image> wmsLayerMap;
private Layer baseLayerTile; private Layer baseLayerTile;
@ -155,9 +153,6 @@ public abstract class OpenLayerMap {
public OpenLayerMap(String divTargetId, HandlerManager eventBus, BaseMapLayer baseLayer) { public OpenLayerMap(String divTargetId, HandlerManager eventBus, BaseMapLayer baseLayer) {
this.eventBus = eventBus; this.eventBus = eventBus;
for (int i = 0; i < 100; i++) {
wmsDetailsLayerZIndex[i] = 1000 + i;
}
// create a projection // create a projection
projectionOptions.setCode(MAP_PROJECTION.EPSG_3857.getName()); projectionOptions.setCode(MAP_PROJECTION.EPSG_3857.getName());

View File

@ -16,10 +16,6 @@
<g:HTMLPanel ui:field="mainContainerPanel"> <g:HTMLPanel ui:field="mainContainerPanel">
<g:HTMLPanel ui:field="mainToolBar" <g:HTMLPanel ui:field="mainToolBar"
addStyleNames="inner-toolbar"> addStyleNames="inner-toolbar">
<b:DropdownButton type="LINK" text="Map">
<g:HTMLPanel ui:field="panelBaseLayers">
</g:HTMLPanel>
</b:DropdownButton>
<b:DropdownButton type="LINK" text=" " icon="INFO"> <b:DropdownButton type="LINK" text=" " icon="INFO">
<g:HTMLPanel ui:field="panelInfo" <g:HTMLPanel ui:field="panelInfo"
addStyleNames="info-interaction"> addStyleNames="info-interaction">
@ -39,6 +35,10 @@
</g:HTMLPanel> </g:HTMLPanel>
</g:HTMLPanel> </g:HTMLPanel>
</b:DropdownButton> </b:DropdownButton>
<b:DropdownButton type="LINK" text="Map">
<g:HTMLPanel ui:field="panelBaseLayers">
</g:HTMLPanel>
</b:DropdownButton>
<b:DropdownButton type="LINK" <b:DropdownButton type="LINK"
text="Preset Location" icon="TH_LARGE"> text="Preset Location" icon="TH_LARGE">
<b:Nav> <b:Nav>

View File

@ -342,7 +342,7 @@ body {
.layers-panel { .layers-panel {
margin-top: 10px; margin-top: 10px;
background-color: white; background-color: white;
opacity: 80%; opacity: 90%;
padding: 10px; padding: 10px;
width: 410px; width: 410px;
} }