Revision: 6186
          http://sourceforge.net/p/jump-pilot/code/6186
Author:   michaudm
Date:     2019-05-25 07:23:42 +0000 (Sat, 25 May 2019)
Log Message:
-----------
GraphToolBox : fix skeletonizer plugin v 0.6.2

Modified Paths:
--------------
    plug-ins/GraphToolboxPlugin/trunk/build.xml
    plug-ins/GraphToolboxPlugin/trunk/doc/GraphToolboxExtension4OJ.odt
    plug-ins/GraphToolboxPlugin/trunk/doc/GraphToolboxExtension4OJ_fr.odt
    
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/GraphExtension.java
    
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/SkeletonPlugIn.java

Modified: plug-ins/GraphToolboxPlugin/trunk/build.xml
===================================================================
--- plug-ins/GraphToolboxPlugin/trunk/build.xml 2019-04-23 11:46:09 UTC (rev 
6185)
+++ plug-ins/GraphToolboxPlugin/trunk/build.xml 2019-05-25 07:23:42 UTC (rev 
6186)
@@ -17,7 +17,7 @@
     <property name="dist"    value="dist" />
     <property name="javadoc" value="javadoc" />
 
-    <property name="version" value="0.6.1" />
+    <property name="version" value="0.6.2" />
     
     <!-- =================================================================== 
-->
     <!-- Defines the classpath used for compilation and test.                
-->

Modified: plug-ins/GraphToolboxPlugin/trunk/doc/GraphToolboxExtension4OJ.odt
===================================================================
(Binary files differ)

Modified: plug-ins/GraphToolboxPlugin/trunk/doc/GraphToolboxExtension4OJ_fr.odt
===================================================================
(Binary files differ)

Modified: 
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/GraphExtension.java
===================================================================
--- 
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/GraphExtension.java
     2019-04-23 11:46:09 UTC (rev 6185)
+++ 
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/GraphExtension.java
     2019-05-25 07:23:42 UTC (rev 6186)
@@ -35,8 +35,9 @@
  * <li>CycleFinderPlugIn : computes a graph from a linear network and find 
base cycles</li>
  * </ul>
  * @author Micha&euml;l Michaud
- * @version 0.6.1 (2018-06-17)
+ * @version 0.6.2 (2019-05-22)
  */
+//version 0.6.2 (2019-05-22) fix bug in SkeletonPlugIn : incorrect 
relativeMinForkLength
 //version 0.6.1 (2018-06-17) refactor to use AbstractPlugIn parameters in 
GraphNodesPlugIn
 //version 0.6.0 (2018-06-12) refactor to use AbstractPlugIn parameters in 
SkeletonPlugIn
 //version 0.5.9 (2018-06-06) fix a new robustess problem

Modified: 
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/SkeletonPlugIn.java
===================================================================
--- 
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/SkeletonPlugIn.java
     2019-04-23 11:46:09 UTC (rev 6185)
+++ 
plug-ins/GraphToolboxPlugin/trunk/src/fr/michaelm/jump/plugin/graph/SkeletonPlugIn.java
     2019-05-25 07:23:42 UTC (rev 6186)
@@ -47,6 +47,7 @@
     private static String P_MIN_FORK_LENGTH          = "MinForkLength";
     private static String P_RELATIVE_MIN_FORK_LENGTH = "MinForkLengthRelative";
     private static String P_SNAP_TO_BOUNDARY         = "SnapToBoundary";
+    private static String P_MEAN_WIDTH               = "MeanWidth"; // 
Internal intermediate result
 
     private static String GRAPH                   = I18NPlug.getI18N("Graph");
     private static String CENTRAL_SKELETON        = 
I18NPlug.getI18N("SkeletonPlugIn");
@@ -163,6 +164,12 @@
         displayVoronoiEdges = dialog.getBoolean(DISPLAY_VORONOI_EDGES);
     }
 
+    private double getMinForkLength() {
+        return getBooleanParam(P_RELATIVE_MIN_FORK_LENGTH) ?
+                getDoubleParam(P_MIN_FORK_LENGTH) * 
getDoubleParam(P_MEAN_WIDTH)
+                : getDoubleParam(P_MIN_FORK_LENGTH);
+    }
+
     public void run(TaskMonitor monitor, PlugInContext context) {
         monitor.report(SKELETONIZE);
         LayerManager layerManager = context.getLayerManager();
@@ -199,7 +206,7 @@
                     }
                     newFeature.setAttribute("mean_width", meanWidth);
                     newFeature.setAttribute("min_width",  
getDoubleParam(P_MIN_WIDTH));
-                    newFeature.setAttribute("min_fork_length", 
getDoubleParam(P_MIN_FORK_LENGTH));
+                    newFeature.setAttribute("min_fork_length", 
getMinForkLength());
                     g = skeletonize(g, edges);
                     newFeature.setGeometry(g);
                     newFeature.setAttribute("iteration_number", 
((Object[])g.getUserData())[0]);
@@ -255,9 +262,10 @@
             }
             addParameter(P_MIN_WIDTH, semiMinWidth);
         }
-        if (getBooleanParam(P_RELATIVE_MIN_FORK_LENGTH)) {
-            addParameter(P_MIN_FORK_LENGTH, 
getDoubleParam(P_MIN_FORK_LENGTH)*meanWidth);
-        }
+        addParameter(P_MEAN_WIDTH, meanWidth);
+        //if (getBooleanParam(P_RELATIVE_MIN_FORK_LENGTH)) {
+        //    addParameter(P_MIN_FORK_LENGTH, 
getDoubleParam(P_MIN_FORK_LENGTH)*meanWidth);
+        //}
         simplification = getDoubleParam(P_MIN_WIDTH)/5.0;
         densification = getDoubleParam(P_MIN_WIDTH)/2.0;
         return geometry;
@@ -598,7 +606,7 @@
                     if (nodes.nbOfDegreeN()==2) nonTerminalSegmentNumber++;
                     if (nonTerminalSegmentNumber>1 && iterative) break;
                     if (nodes.nbOfDegree1() != 1) continue;
-                    if (e.getGeometry().getLength() > 
getDoubleParam(P_MIN_FORK_LENGTH)) continue;
+                    if (e.getGeometry().getLength() > getMinForkLength()) 
continue;
                     PointPairDistance ppd = new PointPairDistance();
                     DistanceToPoint.computeDistance(boundary, 
nodes.getDegree1().getCoordinate(), ppd);
                     double coeff = ppd.getDistance() / 
e.getGeometry().getLength();



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

Reply via email to