use of ol.event.MeasureEvent in project gwt-ol3 by TDesjardins.
the class Measure method fireMeasureEvent.
/**
* Fires a measure event.
*/
private void fireMeasureEvent() {
// check if measuring is active and properly set up
if (isActive && (sketch != null) && (listener != null)) {
// get geometry in map projection
Geometry geom = sketch.getGeometry();
if (geom != null) {
// transform it to lat/lon and fire event
Geometry geomLatLon = geom.clone().transform(proj, PROJECTION_LATLON);
listener.onMeasure(new MeasureEvent(geomLatLon));
}
}
}
use of ol.event.MeasureEvent in project gwt-ol3 by TDesjardins.
the class MeasureExample method show.
/* (non-Javadoc)
* @see de.desjardins.ol3.demo.client.example.Example#show()
*/
@Override
public void show(String exampleId) {
// 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);
// create a view
View view = OLFactory.createView();
Coordinate centerCoordinate = new Coordinate(-0.1275, 51.507222);
Coordinate transformedCenterCoordinate = Projection.transform(centerCoordinate, "EPSG:4326", "EPSG:3857");
view.setCenter(transformedCenterCoordinate);
view.setZoom(10);
// create the map
MapOptions mapOptions = OLFactory.createOptions();
mapOptions.setTarget(exampleId);
mapOptions.setView(view);
Map map = new Map(mapOptions);
map.addLayer(osmLayer);
// add some controls
map.addControl(new ScaleLine());
DemoUtils.addDefaultControls(map.getControls());
Attribution attribution = new Attribution();
attribution.setCollapsed(true);
map.addControl(attribution);
// add some interactions
map.addInteraction(new KeyboardPan());
map.addInteraction(new KeyboardZoom());
// add measurement functionality to the map
final Measure measure = new Measure(map);
// start measuring immediately
measure.startMeasureLength(new MeasureListener() {
@Override
public void onMeasure(MeasureEvent evt) {
// log the measured length
GWT.log("measure: " + evt.getMeasure());
}
}, true, true);
}
Aggregations