An observation: A reprojection service should not be implemented in a renderer, but should be provided by the Geometry implementation. In fact, any operation which could significantly impact performance should be offered as an optimized service by the implementation. There should also be a collection of "generic" services which operate only on the GeoAPI interfaces (to accomodate foreign GeoAPI implementations, if slowly). The renderer (or any other client code) should know enough to prefer optimized services over generic ones unless specifically instructed otherwise by the human operator.
A Geometry implementation is likely to be partitioned as a package/module. This package/module should be empowered to advertise not only what level of service is offered by the geometry implementation, but what optimized services are offered. Bryce [EMAIL PROTECTED] wrote on 02/13/2007 02:23:40 AM: > Jody Garnett ha scritto: > > Hi Simboss; just a follow up to our question on how to separate out the > > Geometry -> Shape transition from the rendering code. Since we will be > > defining no new API we do not need a proposal for this one; you have my > > permission as module maintainer to package up the code in *main*; and I > > seem to recall that Jesse was okay with the change to renderer. > > People, going thru a converter is a dangerous road performance wise. > As far as I can see, you want to do that to make the renderer > independent of the actual geometry type used, allowing it to render > JTS geometries, ISO geometries, or your random Point(x,y) beean. > Is this right? > > Well, in this case you don't only have to prepare stuff for decimation, > but also for reprojection. Reprojecting a shape is not as efficient > as doing it on a double[] or coordinates, not nearly as efficient. > > So, you either provide a reprojection hint too, or you ask for something > other that a Shape to be returned back, something like a JTS geometry > using packed coordinate sequences, that can be efficiently reprojected > by transforming arrays of floats or doubles, otherwise we're going > to pay a high tax to this generality attempt. > > Cheers > Andrea > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier. > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Geotools-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/geotools-devel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Geotools-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geotools-devel
