From: Giuseppe A. <giu...@gm...> - 2016-02-04 16:02:28
|
Thanks Landon for your help. I will add a class (probably on a test Package) just to collect all (layerable/layer) usable methods 2016-02-03 23:40 GMT+01:00 Michaël Michaud <m.m...@or...>: > Hi, > > To give more food for thought about layerable hierarchy, I have an old > project in mind to create VirtualLayers. A VirtualLayer would be the > dataset of another Layer. It may be read-only. Its main purpose is to > have more than one style associated to a single datasource and to be > able to interleave styles associated with one datasource with styles > associated to another datasource. > > Michaël > > Le 03/02/2016 17:58, edg...@we... a écrit : > > sure, go ahead. > > > > it's just important to me that we talk about it first and find an > ordered approach that takes into account the existing API. i am a big fan > of small steps, but into the right direction. meaning a big overhaul > refactoring is possibly bringing more problems than the whole cleanup is > worth. > > streamlining the existing API by eg. moving a small functionality out of > Layer into AbstractLayerable at a time and test it will probably the least > dangerous approach. > > > > visualizing the current design beforehand might probably help all > parties to get an initial overview as well. > > > > ..ede > > > > On 03.02.2016 17:49, Landon Blake wrote: > >> How do you guys feel about having Peppe and I review our existing > layerable > >> class/interface architecture and come up with a proposal for clean-up > and > >> revisions. I think some of Peppe's suggested methods are useful, but > agree > >> with Ede that we need to plug them into the correct interface. > >> > >> I think this is exactly the type of TLC the OpenJUMP core needs. I would > >> love to work with Peppe to test some code and then propose a more > >> comprehensive clean-up of the layerable code here. > >> > >> Peppe: Let me know if you want my help. > >> > >> Others: Let me know if you'd be willing to consider a proposal and some > >> test code from Peppe and I. > >> > >> Landon > >> > >> On Wed, Jan 27, 2016 at 7:02 AM, Giuseppe Aruta < > giu...@gm...> > >> wrote: > >> > >>> OK, > >>> I had the response of everybody. > >>> > >>> - I am going to remove all the Layer.class parts and restore as it is > >>> before > >>> - I am going to leave only the RasterImageLayer.class method > >>> isTemporaryLayer() > >>> - I will create an external class, called maybe LayerbleUtils - no > >>> implementation to Layerable or other classes, just a useful Util class > to > >>> group all these potential boolen/String methods. > >>> > >>>> you mean as default saving format when leaving OJ? why? > >>> No. Not talking about SaveDatasetsPlugIn. It has a useful behaviour: > if I > >>> try to add a a polygon to a point layer (belonging to a Shapefile, > already > >>> saved). And than I will save it, the plugin will save the original > geometry > >>> collection to the original file, and create another SHP file with the > >>> polygon. This is probably better than a warning message. > >>> My idea is to add this capability to Michael's project > >>> SaveLayersWithoutDatasource.class ( it saves a list of layers without > >>> datasource, the user can choose JML or SHP as export format) which is > also > >>> invoked on Saving a project. > >>> An alternative simpler idea is to give the plugin the capability to > >>> distinguish mixed geometry types layers among all, and to save them as > JML, > >>> even if the user choose SHP. > >>> In any I will not change none of the actual classes. As I frequently > >>> work with Sextante rasters(RasterImageLayer.class), I will start from > >>> Michael's plugin to create another one that has these two extra > >>> capabilities: > >>> a) it saves also a list of Temporary Raster layers as TIF > >>> b) it allows users to commit changes on "modified layers" ( I will > >>> consider "modified layers" as Layer.class, vector based, with a > datasource. > >>> I will exclude from this collection ("modified layers") > >>> DataStoreQueryDataSources and ReferencedImageLayer (legacy images) as > >>> their saving is still complex and ambiguous (see a previous discussion > >>> about saving a ReferencedImageLayer when its envelope has been moved or > >>> resized) > >>> Peppe > >>> > >>> 2016-01-27 13:53 GMT+01:00 Michaël Michaud < > m.m...@or...>: > >>> > >>>> Hi, > >>>> > >>>> I think that Peppe's request show some flaws in layerable hierarchy. > >>>> Some may be addressed by adding helper methods to existing class. > >>>> Others maybe addressed by introducing new interfaces. > >>>> Some are not so difficult to find in current implementation. > >>>> > >>>> My main complain about the design is that raster has two very > different > >>>> representations (a layer subclass for legacy images and a different > >>>> class for > >>>> sextante) > >>>> It could be a good idea to arrive to the following hierarchy : > >>>> AbstractLayer > >>>> - rasterLayer (RasterImageLayer + Sextante + WMS : is it possible > ?) > >>>> - vectorLayer (Shape, database, WFS...) > >>>> > >>>> In such a scenario, I don't know if current Layer should be equal to > >>>> VectorLayer > >>>> or above Vector and Raster. > >>>> > >>>> Another feature I'd like which meets peppe's requirement is some > >>>> information > >>>> about the source (null/file[tmp,compressed]/url[database,service]) at > the > >>>> AbstractLayer level, or at least above Raster/Vector, because this is > a > >>>> common thing > >>>> which is quite difficult to get in a uniform way in the current > >>>> hierarchy (and which is > >>>> a bit hidden). > >>>> > >>>> Maybe also methods like > >>>> - getEnvelope (currently available in raster layer and wms but not in > >>>> layer !) should be > >>>> implemented at the AbstractLayer level, as well as > >>>> - getFeatureCollection which could return image(s) enveloppes in case > of > >>>> raster layers. > >>>> > >>>> My 2 cents > >>>> > >>>> Michaël > >>>> > >>>> Le 27/01/2016 12:22, edg...@we... a écrit : > >>>>> thx! and exactly my point :) ..ede > >>>>> > >>>>> On 27.01.2016 12:17, Alberto De Luca wrote: > >>>>>> Ede, > >>>>>> > >>>>>> yes I am aware of the majority of the additions relate to > Layer.java, > >>>> but I > >>>>>> wouldn't venture into commenting on those since my knowledge with > >>>> regards > >>>>>> to the Layer class is limited. What I could say though is that for > what > >>>>>> I've seen the design of Layer is very neat and though-through in > >>>> comparison > >>>>>> to RasterImageLayer, therefore I would think more than twice before > >>>>>> touching it. > >>>>>> > >>>>>> Alberto > >>>>>> > >>>>>> On 27 January 2016 at 11:13, <edg...@we...> wrote: > >>>>>> > >>>>>>> Alberto, > >>>>>>> > >>>>>>> you are aware most additions Peppe did were to Layer.java where > they > >>>>>>> definitely don't belong? > >>>>>>> > >>>>>>> if it's needed in RasterImageLayer, i don't oppose at all. > >>>>>>> > >>>>>>> ..ede > >>>>>>> > >>>>>>> On 27.01.2016 10:53, Alberto De Luca wrote: > >>>>>>>> Hey guys, > >>>>>>>> > >>>>>>>> at the moment RasterImageLayer is quite a messy class (a mess to > whom > >>>>>>> I've > >>>>>>>> been contributing, by the way), because there's a bit of > everything > >>>> in > >>>>>>> in, > >>>>>>>> from methods that manipulate the raster values to methods that > take > >>>> care > >>>>>>> of > >>>>>>>> the rendering on screen... > >>>>>>>> > >>>>>>>> So while we wait for the lucky ticket-owner to come along, I think > >>>> that > >>>>>>> the > >>>>>>>> utility methods added by Peppe (that to me are definitely useful) > >>>> should > >>>>>>>> stay: they just made the class a bit messier :P > >>>>>>>> > >>>>>>>> Alberto > >>>>>>>> > >>>>>>>> > >>>>>>>> On 27 January 2016 at 03:00, Stefan Steiniger <ss...@ge...> > >>>> wrote: > >>>>>>>>> see below > >>>>>>>>> > >>>>>>>>> Am 26.01.16 um 13:31 schrieb Giuseppe Aruta: > >>>>>>>>>> Just few extra details: > >>>>>>>>>> > >>>>>>>>>> 1) Temporary vector (Layer.class) and raster > >>>> (RasterImageLayer.class) > >>>>>>>>>> layers (isTemporaryLayer()) > >>>>>>>>>> - Sextante is a different software and it handles raster and > >>>> vector in > >>>>>>> a > >>>>>>>>>> separate way from OpenJUMP > >>>>>>>>>> - while TEMP files should be stored in Windows forever (except > if > >>>> user > >>>>>>>>>> does a deep OS cleaning) Linux and MacOSX delete these files > from > >>>> the > >>>>>>>>>> /TEMP folder on shuts down > >>>>>>>>>> Linux and Mac users should be aware that, if they shut down the > OS > >>>> and > >>>>>>>>>> if they don't save these temp data in another folder, they will > >>>> lost > >>>>>>>>>> them. But I am sure that few know about this. > >>>>>>>>>> > >>>>>>>>>> Pratical usage: > >>>>>>>>>> Other temporary layers also layers with no datasource. > >>>>>>>>>> SaveLayrsWithoutDatasourcePlugIn of Michael already advises > users > >>>> about > >>>>>>>>>> the presence of these layers. > >>>>>>>>>> I am planning to expand this plugin to this other group of > >>>> temporary > >>>>>>>>>> layers (the one stored into /TEMP folder) both Layers and > >>>>>>>>> RasterImageLayers. > >>>>>>>>>> I could work on the plugin without adding new boolean on System > >>>> classes > >>>>>>>>>> (you are right, Ede, those functionality are already there) > >>>>>>>>>> But a flag like RasterImagerLayer.isTemporary() would avoid some > >>>> extra > >>>>>>>>>> code and, more important, it could be used also in the future > >>>>>>>>> I agree with Peppe here... > >>>>>>>>> But perhaps we need to see how this fits also with Michaels DB > >>>>>>>>> experiences (and approaches). At least most Raster-Related helper > >>>>>>>>> classes make sense to me. Perhaps Alberto has a comment on that > too. > >>>>>>>>> And if Ede points out to the original JUMP design/development... > >>>> well > >>>>>>>>> the design focus was on vector... everything else raster wise was > >>>> more > >>>>>>>>> experimental (my opinion). And this is now also some wooohhhoo > 12-13 > >>>>>>>>> years ago... ;) > >>>>>>>>> > >>>>>>>>> Ideally of course one would need to do what QGIS did, a complete > >>>>>>>>> redesign of the core, but... (perhaps someone wins in the lottery > >>>> and > >>>>>>>>> funds 5 devs from that :) > >>>>>>>>> > >>>>>>>>> cheers, > >>>>>>>>> Stefan > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>> > ------------------------------------------------------------------------------ > >>>>>>>>> Site24x7 APM Insight: Get Deep Visibility into Application > >>>> Performance > >>>>>>>>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>>>>>>>> Monitor end-to-end web transactions and take corrective actions > now > >>>>>>>>> Troubleshoot faster and improve end-user experience. Signup Now! > >>>>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>>>>>>>> _______________________________________________ > >>>>>>>>> Jump-pilot-devel mailing list > >>>>>>>>> Jum...@li... > >>>>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>>>>>>>> > >>>>>>>> > >>>>>>>> > >>>> > ------------------------------------------------------------------------------ > >>>>>>>> Site24x7 APM Insight: Get Deep Visibility into Application > >>>> Performance > >>>>>>>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>>>>>>> Monitor end-to-end web transactions and take corrective actions > now > >>>>>>>> Troubleshoot faster and improve end-user experience. Signup Now! > >>>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> _______________________________________________ > >>>>>>>> Jump-pilot-devel mailing list > >>>>>>>> Jum...@li... > >>>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>>>>>>> > >>>>>>> > >>>> > ------------------------------------------------------------------------------ > >>>>>>> Site24x7 APM Insight: Get Deep Visibility into Application > Performance > >>>>>>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>>>>>> Monitor end-to-end web transactions and take corrective actions now > >>>>>>> Troubleshoot faster and improve end-user experience. Signup Now! > >>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>>>>>> _______________________________________________ > >>>>>>> Jump-pilot-devel mailing list > >>>>>>> Jum...@li... > >>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>>>>>> > >>>>>> > >>>>>> > >>>> > ------------------------------------------------------------------------------ > >>>>>> Site24x7 APM Insight: Get Deep Visibility into Application > Performance > >>>>>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>>>>> Monitor end-to-end web transactions and take corrective actions now > >>>>>> Troubleshoot faster and improve end-user experience. Signup Now! > >>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>>>>> > >>>>>> > >>>>>> > >>>>>> _______________________________________________ > >>>>>> Jump-pilot-devel mailing list > >>>>>> Jum...@li... > >>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>>>>> > >>>> > ------------------------------------------------------------------------------ > >>>>> Site24x7 APM Insight: Get Deep Visibility into Application > Performance > >>>>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>>>> Monitor end-to-end web transactions and take corrective actions now > >>>>> Troubleshoot faster and improve end-user experience. Signup Now! > >>>>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>>>> _______________________________________________ > >>>>> Jump-pilot-devel mailing list > >>>>> Jum...@li... > >>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>>>> > >>>> > >>>> > >>>> > ------------------------------------------------------------------------------ > >>>> Site24x7 APM Insight: Get Deep Visibility into Application Performance > >>>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>>> Monitor end-to-end web transactions and take corrective actions now > >>>> Troubleshoot faster and improve end-user experience. Signup Now! > >>>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>>> _______________________________________________ > >>>> Jump-pilot-devel mailing list > >>>> Jum...@li... > >>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>>> > >>> > >>> > >>> > ------------------------------------------------------------------------------ > >>> Site24x7 APM Insight: Get Deep Visibility into Application Performance > >>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >>> Monitor end-to-end web transactions and take corrective actions now > >>> Troubleshoot faster and improve end-user experience. Signup Now! > >>> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >>> _______________________________________________ > >>> Jump-pilot-devel mailing list > >>> Jum...@li... > >>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >>> > >>> > >> > >> > >> > ------------------------------------------------------------------------------ > >> Site24x7 APM Insight: Get Deep Visibility into Application Performance > >> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > >> Monitor end-to-end web transactions and take corrective actions now > >> Troubleshoot faster and improve end-user experience. Signup Now! > >> http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > >> > >> > >> > >> _______________________________________________ > >> Jump-pilot-devel mailing list > >> Jum...@li... > >> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > >> > > > ------------------------------------------------------------------------------ > > Site24x7 APM Insight: Get Deep Visibility into Application Performance > > APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > > Monitor end-to-end web transactions and take corrective actions now > > Troubleshoot faster and improve end-user experience. Signup Now! > > http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 > > _______________________________________________ > > Jump-pilot-devel mailing list > > Jum...@li... > > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > > > ------------------------------------------------------------------------------ > Site24x7 APM Insight: Get Deep Visibility into Application Performance > APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > Monitor end-to-end web transactions and take corrective actions now > Troubleshoot faster and improve end-user experience. Signup Now! > http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 > _______________________________________________ > Jump-pilot-devel mailing list > Jum...@li... > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > |