Hi Jukka,

Sorry, for the misleading instruction, I dont't know why I thought you was working on a WMSLayer.

Peppe's answer was just right. Maybe you just needed to import the following classes. Try this :

import org.openjump.core.ccordsys.utils.ProjUtils;
import org.openjump.core.ccordsys.utils.SRSInfo;

lyr = wc.getLayerNamePanel().getSelectedLayers()[0];
SRSInfo info = ProjUtils.getSRSInfoFromLayerStyleOrSource(lyr);
print(info.getRegistry());
print(info.getCode());

Michaël


Le 29/06/2017 à 11:40, Rahkonen Jukka (MML) a écrit :

Hi Michaël,

Some little issue:

-lyr = wc.layerNamePanel.selectedLayerables.get(0); seems to work and “lyr” contains now the name of the selected layer “New”

-lyr.getSRS() throws an error:

Sourced file: lib\ext\BeanTools\Cut_MBtiles.bsh : Error in method invocation: Method getSRS() not found in class'com.vividsolutions.jump.workbench.model.Layer'

-Jukka Rahkonen-

*Lähettäjä:*Michaël Michaud [mailto:m.michael.mich...@orange.fr]
*Lähetetty:* 28. kesäkuuta 2017 14:45
*Vastaanottaja:* jump-pilot-devel@lists.sourceforge.net
*Aihe:* Re: [JPP-Devel] How to get layer SRS with a BeanShell script?

Hi Jukka,

I think you can't use wc.getLayerNamePanel().getSelectedLayers()[0]
because it is an old method returning only vector layers

Instead, you can use wc.getLayerNamePanel().getSelectedLayerables().get(0)
If you keep a reference to the layer :
*lyr = wc.layerNamePanel.selectedLayerables.get(0)*

then you can get the SRS from the layer this way :
*lyr.getSRS()*

Hope that helps,

Michaël

Le 27/06/2017 à 15:56, Rahkonen Jukka (MML) a écrit :

    Hi,

    If layers can know their SRS I wonder how could I read the value
    with BeanShell.

    For example what to do for edding the EPSG code to this snippet
    that writes upper left – lower right coordinates for a GDAL command

    htmlFrame.setTitle("BBOX Output");

    fc =
    wc.getLayerNamePanel().getSelectedLayers()[0].getFeatureCollectionWrapper();

    int j=1;

    for (Iterator i = fc.getFeatures().iterator(); i.hasNext();) {

    Feature feature = (Feature) i.next();

    Geometry geometry = feature.getGeometry();

    Envelope env = geometry.getEnvelopeInternal();

    htmlFrame.addText("gdal_translate "

    +"-of MBTiles "

    +"-projwin "

    +env.getMinX()+" "

    +env.getMaxY()+" "

    +env.getMaxX()+" "

    +env.getMinY()+" "

    +"-projwin_srs epsg:"

    + WHAT?

    -Jukka Rahkonen-




    
------------------------------------------------------------------------------

    Check out the vibrant tech community on one of the world's most

    engaging tech sites, Slashdot.org!http://sdm.link/slashdot




    _______________________________________________

    Jump-pilot-devel mailing list

    Jump-pilot-devel@lists.sourceforge.net
    <mailto:Jump-pilot-devel@lists.sourceforge.net>

    https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot


_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to