|
|
|
@ -8,7 +8,6 @@ import org.gcube.portlets.widgets.openlayerbasicwidgets.client.event.SelectAreaD
|
|
|
|
|
import org.gcube.portlets.widgets.openlayerbasicwidgets.client.event.SelectAreaDialogEventType;
|
|
|
|
|
import org.gcube.portlets.widgets.openlayerbasicwidgets.client.widgets.AreaSelectionDialog;
|
|
|
|
|
|
|
|
|
|
import com.google.gwt.core.client.GWT;
|
|
|
|
|
import com.google.gwt.core.client.JavaScriptObject;
|
|
|
|
|
import com.google.gwt.core.client.JsonUtils;
|
|
|
|
|
import com.google.gwt.json.client.JSONObject;
|
|
|
|
@ -38,9 +37,16 @@ public class GeoJsonAreaSelectionDialog extends AreaSelectionDialog{
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void onResponse(SelectAreaDialogEvent event) {
|
|
|
|
|
GWT.log("SelectAreaDialog Response: "+event);
|
|
|
|
|
print("SelectAreaDialog Response: "+event);
|
|
|
|
|
|
|
|
|
|
if(event==null)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
SelectAreaDialogEventType closedType = event.getSelectAreaDialogEventType();
|
|
|
|
|
|
|
|
|
|
if(closedType==null)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
wktArea = null;
|
|
|
|
|
if(closedType.equals(SelectAreaDialogEventType.Completed)){
|
|
|
|
|
wktArea = event.getArea();
|
|
|
|
@ -72,17 +78,26 @@ public class GeoJsonAreaSelectionDialog extends AreaSelectionDialog{
|
|
|
|
|
* @return the string
|
|
|
|
|
*/
|
|
|
|
|
private static native String convertWKTToGeoJSON(String wktData) /*-{
|
|
|
|
|
var ol = $wnd.ol;
|
|
|
|
|
var geojson_options = {};
|
|
|
|
|
var wkt_format = new ol.format.WKT();
|
|
|
|
|
var testFeature = wkt_format.readFeature(wktData);
|
|
|
|
|
var wkt_options = {};
|
|
|
|
|
var geojson_format = new ol.format.GeoJSON(wkt_options);
|
|
|
|
|
var out = geojson_format.writeFeature(testFeature);
|
|
|
|
|
//window.getELementById("my-id").innerhtml(out);
|
|
|
|
|
//alert(out);
|
|
|
|
|
//console.log(out)
|
|
|
|
|
return out;
|
|
|
|
|
try {
|
|
|
|
|
var ol = $wnd.ol;
|
|
|
|
|
var geojson_options = {};
|
|
|
|
|
var wkt_format = new ol.format.WKT();
|
|
|
|
|
var testFeature = wkt_format.readFeature(wktData);
|
|
|
|
|
var wkt_options = {};
|
|
|
|
|
var geojson_format = new ol.format.GeoJSON(wkt_options);
|
|
|
|
|
var out = geojson_format.writeFeature(testFeature);
|
|
|
|
|
//window.getELementById("my-id").innerhtml(out);
|
|
|
|
|
//alert(out);
|
|
|
|
|
console.log(out)
|
|
|
|
|
return out;
|
|
|
|
|
}catch(err) {
|
|
|
|
|
console.log(err.message);
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}-*/;
|
|
|
|
|
|
|
|
|
|
public static native String print(String data) /*-{
|
|
|
|
|
console.log(out)
|
|
|
|
|
}-*/;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -95,7 +110,11 @@ public class GeoJsonAreaSelectionDialog extends AreaSelectionDialog{
|
|
|
|
|
public String wktToGeoJSON(String wktTxt){
|
|
|
|
|
String geoJSON = convertWKTToGeoJSON(wktTxt);
|
|
|
|
|
//Window.alert("geoJSON: "+geoJSON);
|
|
|
|
|
GWT.log("geoJSON: "+geoJSON);
|
|
|
|
|
print("geoJSON: "+geoJSON);
|
|
|
|
|
|
|
|
|
|
if(geoJSON==null)
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
|
|
JavaScriptObject toJSON = JsonUtils.safeEval(geoJSON);
|
|
|
|
|
JSONObject objJson = new JSONObject(toJSON);
|
|
|
|
|
return objJson.get("geometry").toString();
|
|
|
|
@ -108,6 +127,11 @@ public class GeoJsonAreaSelectionDialog extends AreaSelectionDialog{
|
|
|
|
|
*/
|
|
|
|
|
public String getWKTToGeoJSON(){
|
|
|
|
|
|
|
|
|
|
if(wktArea==null){
|
|
|
|
|
print("wktArea is null");
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return wktToGeoJSON(wktArea);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|