Search in sources :

Example 21 with Coordinate

use of ol.Coordinate in project gwt-ol3 by TDesjardins.

the class WfsExample method show.

/* (non-Javadoc)
     * @see de.desjardins.ol3.demo.client.example.Example#show()
     */
@Override
public void show(String exampleId) {
    // create a vector layer
    Vector vectorSource = new Vector();
    VectorLayerOptions vectorLayerOptions = new VectorLayerOptions();
    vectorLayerOptions.setSource(vectorSource);
    ol.layer.Vector wfsLayer = new ol.layer.Vector(vectorLayerOptions);
    // create a view
    View view = new View();
    Coordinate centerCoordinate = new Coordinate(-8908887.277395891, 5381918.072437216);
    view.setCenter(centerCoordinate);
    view.setZoom(12);
    view.setMaxZoom(19);
    // create the map
    MapOptions mapOptions = OLFactory.createOptions();
    mapOptions.setTarget(exampleId);
    mapOptions.setView(view);
    Map map = new Map(mapOptions);
    map.addLayer(DemoUtils.createOsmLayer());
    map.addLayer(wfsLayer);
    Wfs wfs = new Wfs();
    WfsWriteFeatureOptions wfsWriteFeatureOptions = new WfsWriteFeatureOptions();
    String[] featureTypes = { "water_areas" };
    wfsWriteFeatureOptions.setSrsName("EPSG:3857");
    wfsWriteFeatureOptions.setFeaturePrefix("osm");
    wfsWriteFeatureOptions.setFeatureNS("http://openstreemap.org");
    wfsWriteFeatureOptions.setFeatureTypes(featureTypes);
    // set a filter
    wfsWriteFeatureOptions.setFilter(new IsLike("name", "Mississippi*"));
    wfsWriteFeatureOptions.setOutputFormat("application/json");
    // create WFS-XML node
    Node wfsNode = wfs.writeGetFeature(wfsWriteFeatureOptions);
    RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.POST, "https://ahocevar.com/geoserver/wfs");
    requestBuilder.setRequestData(new XMLSerializer().serializeToString(wfsNode));
    requestBuilder.setCallback(new RequestCallback() {

        @Override
        public void onResponseReceived(com.google.gwt.http.client.Request request, Response response) {
            GeoJson geoJson = new GeoJson();
            Feature[] features = geoJson.readFeatures(response.getText());
            vectorSource.addFeatures(features);
            map.getView().fit(vectorSource.getExtent());
        }

        @Override
        public void onError(com.google.gwt.http.client.Request request, Throwable exception) {
            Window.alert(exception.getMessage());
        }
    });
    try {
        requestBuilder.send();
    } catch (RequestException e) {
        Window.alert(e.getMessage());
    }
}
Also used : RequestBuilder(com.google.gwt.http.client.RequestBuilder) MapOptions(ol.MapOptions) Node(elemental2.dom.Node) GeoJson(ol.format.GeoJson) IsLike(ol.format.filter.IsLike) RequestException(com.google.gwt.http.client.RequestException) Vector(ol.source.Vector) XMLSerializer(com.github.desjardins.elemental.XMLSerializer) Wfs(ol.format.Wfs) View(ol.View) VectorLayerOptions(ol.layer.VectorLayerOptions) Response(com.google.gwt.http.client.Response) WfsWriteFeatureOptions(ol.format.WfsWriteFeatureOptions) RequestCallback(com.google.gwt.http.client.RequestCallback) Coordinate(ol.Coordinate) Map(ol.Map)

Example 22 with Coordinate

use of ol.Coordinate in project gwt-ol3 by TDesjardins.

the class WmtsExample method createWmtsTileGrid.

/**
 * Creates a WMTS tilegrid.
 *
 * @param projection projection of the grid
 * @return WMTS tilegrid
 */
