Simone Giannecchini a écrit :
> as a consequence of Monday's IRC meeting I have started to do some
> minor refactor for the raster symbolizer work, you can check here
> http://svn.geotools.org/geotools/branches/2.4.x_rs/modules/library/render/src/main/java/org/geotools/referencing/piecewise/

Thats look like much closer to the purpose of a raster symbolizer, thanks.


> What I believe we should do:
> -move the hierarchy for pievewise to referencing
> -leave the hierarchy for color map in renderer

Yes, but I will missing time in the short term (next few weeks) since I still 
don't have finished the work for IFREMER. I would like to take the time to 
think 
how it fit in a "as big as we can" picture. For example the MGRS projection 
that 
you mentioned is basically a PiecewiseTransform2D. I would like to design an 
API 
that encompass both case. This means for example that 
PiecewiseTransformElements 
could have an Envelope rather than a NumberRange (a NumberRange is basically an 
1D Envelope). Doing so means that PiecewiseTransformElement could not extends 
Domain anymore (at least in its current form).

In the main time, it would be nice if we could keep as many classes privated as 
possible. For example we could have a factory with a set of public static 
methods creating the various implementations. There is two advantages in doing 
so:

* Would allow us to turn every implementations package-privated.
* The factory method can select automatically the implementation based on the
   argument values, something we can not do with constructors. For example in
   a (scale,offset) pair of argument, if scale=0, then we have a Constant
   transform. Otherwise we have a Linear transform.

Note that I do that in the referencing module. A fair amount (but not all) of 
implementation classes are package-privated. One additional reason for keeping 
more classe privated is that we get complains from GeoTools users saying that 
the conceptual weight of GeoTools is too heavy.

An other issue is that those classes are addition of new functionalities, which 
is the kind of work that is usually targeted for trunk rather than the 2.4 
branch. If the work was commited to tunk, I would have approximatively one year 
for reviewing it and slowly moving part to referencing module. If it is 
commited 
to 2.4, then in principle the API is frozen right away since 2.4 is supposed to 
be released...

        Regards,

                Martin


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to