Larry,

Alevel we should probably have a utility class that would reproject a
Category,a Layer, a FeatureCollection

In JUMP we should have some high level utility methods to reproject the
following. We can then leave the more detailed discussion on projection
libraries to a later date.

Task
Category
Layer
FeatureCollection
Feature

Paul


Larry Becker wrote:
> Hmm.  I'm intrigued.  If no one else wants to take this on, I'll have
> a go at it.
>
> I realize that there is a discussion about the best interface going
> on, but this will be a proof (more like a re-proof) of concept.
>
> regards,
> Larry
>
> On 9/14/07, Edgar Soldin <[EMAIL PROTECTED]> wrote:
>   
>> Hey Larry,
>>     
>>>   More seriously - are you saying that we can just add a GT2 jar, wrap
>>> it in an interface like some of the guys have been kicking around, and
>>> get instant transformation?
>>>
>>>       
>> make it 4 jars and use given jts objects .. voila, see:
>> http://docs.codehaus.org/display/GEOTDOC/01+CRS+Helper+Class
>>
>> what i did originally was filtering geometries coordinates, create and
>> replace new geometries with them and save the old ones for a possible
>> 'UNDO'.
>> it looks like by version gt2.3, they have a utility class that can
>> manipulate geometries directly. *nice*
>>     
>>>   What would we do for a start?   Add a Layer->reproject function?
>>>
>>>       
>> to check how good it works yes... i suggested a user interface earlier
>> this year.. maybe you want to check
>> http://www.jump-project.org/pipermail/jump-devel/2007-July/000629.html
>>
>> re-regards ede
>>     
>>> regards,
>>> Larry
>>>
>>>
>>>
>>> On 9/13/07, Stefan Steiniger <[EMAIL PROTECTED]> wrote:
>>>
>>>       
>>>> probably rather to this list ;)
>>>>
>>>> -------- Original-Nachricht --------
>>>> Betreff: [jump-devel] Projection with Geotools2 CRS
>>>> Datum: Thu, 13 Sep 2007 21:00:44 +0200
>>>> Von: Edgar Soldin <[EMAIL PROTECTED]>
>>>> Antwort an: JUMP Developers <[EMAIL PROTECTED]>
>>>> An: JUMP Developers <[EMAIL PROTECTED]>
>>>>
>>>> Hello All,
>>>>
>>>> because of all the comments related to projection (interfaces) , here is
>>>> an example of the simplicity in using GT2 CRS for projection/transformation
>>>>
>>>> SNIPPET-->
>>>>     CoordinateOperationFactory coFactory =
>>>> FactoryFinder.getCoordinateOperationFactory(null);
>>>>     MathTransform transform;
>>>>     src = FactoryFinder.getCRSFactory(null).createFromWKT("PROJCS[\"DHDN
>>>> / Gauss-Kruger Zone 3\", GEOGCS[\"DHDN\", DATUM[\"Deutsches
>>>> Hauptdreiecksnetz\", SPHEROID[\"Bessel 1841\", 6377397.155, 299.1528128,
>>>> AUTHORITY[\"EPSG\",\"7004\"]], TOWGS84[598.1, 73.7, 418.2,
>>>> 0.2019999999999998, 0.04499999999999995, -2.4549999999999974, 6.7],
>>>> AUTHORITY[\"EPSG\",\"6314\"]], PRIMEM[\"Greenwich\", 0.0,
>>>> AUTHORITY[\"EPSG\",\"8901\"]], UNIT[\"degree of
>>>> angle\",0.017453292519943295], AXIS[\"Geodetic longitude\",EAST],
>>>> AXIS[\"Geodetic latitude\",NORTH], AUTHORITY[\"EPSG\",\"4314\"]],
>>>> PROJECTION[\"Transverse_Mercator\"], PARAMETER[\"semi_major\",
>>>> 6377397.155], PARAMETER[\"semi_minor\", 6356078.962818189],
>>>> PARAMETER[\"central_meridian\", 8.999999999999991],
>>>> PARAMETER[\"latitude_of_origin\", 0.0], PARAMETER[\"scale_factor\",
>>>> 1.0], PARAMETER[\"false_easting\", 3500000.0],
>>>> PARAMETER[\"false_northing\", 0.0], UNIT[\"metre\",1.0],
>>>> AXIS[\"Easting\",EAST], AXIS[\"Northing\",NORTH],
>>>> AUTHORITY[\"EPSG\",\"31467\"]]");
>>>>      //src = FactoryFinder.getCRSAuthorityFactory("EPSG",
>>>> null).createCoordinateReferenceSystem("EPSG:31467");
>>>>     trg = FactoryFinder.getCRSAuthorityFactory("EPSG",
>>>> null).createCoordinateReferenceSystem("EPSG:4326");
>>>>     CoordinateOperation co = coFactory.createOperation(src, trg);
>>>>
>>>>     transform = co.getMathTransform();
>>>> <--SNIPPET
>>>>
>>>> the snippet is only rough cut out of my tests. It will not compile in
>>>> this state, but still it shows how easy it is with GT2 to get a
>>>> transformation (from WKT or EPSG ID, as you choose) for projecting
>>>> coordinates. The EPSG entries of the factory are of course
>>>> request-/listable by name(description).
>>>>
>>>> just trying to lobby for the GT2 library, as I get the impression the
>>>> list is a bit afraid of it ;).
>>>>
>>>> regards ede
>>>>
>>>> --
>>>> public class WhoDidIt{ // A comment. I love comments
>>>>   private static Person sender;
>>>>
>>>>   public static void main (String[] foo){
>>>>
>>>>   sender = new Person();
>>>>   sender.setName(new String[]{"Edgar", "Soldin"});
>>>>
>>>>   Address address = new Address();
>>>>   address.setStreet("Stadtweg 119");
>>>>   address.setZip(39116);
>>>>   address.setCity("Magdeburg");
>>>>   address.setCountry("Germany");
>>>>
>>>>   sender.setAddress(address);
>>>>
>>>>   sender.setMobilePhone(" +49(0)171-2782880 ");
>>>>   sender.setWebSiteUrl(" http://www.soldin.de ");
>>>>   sender.setEmail(" [EMAIL PROTECTED] ");
>>>>   sender.setPGPPublicKey(" http://www.soldin.de/edgar_soldin.asc ");
>>>>   sender.setGender(true);
>>>>
>>>>   System.out.println(sender.toString());
>>>>   }
>>>> }
>>>>
>>>> _______________________________________________
>>>> jump-devel mailing list
>>>> [EMAIL PROTECTED]
>>>> http://lists.refractions.net/mailman/listinfo/jump-devel
>>>>
>>>>
>>>>
>>>> -------------------------------------------------------------------------
>>>> This SF.net email is sponsored by: Microsoft
>>>> Defy all challenges. Microsoft(R) Visual Studio 2005.
>>>> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>>>> _______________________________________________
>>>> Jump-pilot-devel mailing list
>>>> Jump-pilot-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>
>>>>
>>>>         
>>>
>>>       
>> --
>> public class WhoDidIt{ // A comment. I love comments
>>   private static Person sender;
>>
>>   public static void main (String[] foo){
>>
>>   sender = new Person();
>>   sender.setName(new String[]{"Edgar", "Soldin"});
>>
>>   Address address = new Address();
>>   address.setStreet("Stadtweg 119");
>>   address.setZip(39116);
>>   address.setCity("Magdeburg");
>>   address.setCountry("Germany");
>>
>>   sender.setAddress(address);
>>
>>   sender.setMobilePhone(" +49(0)171-2782880 ");
>>   sender.setWebSiteUrl(" http://www.soldin.de ");
>>   sender.setEmail(" [EMAIL PROTECTED] ");
>>   sender.setPGPPublicKey(" http://www.soldin.de/edgar_soldin.asc ");
>>   sender.setGender(true);
>>
>>   System.out.println(sender.toString());
>>   }
>> }
>>
>>
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by: Microsoft
>> Defy all challenges. Microsoft(R) Visual Studio 2005.
>> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>> _______________________________________________
>> 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: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to