[JPP-Devel] Buffer, Buffer
Hi, the function Tools>Generate>Buffer... creates a buffer with End Cap Style but without attributes from the source layer. The function Tools>Analysis>geometrc functions...>Buffer creates a buffer with attributes but without End Cap Style. Is it possible to have a buffer-function with attributes *and* End Cap Style? Regards, Uwe - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Buffer, Buffer
Hi Uwe, I'm working on it now. regards, Larry Becker On 8/31/07, Uwe Dalluege <[EMAIL PROTECTED]> wrote: > Hi, > > the function Tools>Generate>Buffer... > creates a buffer with End Cap Style but > without attributes from the source layer. > > The function Tools>Analysis>geometrc functions...>Buffer > creates a buffer with attributes but without End Cap Style. > > Is it possible to have a buffer-function > with attributes *and* End Cap Style? > > Regards, > > Uwe > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > -- http://amusingprogrammer.blogspot.com/ - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
[JPP-Devel] WFS plugin is missing from the plugin lis
Hi, I noticed that WFS plugin is missing from the plugin page at openjump.org. However, I think it is worth mentioning there, perhaps with a short description. The following is too long for that page but perhaps it could be used for advertising in some other place. "OpenJUMP WFSPlugin is WFS v. 1.0.0 and 1.1.0 client. It supports filtering features from the remote WFS server by attributes and spatial operations based on a geometry that is selected in JUMP map window. Logical operators =, <, >, <=, >=, <>, LIKE and NOT LIKE are supported for attribute filtering. Supported spatial operators are Intersects, Within, Dwithin, Contains, Touches, Crosses, Overlaps, Equals and Disjoint. In addition, extents of the JUMP map window can be captured and used as bounding box in WFS request. WFS server response for getCapabilities and describeFeatureType requests can be directed into text window and stored on disk if desired. In a similar way the http POST getFeature request that WFSPlugin creates can be checked and manually edited in a text window before it is sent to the WFS server. If these debugging options are not adequate the WFS plugin can also be used as a standalone Java application. In this mode the GML returned by WFS server is not parsed but it is just captured and showed in text window or stored on disk. Plugin was developed and tested against GeoServer 1.5.0 (supporting only WFS 1.0.0) and it works pretty well with all demonstration feature types shipped with GeoServer installation package. Known issues: - The parser still fails with some feature types especially if they have attributes of type DOUBLE or DATE/TIME. - Plugin was tested briefly with MapServer 4.8 WFS server. Basically the plugin worked with MapServer, but there were some problems for example in building the list of available attributes." Regards, -Jukka Rahkonen- - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] DataObject Library
Hi, Salut Stefan (J'espère que la fin de thèse se passe bien), The new GDBMS named GDMS is here : http://geosysin.iict.ch/irstv-trac/wiki/GDBMS/Project. R1. 2007/8/31, Stefan Steiniger <[EMAIL PROTECTED]>: > > without reading your email - just a hint: > Did you had a look on GDBMS (see sourceforge) by the gvSIG people? ... > it should be similar to OGR... > > if this is what you are talking about > > stefan > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > -- Ingénieur de recherche Docteur en géographie, spécialité géomatique École Centrale de Nantes Institut de recherche en sciences et techniques de la ville http://www.irstv.cnrs.fr/ http://geosysin.iict.ch/irstv-trac/wiki http://r1.bocher.free.fr http://www.projet-sigle.org - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
[JPP-Devel] A Problem With The SelectTool Class
I've been trying to find a quick way to create Polygons from selected LineStrings in one of my OpenJUMP GIS projects. I've been using the suggestion to set up a temporary Layer were I paste a copy of the LineStrings I've selected, then I use the polygonize tool to actually create the Polygons. I thought I would take a "quick" look at OpenJUMP's selection code to see if I could determine how to implement a CursorTool similar to the select tool that allows a little more control over selection. This includes the ability to have "sticky" selections, the ability to remove selected items from a sticky selection, and the ability to automatically copy selected items to a new or designated layer with a single click. I think I've got a good handle on how the selection code works, excpet for one problem that I can't figure out in the SelectTool class. The class defines and uses an instance of the AbstractSelection class named "selection". It is declared as a protexted variable in the class, but I can't for the life of me figure out where the variable is initialized. It isn't in the constructor of the SelectTool class, it isn't in the variable declaration, and I couldn't find an initialization reading through the file, searching for instances of the "new" keyword in the file, or using the "references" tool in Eclipse. Is there some black magic going on in the code that I don't know about. If the "selection" variable isn't initialized how come the calls to its methods in the class don't throw a null pointer exception? I know I am missing something, but I'm not sure what I am missing. I appreciate any help. The .java file for the SelectTool class is attached. The Sunburned Surveyor /* * The Unified Mapping Platform (JUMP) is an extensible, interactive GUI * for visualizing and manipulating spatial features with geometry and attributes. * * Copyright (C) 2003 Vivid Solutions * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * * For more information, contact: * * Vivid Solutions * Suite #1A * 2328 Government Street * Victoria BC V8T 5G5 * Canada * * (250)385-6040 * www.vividsolutions.com */ package com.vividsolutions.jump.workbench.ui.cursortool; import java.awt.Cursor; import java.awt.event.MouseEvent; import java.awt.geom.NoninvertibleTransformException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Iterator; import java.util.Map; import javax.swing.Icon; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jump.feature.Feature; import com.vividsolutions.jump.geom.EnvelopeUtil; import com.vividsolutions.jump.util.CollectionMap; import com.vividsolutions.jump.workbench.model.FenceLayerFinder; import com.vividsolutions.jump.workbench.model.Layer; import com.vividsolutions.jump.workbench.ui.AbstractSelection; import com.vividsolutions.jump.workbench.ui.LayerViewPanel; public abstract class SelectTool extends DragTool { public Cursor getCursor() { return Cursor.getDefaultCursor(); } public void mouseClicked(MouseEvent e) { try { super.mouseClicked(e); setViewSource(e.getPoint()); setViewDestination(e.getPoint()); fireGestureFinished(); } catch (Throwable t) { getPanel().getContext().handleThrowable(t); } } protected void gestureFinished() throws NoninvertibleTransformException { reportNothingToUndoYet(); if (!wasShiftPressed()) { getPanel().getSelectionManager().clear(); } Map layerToFeaturesInFenceMap = getPanel().visibleLayerToFeaturesInFenceMap( EnvelopeUtil.toGeometry(getBoxInModelCoordinates())); Collection layers = layerToFeaturesInFenceMap.keySet(); if (selectedLayersOnly()) { layers.retainAll(Arrays.asList(getTaskFrame().getLayerNamePanel().getSelectedLayers())); } for (Iterator i = layers.iterator(); i.hasNext();) { Layer layer = (Layer) i.next(); if (layer.getName().equals(FenceLayerFinder.LAYER_NAME)) { continue; } //Disable panel updates -- we'll manually repaint the selection and //fire the selection-changed event. [Jon Aquino]
[JPP-Devel] OpenJUMP tiff support
Hi, I have played with quite a nice software that I had tried never before, OSSIM (www.ossim.org). As a by-product here is a table about what kind of TIFF files OpenJUMP can open at present. result with result with Ossim tiff writer driverJUMP native PIROL raster OSSIM tiff_stripOK OK OSSIM tiff_strip_band_separate failfail OSSIM tiff_tiledfail* fail* OSSIM tiff_tiled_band_separate failfail Gdal, pixel intl. OK OK Gdal, pixel intl. +backbits OK OK Gdal, pixel intl. +jpeg failfail Gdal, pixel intl. +tiledfail** fail** Gdal, band interleaved failfail * Image shows, but from the right side every other tile is black ** Image shows, but bottom-right tile is black In conclusion, only pixel interleaved tiff files seem to be usable with OpenJUMP. They may be backbits compressed. Tiled images are almost usable, but there is something strange with those because part of the rightmost tiles do not show with either JUMP native or PIROL raster plugin. Maybe it is caused by JAI? Regards, -Jukka Rahkonen- - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] New DB plugin for OpenJump
Thanks for the announcement Larry. We hope that you enjoy working with OpenJUMP. The Sunburned Surveyor On 8/19/07, Larry Reeder <[EMAIL PROTECTED]> wrote: > Hey all, > > Mentaer (Stefan) suggested I send a message to the JPP list to let > everyone know about a new OpenJump database plugin. I know there are > several other DB plugins out there, but they all seem to be > table-based. I needed something that would let me put in arbitrary > spatial queries and display the results in Jump, so I wrote this > plugin. > > Features: > > * You can call stored procedures, query views, do inline calculations, > use DUAL in oracle, > etc., and view the results in OpenJUMP > * Oracle Spatial support via GeoTools > * MySQL support via GeoTools > * Ability to save DB connection parameters for multiple DBs so you > don't have to keep > retyping connection info every time you start jump or switch to a > different database. > > > Limitations: > > * Read-only > * Handling of null geometries is kind of kludgy > * No postgres support, but that's on my todo list > * MySQL queries require "AsText" workaround to handle polygons > * Large result sets might cause out-of-memory errors in OpenJUMP. A > resultset limit (similar to what the Squirrel JDBC client does) is > also on my todo list. > > If you're interested, check out the plugin's main page at > http://jumpdbqplugin.sourceforge.net. Let me know if you have > problems or suggestions. > > Tested on Linux, using Oracle Spatial 10.x, and MySQL 4.1.11. > >-Larry > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] OpenJUMP / Pirol's Plugin compatibility
Thanks for taking care of this Mihael. SS On 8/21/07, Michaël Michaud <[EMAIL PROTECTED]> wrote: > Done ! > > Michaël > > Sunburned Surveyor a écrit : > > >Why don't we add the method back with the deprecated tag. We can put a > >comment in the source code file stating that the method can be removed > >when the Pirol team makes the needed changes. > > > >The Sunburned Surveyor > > > >On 8/20/07, Michaël Michaud <[EMAIL PROTECTED]> wrote: > > > > > >>Hi Sunburned, > >> > >>I have been in touch with Michael who has no much time to work on > >>Pirol's plugin as he leaved the project. But he told me that he will try > >>to make the change and that another guy will come on september. > >>We can wait a little to see if Pirol's plugin is updated, or I can add > >>the method back in LayerManager (nobody should use it but I can add it > >>with a deprecated tag). > >> > >>Michael > >> > >>Sunburned Surveyor a écrit : > >> > >> > >> > >>>Will the Pirol team allow us to make the changes to their code if they > >>>are too busy? > >>> > >>>The Sunburned Surveyor > >>> > >>>On 8/18/07, Michaël Michaud <[EMAIL PROTECTED]> wrote: > >>> > >>> > >>> > >>> > Hei Michael (Brunig), > > A few month ago, I changed a method signature in OpenJUMP LayerManager's > class to solve a problem with "cloned windows", but it has broken one > (or more) pirol's plugin : > > The change : > com.vividsolutions.jump.workbench.model.LayerManager.dispose(Layerable > layerable) > --> > com.vividsolutions.jump.workbench.model.LayerManager.dispose(WorkbenchFrame > frame, Layerable layerable) > > The reason : > when one removes a layer from a task, I want this layer to be removed > > > from all the cloned windows in this task, > >>> > >>> > so I needed a reference to the frame. > > The break : > in > de.fhOsnabrueck.jump.pirol.plugIns.PirolRasterImage.RemoveSelectedRasterImageLayersPlugIn.remove(Layerable[] > selectedLayers) > the code use the old method in the following line > selectedLayers[i].getLayerManager().dispose(selectedLayers[i]); > > It's quite straight to change it to use the new method (you have also to > pass the PlugInContext to the method to have a reference to > WorkbenchFrame) > > If you cannot do it, or don't want for any reason, I'll add the old > method back to LayerManager, with a strong advice against its use. > > Sincerly, > > Michael (the french one) > > > > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > > > >>>- > >>>This SF.net email is sponsored by: Splunk Inc. > >>>Still grepping through log files to find problems? Stop. > >>>Now Search log events and configuration files using AJAX and a browser. > >>>Download your FREE copy of Splunk now >> http://get.splunk.com/ > >>>___ > >>>Jump-pilot-devel mailing list > >>>Jump-pilot-devel@lists.sourceforge.net > >>>https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>> > >>> > >>> > >>> > >>> > >>> > >>- > >>This SF.net email is sponsored by: Splunk Inc. > >>Still grepping through log files to find problems? Stop. > >>Now Search log events and configuration files using AJAX and a browser. > >>Download your FREE copy of Splunk now >> http://get.splunk.com/ > >>___ > >>Jump-pilot-devel mailing list > >>Jump-pilot-devel@lists.sourceforge.net > >>https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >> > >> > >> > > > >- > >This SF.net email is sponsored by: Splunk Inc. > >Still grepping through log files to find problems? Stop. > >Now Search log events and configuration files using AJAX and a browser. > >Download your FREE copy of Splunk now >> http://get.splunk.com/ > >___ > >Jump-pilot-devel mailing list > >Jump-pilot-devel@lists.sourceforge.net > >https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > > > > > > > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop.
Re: [JPP-Devel] A Problem With The SelectTool Class
Hi SS, No magic here. SelectTool is itself an abstract class, so selection is initialized in the classes that extend SelectTool like SelectFeaturesTool, SelectLineStringsTool, SelectPartsTool, and SelectOneItemTool. regards, Larry On 8/31/07, Sunburned Surveyor <[EMAIL PROTECTED]> wrote: > I've been trying to find a quick way to create Polygons from selected > LineStrings in one of my OpenJUMP GIS projects. I've been using the > suggestion to set up a temporary Layer were I paste a copy of the > LineStrings I've selected, then I use the polygonize tool to actually > create the Polygons. > > I thought I would take a "quick" look at OpenJUMP's selection code to > see if I could determine how to implement a CursorTool similar to the > select tool that allows a little more control over selection. This > includes the ability to have "sticky" selections, the ability to > remove selected items from a sticky selection, and the ability to > automatically copy selected items to a new or designated layer with a > single click. > > I think I've got a good handle on how the selection code works, excpet > for one problem that I can't figure out in the SelectTool class. The > class defines and uses an instance of the AbstractSelection class > named "selection". It is declared as a protexted variable in the > class, but I can't for the life of me figure out where the variable is > initialized. It isn't in the constructor of the SelectTool class, it > isn't in the variable declaration, and I couldn't find an > initialization reading through the file, searching for instances of > the "new" keyword in the file, or using the "references" tool in > Eclipse. > > Is there some black magic going on in the code that I don't know > about. If the "selection" variable isn't initialized how come the > calls to its methods in the class don't throw a null pointer > exception? I know I am missing something, but I'm not sure what I am > missing. > > I appreciate any help. > > The .java file for the SelectTool class is attached. > > The Sunburned Surveyor > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > -- http://amusingprogrammer.blogspot.com/ - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] A Problem With The SelectTool Class
Thank you Larry. I missed the fact that the SelectTool was abstract. Thank you for pointing that out. SS On 8/31/07, Larry Becker <[EMAIL PROTECTED]> wrote: > Hi SS, > > No magic here. SelectTool is itself an abstract class, so selection > is initialized in the classes that extend SelectTool like > SelectFeaturesTool, SelectLineStringsTool, SelectPartsTool, and > SelectOneItemTool. > > regards, > Larry > > On 8/31/07, Sunburned Surveyor <[EMAIL PROTECTED]> wrote: > > I've been trying to find a quick way to create Polygons from selected > > LineStrings in one of my OpenJUMP GIS projects. I've been using the > > suggestion to set up a temporary Layer were I paste a copy of the > > LineStrings I've selected, then I use the polygonize tool to actually > > create the Polygons. > > > > I thought I would take a "quick" look at OpenJUMP's selection code to > > see if I could determine how to implement a CursorTool similar to the > > select tool that allows a little more control over selection. This > > includes the ability to have "sticky" selections, the ability to > > remove selected items from a sticky selection, and the ability to > > automatically copy selected items to a new or designated layer with a > > single click. > > > > I think I've got a good handle on how the selection code works, excpet > > for one problem that I can't figure out in the SelectTool class. The > > class defines and uses an instance of the AbstractSelection class > > named "selection". It is declared as a protexted variable in the > > class, but I can't for the life of me figure out where the variable is > > initialized. It isn't in the constructor of the SelectTool class, it > > isn't in the variable declaration, and I couldn't find an > > initialization reading through the file, searching for instances of > > the "new" keyword in the file, or using the "references" tool in > > Eclipse. > > > > Is there some black magic going on in the code that I don't know > > about. If the "selection" variable isn't initialized how come the > > calls to its methods in the class don't throw a null pointer > > exception? I know I am missing something, but I'm not sure what I am > > missing. > > > > I appreciate any help. > > > > The .java file for the SelectTool class is attached. > > > > The Sunburned Surveyor > > > > - > > This SF.net email is sponsored by: Splunk Inc. > > Still grepping through log files to find problems? Stop. > > Now Search log events and configuration files using AJAX and a browser. > > Download your FREE copy of Splunk now >> http://get.splunk.com/ > > ___ > > Jump-pilot-devel mailing list > > Jump-pilot-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > > > > > > -- > http://amusingprogrammer.blogspot.com/ > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
Cool... I think that one way around the "slow union" problem is to develop a "Cascading Union" function. This will build up a union of multiple geometries by forming them into a tree, and recursively unioning the branches of the tree from the leaves to the root.In theory this should provide a fairly optimal balance between performance and memory use. A nice way to form the tree would be to add the input geometries to a JTS Quadtree or STRtree and then traverse the tree in depth-first order. Unfortunately currently the implementations don't support the ability to traverse the tree in any order - this wouldn't be too hard to add, though. Thoughts? Anyone keen on trying this out? Martin Larry Becker wrote: > I have committed the improved buffer plugin. Three sample screens are > attached in english, french, and german.It now supports buffering > the selection. It provides a convenience union option. The sidebar > picture now previews the current options. It copies attributes by > default, even from selections on multiple layers, but this can be > turned off. It supports setting the number of segments in a quarter > circle. > > Be careful with the union operation. With large selections, it can > take a long time. For instance using Uwe's GeoCity project, I tried > to buffer everything by 1000 meters. Without union it completed in > about 20 seconds, and with union I finally killed it after 5 minutes. > > regards, > Larry Becker > > > > > > > > > > > > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > > > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > -- Martin Davis Senior Technical Architect Refractions Research, Inc. (250) 383-3022 - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
Hi Martin, The union operation is implemented by buffering the union of the input, rather than the union of the input buffered, if you see the distinction. I was hoping JTS had already optimized this, but from what you are saying, I would guess not. Larry On 8/31/07, Martin Davis <[EMAIL PROTECTED]> wrote: > Cool... > > I think that one way around the "slow union" problem is to develop a > "Cascading Union" function. This will build up a union of multiple > geometries by forming them into a tree, and recursively unioning the > branches of the tree from the leaves to the root.In theory this > should provide a fairly optimal balance between performance and memory use. > > A nice way to form the tree would be to add the input geometries to a > JTS Quadtree or STRtree and then traverse the tree in depth-first > order. Unfortunately currently the implementations don't support the > ability to traverse the tree in any order - this wouldn't be too hard to > add, though. > > Thoughts? Anyone keen on trying this out? > > Martin > > > > Larry Becker wrote: > > I have committed the improved buffer plugin. Three sample screens are > > attached in english, french, and german.It now supports buffering > > the selection. It provides a convenience union option. The sidebar > > picture now previews the current options. It copies attributes by > > default, even from selections on multiple layers, but this can be > > turned off. It supports setting the number of segments in a quarter > > circle. > > > > Be careful with the union operation. With large selections, it can > > take a long time. For instance using Uwe's GeoCity project, I tried > > to buffer everything by 1000 meters. Without union it completed in > > about 20 seconds, and with union I finally killed it after 5 minutes. > > > > regards, > > Larry Becker > > > > > > > > > > > > > > > > > > > > > > > > > > - > > This SF.net email is sponsored by: Splunk Inc. > > Still grepping through log files to find problems? Stop. > > Now Search log events and configuration files using AJAX and a browser. > > Download your FREE copy of Splunk now >> http://get.splunk.com/ > > > > > > ___ > > Jump-pilot-devel mailing list > > Jump-pilot-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > -- > Martin Davis > Senior Technical Architect > Refractions Research, Inc. > (250) 383-3022 > > > - > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > ___ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > -- http://amusingprogrammer.blogspot.com/ - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
Yes.. as far as i know JTS has no optimization, but.. * I implemented in the mapgen toolbox an union based on attributes that utilizes the jts quadtree. * recently Michael improved the JUMP deliverd union to speed up (can't remember how) and added as well an option for unioning only when attributes are similar. it may be an option to call Michaels optimized code for the post-unioning in the buffer method stefan Larry Becker schrieb: > Hi Martin, > > The union operation is implemented by buffering the union of the > input, rather than the union of the input buffered, if you see the > distinction. I was hoping JTS had already optimized this, but from > what you are saying, I would guess not. > > Larry > > On 8/31/07, Martin Davis <[EMAIL PROTECTED]> wrote: >> Cool... >> >> I think that one way around the "slow union" problem is to develop a >> "Cascading Union" function. This will build up a union of multiple >> geometries by forming them into a tree, and recursively unioning the >> branches of the tree from the leaves to the root.In theory this >> should provide a fairly optimal balance between performance and memory use. >> >> A nice way to form the tree would be to add the input geometries to a >> JTS Quadtree or STRtree and then traverse the tree in depth-first >> order. Unfortunately currently the implementations don't support the >> ability to traverse the tree in any order - this wouldn't be too hard to >> add, though. >> >> Thoughts? Anyone keen on trying this out? >> >> Martin >> >> >> >> Larry Becker wrote: >>> I have committed the improved buffer plugin. Three sample screens are >>> attached in english, french, and german.It now supports buffering >>> the selection. It provides a convenience union option. The sidebar >>> picture now previews the current options. It copies attributes by >>> default, even from selections on multiple layers, but this can be >>> turned off. It supports setting the number of segments in a quarter >>> circle. >>> >>> Be careful with the union operation. With large selections, it can >>> take a long time. For instance using Uwe's GeoCity project, I tried >>> to buffer everything by 1000 meters. Without union it completed in >>> about 20 seconds, and with union I finally killed it after 5 minutes. >>> >>> regards, >>> Larry Becker >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> - >>> This SF.net email is sponsored by: Splunk Inc. >>> Still grepping through log files to find problems? Stop. >>> Now Search log events and configuration files using AJAX and a browser. >>> Download your FREE copy of Splunk now >> http://get.splunk.com/ >>> >>> >>> ___ >>> Jump-pilot-devel mailing list >>> Jump-pilot-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >>> >> -- >> Martin Davis >> Senior Technical Architect >> Refractions Research, Inc. >> (250) 383-3022 >> >> >> - >> This SF.net email is sponsored by: Splunk Inc. >> Still grepping through log files to find problems? Stop. >> Now Search log events and configuration files using AJAX and a browser. >> Download your FREE copy of Splunk now >> http://get.splunk.com/ >> ___ >> Jump-pilot-devel mailing list >> Jump-pilot-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >> > > - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
ah.. anyway.. thanx Larry! Larry Becker schrieb: > Hi Martin, > > The union operation is implemented by buffering the union of the > input, rather than the union of the input buffered, if you see the > distinction. I was hoping JTS had already optimized this, but from > what you are saying, I would guess not. > > Larry > > On 8/31/07, Martin Davis <[EMAIL PROTECTED]> wrote: >> Cool... >> >> I think that one way around the "slow union" problem is to develop a >> "Cascading Union" function. This will build up a union of multiple >> geometries by forming them into a tree, and recursively unioning the >> branches of the tree from the leaves to the root.In theory this >> should provide a fairly optimal balance between performance and memory use. >> >> A nice way to form the tree would be to add the input geometries to a >> JTS Quadtree or STRtree and then traverse the tree in depth-first >> order. Unfortunately currently the implementations don't support the >> ability to traverse the tree in any order - this wouldn't be too hard to >> add, though. >> >> Thoughts? Anyone keen on trying this out? >> >> Martin >> >> >> >> Larry Becker wrote: >>> I have committed the improved buffer plugin. Three sample screens are >>> attached in english, french, and german.It now supports buffering >>> the selection. It provides a convenience union option. The sidebar >>> picture now previews the current options. It copies attributes by >>> default, even from selections on multiple layers, but this can be >>> turned off. It supports setting the number of segments in a quarter >>> circle. >>> >>> Be careful with the union operation. With large selections, it can >>> take a long time. For instance using Uwe's GeoCity project, I tried >>> to buffer everything by 1000 meters. Without union it completed in >>> about 20 seconds, and with union I finally killed it after 5 minutes. >>> >>> regards, >>> Larry Becker >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> - >>> This SF.net email is sponsored by: Splunk Inc. >>> Still grepping through log files to find problems? Stop. >>> Now Search log events and configuration files using AJAX and a browser. >>> Download your FREE copy of Splunk now >> http://get.splunk.com/ >>> >>> >>> ___ >>> Jump-pilot-devel mailing list >>> Jump-pilot-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >>> >> -- >> Martin Davis >> Senior Technical Architect >> Refractions Research, Inc. >> (250) 383-3022 >> >> >> - >> This SF.net email is sponsored by: Splunk Inc. >> Still grepping through log files to find problems? Stop. >> Now Search log events and configuration files using AJAX and a browser. >> Download your FREE copy of Splunk now >> http://get.splunk.com/ >> ___ >> Jump-pilot-devel mailing list >> Jump-pilot-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >> > > - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
Not sure I do see... Either way, if you are doing repeated calls to union(), then this is going to be slow. But maybe you mean that you are *combining* the input geometries in to a single multi-geometry, and then buffering that once? That should be faster, then. Although... for complex inputs, I suppose this could actually end up being slower than doing the buffers individually, and then using a cascading scheme to union them. Sounds like Stefan has a scheme to do this, anyway. But it would be nice to get it into JTS. Larry Becker wrote: > Hi Martin, > > The union operation is implemented by buffering the union of the > input, rather than the union of the input buffered, if you see the > distinction. I was hoping JTS had already optimized this, but from > what you are saying, I would guess not. > > Larry > > On 8/31/07, Martin Davis <[EMAIL PROTECTED]> wrote: > >> Cool... >> >> I think that one way around the "slow union" problem is to develop a >> "Cascading Union" function. This will build up a union of multiple >> geometries by forming them into a tree, and recursively unioning the >> branches of the tree from the leaves to the root.In theory this >> should provide a fairly optimal balance between performance and memory use. >> >> A nice way to form the tree would be to add the input geometries to a >> JTS Quadtree or STRtree and then traverse the tree in depth-first >> order. Unfortunately currently the implementations don't support the >> ability to traverse the tree in any order - this wouldn't be too hard to >> add, though. >> >> Thoughts? Anyone keen on trying this out? >> >> Martin >> >> >> >> Larry Becker wrote: >> >>> I have committed the improved buffer plugin. Three sample screens are >>> attached in english, french, and german.It now supports buffering >>> the selection. It provides a convenience union option. The sidebar >>> picture now previews the current options. It copies attributes by >>> default, even from selections on multiple layers, but this can be >>> turned off. It supports setting the number of segments in a quarter >>> circle. >>> >>> Be careful with the union operation. With large selections, it can >>> take a long time. For instance using Uwe's GeoCity project, I tried >>> to buffer everything by 1000 meters. Without union it completed in >>> about 20 seconds, and with union I finally killed it after 5 minutes. >>> >>> regards, >>> Larry Becker >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> - >>> This SF.net email is sponsored by: Splunk Inc. >>> Still grepping through log files to find problems? Stop. >>> Now Search log events and configuration files using AJAX and a browser. >>> Download your FREE copy of Splunk now >> http://get.splunk.com/ >>> >>> >>> ___ >>> Jump-pilot-devel mailing list >>> Jump-pilot-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >>> >>> >> -- >> Martin Davis >> Senior Technical Architect >> Refractions Research, Inc. >> (250) 383-3022 >> >> >> - >> This SF.net email is sponsored by: Splunk Inc. >> Still grepping through log files to find problems? Stop. >> Now Search log events and configuration files using AJAX and a browser. >> Download your FREE copy of Splunk now >> http://get.splunk.com/ >> ___ >> Jump-pilot-devel mailing list >> Jump-pilot-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >> >> > > > -- Martin Davis Senior Technical Architect Refractions Research, Inc. (250) 383-3022 - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
Stefan Steiniger wrote: > Yes.. as far as i know JTS has no optimization, but.. > > * I implemented in the mapgen toolbox an union based on attributes that > utilizes the jts quadtree. > Nifty.. What kind of performance improvement did you get? Did this use a cascaded approach? -- Martin Davis Senior Technical Architect Refractions Research, Inc. (250) 383-3022 - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
Re: [JPP-Devel] Improved buffer plugin
Hi Martin, The way I optimized the union plugin in OpenJUMP is not as clever as using a quadtree, but it is equivalent in the ideal case of regularly distributed features. I just grouped features in a regular grid which size is computed based on the featurecollection envelope and size (number of features). This is an iterative process : when I finished the union in all grid cells, I do it again with a larger grid until I have no more geometry to union. I called it progressive union. Performance improvement may be more than 10 x, and for large datasets, it simpley make it possible to union the layer. I did not look for a better hack at the plugin level, as I thought that better performances can be obtained from JTS itself. But I'm not sure it is possible : what about PreparedGeometry ? Regards Michael Martin Davis a écrit : >Not sure I do see... Either way, if you are doing repeated calls to >union(), then this is going to be slow. But maybe you mean that you are >*combining* the input geometries in to a single multi-geometry, and then >buffering that once? That should be faster, then. Although... for >complex inputs, I suppose this could actually end up being slower than >doing the buffers individually, and then using a cascading scheme to >union them. > >Sounds like Stefan has a scheme to do this, anyway. But it would be >nice to get it into JTS. > >Larry Becker wrote: > > >>Hi Martin, >> >> The union operation is implemented by buffering the union of the >>input, rather than the union of the input buffered, if you see the >>distinction. I was hoping JTS had already optimized this, but from >>what you are saying, I would guess not. >> >>Larry >> >>On 8/31/07, Martin Davis <[EMAIL PROTECTED]> wrote: >> >> >> >>>Cool... >>> >>>I think that one way around the "slow union" problem is to develop a >>>"Cascading Union" function. This will build up a union of multiple >>>geometries by forming them into a tree, and recursively unioning the >>>branches of the tree from the leaves to the root.In theory this >>>should provide a fairly optimal balance between performance and memory use. >>> >>>A nice way to form the tree would be to add the input geometries to a >>>JTS Quadtree or STRtree and then traverse the tree in depth-first >>>order. Unfortunately currently the implementations don't support the >>>ability to traverse the tree in any order - this wouldn't be too hard to >>>add, though. >>> >>>Thoughts? Anyone keen on trying this out? >>> >>>Martin >>> >>> >>> >>>Larry Becker wrote: >>> >>> >>> I have committed the improved buffer plugin. Three sample screens are attached in english, french, and german.It now supports buffering the selection. It provides a convenience union option. The sidebar picture now previews the current options. It copies attributes by default, even from selections on multiple layers, but this can be turned off. It supports setting the number of segments in a quarter circle. Be careful with the union operation. With large selections, it can take a long time. For instance using Uwe's GeoCity project, I tried to buffer everything by 1000 meters. Without union it completed in about 20 seconds, and with union I finally killed it after 5 minutes. regards, Larry Becker - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ ___ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >>>-- >>>Martin Davis >>>Senior Technical Architect >>>Refractions Research, Inc. >>>(250) 383-3022 >>> >>> >>>- >>>This SF.net email is sponsored by: Splunk Inc. >>>Still grepping through log files to find problems? Stop. >>>Now Search log events and configuration files using AJAX and a browser. >>>Download your FREE copy of Splunk now >> http://get.splunk.com/ >>>___ >>>Jump-pilot-devel mailing list >>>Jump-pilot-devel@lists.sourceforge.net >>>https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel >>> >>>