private TileGrid createWmtsTileGrid(Projection projection) {
    WmtsTileGridOptions wmtsTileGridOptions = OLFactory.createOptions();
    double[] resolutions = new double[14];
    String[] matrixIds = new String[14];
    double width = projection.getExtent().getWidth();
    double matrixWidth = width / 256;
    for (int i = 0; i < 14; i++) {
        resolutions[i] = matrixWidth / Math.pow(2, i);
        matrixIds[i] = String.valueOf(i);
    }
    Coordinate tileGridOrigin = projection.getExtent().getTopLeft();
    wmtsTileGridOptions.setOrigin(tileGridOrigin);
    wmtsTileGridOptions.setResolutions(resolutions);
    wmtsTileGridOptions.setMatrixIds(matrixIds);
    return new WmtsTileGrid(wmtsTileGridOptions);
}
Also used : Coordinate(ol.Coordinate) WmtsTileGridOptions(ol.tilegrid.WmtsTileGridOptions) WmtsTileGrid(ol.tilegrid.WmtsTileGrid)

Example 23 with Coordinate

use of ol.Coordinate in project gwt-ol3 by TDesjardins.

the class WmtsExample method show.

/* (non-Javadoc)
     * @see de.desjardins.ol3.demo.client.example.Example#show()
     */
@Override
public void show(String exampleId) {
    // create a projection
    Projection projection = Projection.get(DemoConstants.EPSG_3857);
    // create a OSM-layer
    XyzOptions osmSourceOptions = OLFactory.createOptions();
    Osm osmSource = new Osm(osmSourceOptions);
    LayerOptions osmLayerOptions = OLFactory.createOptions();
    osmLayerOptions.setSource(osmSource);
    Tile osmLayer = new Tile(osmLayerOptions);
    WmtsOptions wmtsOptions = OLFactory.createOptions();
    wmtsOptions.setUrl("https://services.arcgisonline.com/arcgis/rest/services/Demographics/USA_Population_Density/MapServer/WMTS/");
    wmtsOptions.setLayer("0");
    wmtsOptions.setFormat("image/png");
    wmtsOptions.setMatrixSet(DemoConstants.EPSG_3857);
    wmtsOptions.setStyle("default");
    wmtsOptions.setProjection(projection);
    wmtsOptions.setWrapX(true);
    wmtsOptions.setTileGrid(this.createWmtsTileGrid(projection));
    // create attribution
    wmtsOptions.setAttributions("Tiles &copy; <a href=\"http://services.arcgisonline.com/arcgis/rest/services/Demographics/USA_Population_Density/MapServer/\">ArcGIS</a>");
    Wmts wmtsSource = new Wmts(wmtsOptions);
    LayerOptions wmtsLayerOptions = OLFactory.createOptions();
    wmtsLayerOptions.setSource(wmtsSource);
    Tile wmtsLayer = new Tile(wmtsLayerOptions);
    wmtsLayer.setOpacity(0.7);
    // create a view
    ViewOptions viewOptions = OLFactory.createOptions();
    viewOptions.setProjection(projection);
    View view = new View(viewOptions);
    Coordinate centerCoordinate = new Coordinate(-11158582, 4813697);
    view.setCenter(centerCoordinate);
    view.setZoom(4);
    // create the map
    MapOptions mapOptions = OLFactory.createOptions();
    mapOptions.setTarget(exampleId);
    mapOptions.setView(view);
    Map map = new Map(mapOptions);
    // add layers
    map.addLayer(osmLayer);
    map.addLayer(wmtsLayer);
    // add some controls
    map.addControl(new ScaleLine());
    DemoUtils.addDefaultControls(map.getControls());
    // add some interactions
    map.addInteraction(new KeyboardPan());
    map.addInteraction(new KeyboardZoom());
    map.addControl(new Rotate());
}
Also used : XyzOptions(ol.source.XyzOptions) ScaleLine(ol.control.ScaleLine) KeyboardPan(ol.interaction.KeyboardPan) Rotate(ol.control.Rotate) MapOptions(ol.MapOptions) ViewOptions(ol.ViewOptions) Osm(ol.source.Osm) Projection(ol.proj.Projection) Tile(ol.layer.Tile) LayerOptions(ol.layer.LayerOptions) View(ol.View) WmtsOptions(ol.source.WmtsOptions) Coordinate(ol.Coordinate) KeyboardZoom(ol.interaction.KeyboardZoom) Wmts(ol.source.Wmts) Map(ol.Map)

