Revision: 5653
          http://sourceforge.net/p/jump-pilot/code/5653
Author:   edso
Date:     2017-12-25 20:13:20 +0000 (Mon, 25 Dec 2017)
Log Message:
-----------
make sure SridStyle is initialized from FeatureSchema crs value first

Modified Paths:
--------------
    
core/trunk/src/org/openjump/core/ccordsys/srid/EnsureAllLayersHaveSRIDStylePlugIn.java

Modified: 
core/trunk/src/org/openjump/core/ccordsys/srid/EnsureAllLayersHaveSRIDStylePlugIn.java
===================================================================
--- 
core/trunk/src/org/openjump/core/ccordsys/srid/EnsureAllLayersHaveSRIDStylePlugIn.java
      2017-12-25 20:11:50 UTC (rev 5652)
+++ 
core/trunk/src/org/openjump/core/ccordsys/srid/EnsureAllLayersHaveSRIDStylePlugIn.java
      2017-12-25 20:13:20 UTC (rev 5653)
@@ -9,6 +9,7 @@
 
 import javax.swing.JInternalFrame;
 
+import com.vividsolutions.jump.coordsys.CoordinateSystem;
 import com.vividsolutions.jump.feature.Feature;
 import com.vividsolutions.jump.util.Block;
 import com.vividsolutions.jump.workbench.model.CategoryEvent;
@@ -66,10 +67,19 @@
             return;
         }
         SRIDStyle sridStyle = new SRIDStyle();
-        if (layer.getFeatureCollectionWrapper().size() > 0) {
-            sridStyle.setSRID(((Feature) layer.getFeatureCollectionWrapper()
-                    .iterator().next()).getGeometry().getSRID());
+        int srid = sridStyle.getSRID();
+        
+        // freshly loaded featcolls only set the featureschema's property
+        CoordinateSystem cs = 
layer.getFeatureCollectionWrapper().getFeatureSchema().getCoordinateSystem();
+        if (!cs.equals(CoordinateSystem.UNSPECIFIED)) {
+          srid = cs.getEPSGCode();
         }
+        // OR fetch it from first geometry
+        else if (layer.getFeatureCollectionWrapper().size() > 0) {
+            srid = ((Feature) layer.getFeatureCollectionWrapper()
+                    .iterator().next()).getGeometry().getSRID();
+        }
+        sridStyle.setSRID(srid);
         layer.addStyle(sridStyle);
     }
     private void initializeCurrentAndFutureInternalFrames(


------------------------------------------------------------------------------
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