Example 24 with Coordinate

use of ol.Coordinate in project gwt-ol3 by TDesjardins.

the class DemoUtils method createTestPolygon.

/**
 * Creates a test polygon geometry (triangle).
 *
 * @return test polygon geometry (EPSG:3857)
 */
public static Polygon createTestPolygon() {
    Coordinate[][] coordinates = new Coordinate[1][4];
    Coordinate point1 = new Coordinate(13.36, 52.53);
    Coordinate point2 = new Coordinate(13.36, 52.51);
    Coordinate point3 = new Coordinate(13.37, 52.52);
    Coordinate point4 = new Coordinate(13.36, 52.53);
    coordinates[0][0] = point1;
    coordinates[0][1] = point2;
    coordinates[0][2] = point3;
    coordinates[0][3] = point4;
    Coordinate[][] tranformedCoordinates = new Coordinate[coordinates.length][];
    tranformedCoordinates[0] = OLUtil.transform(coordinates[0], "EPSG:4326", "EPSG:3857");
    return OLFactory.createPolygon(tranformedCoordinates);
}
Also used : Coordinate(ol.Coordinate)

Example 25 with Coordinate

use of ol.Coordinate in project gwt-ol3 by TDesjardins.

the class ArcGISExample method show.

/* (non-Javadoc)
     * @see de.desjardins.ol3.demo.client.example.Example#show() */
@Override
public void show(String exampleId) {
    ImageArcGisRestParams params = new ImageArcGisRestParams();
    params.showLayers("2");
    ImageArcGisRestOptions options = new ImageArcGisRestOptions();
    options.setUrl("https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StateCityHighway_USA/MapServer");
    options.setParams(params);
    options.setRatio(1f);
    ImageArcGisRest source = new ImageArcGisRest(options);
    LayerOptions layerOptions = OLFactory.createOptions();
    layerOptions.setSource(source);
    Image layer = new Image(layerOptions);
    // create a view
    View view = new View();
    Coordinate center = OLFactory.createCoordinate(-10997148, 4569099);
    view.setCenter(center);
    view.setZoom(4);
    // create the map
    MapOptions mapOptions = OLFactory.createOptions();
    mapOptions.setTarget(exampleId);
    mapOptions.setView(view);
    Map map = new Map(mapOptions);
    map.addLayer(layer);
    // add some controls
    map.addControl(new ScaleLine());
    DemoUtils.addDefaultControls(map.getControls());
    // add some interactions
    map.addInteraction(new KeyboardPan());
    map.addInteraction(new KeyboardZoom());
    map.addControl(new Rotate());
}
Also used : ImageArcGisRest(ol.source.ImageArcGisRest) ScaleLine(ol.control.ScaleLine) KeyboardPan(ol.interaction.KeyboardPan) Rotate(ol.control.Rotate) MapOptions(ol.MapOptions) Image(ol.layer.Image) LayerOptions(ol.layer.LayerOptions) View(ol.View) Coordinate(ol.Coordinate) KeyboardZoom(ol.interaction.KeyboardZoom) ImageArcGisRestParams(ol.source.ImageArcGisRestParams) Map(ol.Map) ImageArcGisRestOptions(ol.source.ImageArcGisRestOptions)

Aggregations

Coordinate (ol.Coordinate)32 Map (ol.Map)24 MapOptions (ol.MapOptions)24 View (ol.View)24 LayerOptions (ol.layer.LayerOptions)21 Tile (ol.layer.Tile)18 XyzOptions (ol.source.XyzOptions)15 ScaleLine (ol.control.ScaleLine)14 KeyboardPan (ol.interaction.KeyboardPan)13 KeyboardZoom (ol.interaction.KeyboardZoom)13 Osm (ol.source.Osm)13 Rotate (ol.control.Rotate)9 Collection (ol.Collection)8 Base (ol.layer.Base)8 MousePosition (ol.control.MousePosition)7 Feature (ol.Feature)6 FeatureOptions (ol.FeatureOptions)6 Attribution (ol.control.Attribution)6 VectorLayerOptions (ol.layer.VectorLayerOptions)6 Projection (ol.proj.Projection)6