Hi,

i have finished my presenation. Do you have a German WIKI, too?

I will send you a downloadlink with the pdf and a title with short abstract. 
Maybe i can translate the abstract to English with a link to German PDF?

Best regards,

Manfred

-----Original Message-----
From: jump-pilot-devel-requ...@lists.sourceforge.net
Sent: Friday, December 30, 2016 3:50am
To: jump-pilot-devel@lists.sourceforge.net
Subject: Jump-pilot-devel Digest, Vol 126, Issue 40

Send Jump-pilot-devel mailing list submissions to
        jump-pilot-devel@lists.sourceforge.net

To subscribe or unsubscribe via the World Wide Web, visit
        https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
or, via email, send a message with subject or body 'help' to
        jump-pilot-devel-requ...@lists.sourceforge.net

You can reach the person managing the list at
        jump-pilot-devel-ow...@lists.sourceforge.net

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Jump-pilot-devel digest..."


Today's Topics:

   1. Re: Transformation in OpenJump ... (Micha?l Michaud)


----------------------------------------------------------------------

Message: 1
Date: Fri, 30 Dec 2016 09:49:50 +0100
From: Micha?l Michaud <m.michael.mich...@orange.fr>
Subject: Re: [JPP-Devel] Transformation in OpenJump ...
To: jump-pilot-devel@lists.sourceforge.net
Message-ID: <2d175fe0-b1b6-f02d-6de5-f3e9882dd...@orange.fr>
Content-Type: text/plain; charset="windows-1252"

Hi Manfred,

You're right, in some situations, it maybe useful to set the datum 
transformation to be used.

For advanced users, CTS can use alternative datum transformations (ex. a 
Bursa-Wolf transformation between two local datum)
and return several possible transformations between two CRSs, but it is 
not exposed through the interface.

Practically, in the library, all CRSs are defined with a toWGS84 
parameter and by default, CTS uses only the following transformation chain :

CRS1 -> toWGS84 -> WGS84 -> fromWGS84 -> CRS2

Micha?l


Le 30/12/2016 ? 07:37, manf...@egger-gis.at a ?crit :
> Hi Michael,
>
> Look at the attached file. In ArcGis 10.3.1 you have to select a geographic 
> transformation before you start a transformation between two datums.
>
> It seems that the transformation in CTS does not need such a information?
>
> And if i want to transform from MGI (Austria) to 
> D_Deutsches_Hauptdreiecksnetz(Germany)? Does this run automatically too?
>
> Transformation from MGI to WGS 84 and after that transformation from WGS84 to 
> D_Deutsches_Hauptdreiecksnetz?
>
> Best regards,
>
> Manfred
>
>
>
> Hi Manfred,
>
> What do you mean exactly ?
>
> In CTS, one performs transformations between two CRS (Coordinate
> Reference System)
>
> A CRS uses a specific datum, ellipsoid, prime meridian, and in case of a
> projected CRS, projection.
> With all these informations, it can compute transformations from/to
> WGS84 (geographic or cartesian).
>
> What do you mean by geographic transformation ? How do you define WGS84
> to MGI(Austria) transformation in other softwares ?
>
> Note that all parameters used by cts are in the epsg file (which is the
> same as the one used by proj4).
>
> Micha?l
>
>
>
> Le 29/12/2016 ? 20:03, manf...@egger-gis.at a ?crit :
>> Hi,
>>
>> I will held my presenation about OpenJump and transformation in German, but 
>> i plan to write a summary for your WIKI in English. There are some not 
>> German speaking people there.
>>
>> One important question about the Transformation Plugin by 
>> https://github.com/orbisgis/cts:
>>
>> Some days ago i transformed coordinates between two datums (WGS 84 to 
>> MGI(Austria)). The transformation was ok. But i was suprised that it is not 
>> necessary to select a geographic transformation.
>>
>> In other software you have to select a geographic transformation to get a 
>> correct transformation.
>>
>> What is the reason?
>>
>> Best regards
>>
>> Manfred
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> Jump-pilot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>
>
>
>
> ------------------------------
>
> Message: 4
> Date: Thu, 29 Dec 2016 21:23:21 +0100
> From: Micha?l Michaud <m.michael.mich...@orange.fr>
> Subject: Re: [JPP-Devel] SVN: [5296]
>       core/trunk/src/com/vividsolutions/jump/workbench/ui/zoom/
>       ZoomToCoordinatePlugIn.java
> To: jump-pilot-devel@lists.sourceforge.net
> Message-ID: <d4812395-f389-7c36-89dc-24f4ddfa9...@orange.fr>
> Content-Type: text/plain; charset=windows-1252; format=flowed
>
> Ya seems to be fixed ;-)
>
> Micha?l
>
>
> Le 29/12/2016 ? 21:15, edgar.sol...@web.de a ?crit :
>> is r5301 better? ..ede
>>
>> On 29.12.2016 21:02, Micha?l Michaud wrote:
>>> Hi Ede,
>>>
>>> I don't know what you changed, but the plugin has a strange behaviour.
>>>
>>> When the dialog is get from the menu, clicking on OK just reset the
>>> coordinates without zooming to it.
>>>
>>> When the dialog is get from the status bar, it works as usually.
>>>
>>> Micha?l
>>>
>>>
>>> Le 29/12/2016 ? 18:33, jump-pilot-...@lists.sourceforge.net a ?crit :
>>>> Revision: 5296
>>>>              http://sourceforge.net/p/jump-pilot/code/5296
>>>> Author:   edso
>>>> Date:     2016-12-29 17:33:41 +0000 (Thu, 29 Dec 2016)
>>>> Log Message:
>>>> -----------
>>>> reformat
>>>> removed unneeded undo call
>>>>
>>>> Modified Paths:
>>>> --------------
>>>>        
>>>> core/trunk/src/com/vividsolutions/jump/workbench/ui/zoom/ZoomToCoordinatePlugIn.java
>>>>
>>>> Modified: 
>>>> core/trunk/src/com/vividsolutions/jump/workbench/ui/zoom/ZoomToCoordinatePlugIn.java
>>>> ===================================================================
>>>> --- 
>>>> core/trunk/src/com/vividsolutions/jump/workbench/ui/zoom/ZoomToCoordinatePlugIn.java
>>>>    2016-12-29 17:32:49 UTC (rev 5295)
>>>> +++ 
>>>> core/trunk/src/com/vividsolutions/jump/workbench/ui/zoom/ZoomToCoordinatePlugIn.java
>>>>    2016-12-29 17:33:41 UTC (rev 5296)
>>>> @@ -24,96 +24,96 @@
>>>>     import com.vividsolutions.jump.workbench.ui.cursortool.Animations;
>>>>     
>>>>     public class ZoomToCoordinatePlugIn extends AbstractPlugIn {
>>>> -  private Coordinate lastCoordinate = new Coordinate(0, 0);
>>>> -  public boolean execute(PlugInContext context) throws Exception {
>>>> -          reportNothingToUndoYet(context);
>>>> -          Coordinate coordinate = prompt(context);
>>>> -          if (coordinate == null) {
>>>> -                  return false;
>>>> -          }
>>>> -        lastCoordinate = coordinate;
>>>> -          context.getLayerViewPanel().getViewport()
>>>> -                          .zoom(toEnvelope(coordinate, 
>>>> context.getLayerManager()));
>>>> -           
>>>> Animations.drawExpandingRing(context.getLayerViewPanel().getViewport()
>>>> -                  .toViewPoint(lastCoordinate), false, Color.BLUE,
>>>> -                  context.getLayerViewPanel(), new float[] { 20, 20 });
>>>> +  private Coordinate lastCoordinate = new Coordinate(0, 0);
>>>>     
>>>> -          return true;
>>>> -  }
>>>> +  public boolean execute(PlugInContext context) throws Exception {
>>>> +    Coordinate coordinate = prompt(context);
>>>> +    if (coordinate == null) {
>>>> +      return false;
>>>> +    }
>>>> +    lastCoordinate = coordinate;
>>>> +    context.getLayerViewPanel().getViewport()
>>>> +        .zoom(toEnvelope(coordinate, context.getLayerManager()));
>>>> +    Animations.drawExpandingRing(context.getLayerViewPanel().getViewport()
>>>> +        .toViewPoint(lastCoordinate), false, Color.BLUE,
>>>> +        context.getLayerViewPanel(), new float[] { 20, 20 });
>>>>     
>>>> -  private Coordinate prompt(PlugInContext context) {
>>>> -          while (true) {
>>>> -                  try {
>>>> -                          return 
>>>> toCoordinate(JOptionPane.showInputDialog(context
>>>> -                                          .getWorkbenchFrame(),
>>>> -                                          
>>>> I18N.get("ui.zoom.ZoomToCoordinatePlugIn.enter-coordinate-to-zoom-to"), 
>>>> lastCoordinate.x + ", "
>>>> -                                                          + 
>>>> lastCoordinate.y));
>>>> -                  } catch (Exception e) {
>>>> -                          
>>>> JOptionPane.showMessageDialog(context.getWorkbenchFrame(), e
>>>> -                                          .getMessage(),
>>>> -                                          
>>>> context.getWorkbenchFrame().getTitle(),
>>>> -                                          JOptionPane.ERROR_MESSAGE);
>>>> -                  }
>>>> -          }
>>>> +    return true;
>>>> +  }
>>>>     
>>>> -  }
>>>> +  private Coordinate prompt(PlugInContext context) {
>>>> +    while (true) {
>>>> +      try {
>>>> +        return toCoordinate(JOptionPane.showInputDialog(context
>>>> +            .getWorkbenchFrame(), I18N
>>>> +            
>>>> .get("ui.zoom.ZoomToCoordinatePlugIn.enter-coordinate-to-zoom-to"),
>>>> +            lastCoordinate.x + ", " + lastCoordinate.y));
>>>> +      } catch (Exception e) {
>>>> +        JOptionPane.showMessageDialog(context.getWorkbenchFrame(),
>>>> +            e.getMessage(), context.getWorkbenchFrame().getTitle(),
>>>> +            JOptionPane.ERROR_MESSAGE);
>>>> +      }
>>>> +    }
>>>>     
>>>> -  private Envelope toEnvelope(Coordinate coordinate, LayerManager 
>>>> layerManager) {
>>>> -          int segments = 0;
>>>> -          int segmentSum = 0;
>>>> -          outer : for (Iterator i = layerManager.iterator(); i.hasNext(); 
>>>> ) {
>>>> -                  Layer layer = (Layer) i.next();
>>>> -                  for (Iterator j = 
>>>> layer.getFeatureCollectionWrapper().iterator(); j
>>>> -                                  .hasNext(); ) {
>>>> -                          Feature feature = (Feature) j.next();
>>>> -                Collection coordinateArrays = 
>>>> CoordinateArrays.toCoordinateArrays(feature.getGeometry(), false);
>>>> -                for (Iterator k = coordinateArrays.iterator(); 
>>>> k.hasNext(); ) {
>>>> -                  Coordinate[] coordinates = (Coordinate[]) k.next();
>>>> -                    for (int a = 1; a < coordinates.length; a++) {
>>>> -                        segments++;
>>>> -                          segmentSum += 
>>>> coordinates[a].distance(coordinates[a-1]);
>>>> -                        if (segments > 100) { break outer; }
>>>> -                    }
>>>> -                }
>>>> -                  }
>>>> -          }
>>>> -          Envelope envelope = new Envelope(coordinate);
>>>> -        //Choose a reasonable magnification [Jon Aquino 10/22/2003]
>>>> -          if (segmentSum > 0) {
>>>> -                  envelope = EnvelopeUtil.expand(envelope,
>>>> -                                  segmentSum / (double) segments);
>>>> -          } else {
>>>> -                  envelope = EnvelopeUtil.expand(envelope, 50);
>>>> -          }
>>>> -          return envelope;
>>>> -  }
>>>> +  }
>>>>     
>>>> -  private Coordinate toCoordinate(String s) throws Exception {
>>>> -          if (s == null) {
>>>> -                  return null;
>>>> -          }
>>>> -          if (s.trim().length() == 0) {
>>>> -                  return null;
>>>> -          }
>>>> -          s = StringUtil.replaceAll(s, ",", " ");
>>>> -          StringTokenizer tokenizer = new StringTokenizer(s);
>>>> -          String x = tokenizer.nextToken();
>>>> -          if (!StringUtil.isNumber(x)) {
>>>> -                  throw new Exception("Not a number: " + x);
>>>> -          }
>>>> -          String y = tokenizer.nextToken();
>>>> -          if (!StringUtil.isNumber(y)) {
>>>> -                  throw new Exception("Not a number: " + y);
>>>> -          }
>>>> -          return new Coordinate(Double.parseDouble(x), 
>>>> Double.parseDouble(y));
>>>> -  }
>>>> +  private Envelope toEnvelope(Coordinate coordinate, LayerManager 
>>>> layerManager) {
>>>> +    int segments = 0;
>>>> +    int segmentSum = 0;
>>>> +    outer: for (Iterator i = layerManager.iterator(); i.hasNext();) {
>>>> +      Layer layer = (Layer) i.next();
>>>> +      for (Iterator j = layer.getFeatureCollectionWrapper().iterator(); j
>>>> +          .hasNext();) {
>>>> +        Feature feature = (Feature) j.next();
>>>> +        Collection coordinateArrays = CoordinateArrays.toCoordinateArrays(
>>>> +            feature.getGeometry(), false);
>>>> +        for (Iterator k = coordinateArrays.iterator(); k.hasNext();) {
>>>> +          Coordinate[] coordinates = (Coordinate[]) k.next();
>>>> +          for (int a = 1; a < coordinates.length; a++) {
>>>> +            segments++;
>>>> +            segmentSum += coordinates[a].distance(coordinates[a - 1]);
>>>> +            if (segments > 100) {
>>>> +              break outer;
>>>> +            }
>>>> +          }
>>>> +        }
>>>> +      }
>>>> +    }
>>>> +    Envelope envelope = new Envelope(coordinate);
>>>> +    // Choose a reasonable magnification [Jon Aquino 10/22/2003]
>>>> +    if (segmentSum > 0) {
>>>> +      envelope = EnvelopeUtil.expand(envelope, segmentSum / (double) 
>>>> segments);
>>>> +    } else {
>>>> +      envelope = EnvelopeUtil.expand(envelope, 50);
>>>> +    }
>>>> +    return envelope;
>>>> +  }
>>>>     
>>>> -  public MultiEnableCheck createEnableCheck(
>>>> -                  final WorkbenchContext workbenchContext) {
>>>> -          EnableCheckFactory checkFactory = new EnableCheckFactory(
>>>> -                          workbenchContext);
>>>> +  private Coordinate toCoordinate(String s) throws Exception {
>>>> +    if (s == null) {
>>>> +      return null;
>>>> +    }
>>>> +    if (s.trim().length() == 0) {
>>>> +      return null;
>>>> +    }
>>>> +    s = StringUtil.replaceAll(s, ",", " ");
>>>> +    StringTokenizer tokenizer = new StringTokenizer(s);
>>>> +    String x = tokenizer.nextToken();
>>>> +    if (!StringUtil.isNumber(x)) {
>>>> +      throw new Exception("Not a number: " + x);
>>>> +    }
>>>> +    String y = tokenizer.nextToken();
>>>> +    if (!StringUtil.isNumber(y)) {
>>>> +      throw new Exception("Not a number: " + y);
>>>> +    }
>>>> +    return new Coordinate(Double.parseDouble(x), Double.parseDouble(y));
>>>> +  }
>>>>     
>>>> -          return new MultiEnableCheck().add(checkFactory
>>>> -                          
>>>> .createWindowWithLayerViewPanelMustBeActiveCheck());
>>>> -  }
>>>> +  public MultiEnableCheck createEnableCheck(
>>>> +      final WorkbenchContext workbenchContext) {
>>>> +    EnableCheckFactory checkFactory = new 
>>>> EnableCheckFactory(workbenchContext);
>>>> +
>>>> +    return new MultiEnableCheck().add(checkFactory
>>>> +        .createWindowWithLayerViewPanelMustBeActiveCheck());
>>>> +  }
>>>>     }
>>>> \ No newline at end of file
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Check out the vibrant tech community on one of the world's most
>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>>> _______________________________________________
>>>> Jump-pilot-devel mailing list
>>>> Jump-pilot-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>
>>> ------------------------------------------------------------------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> Jump-pilot-devel mailing list
>>> Jump-pilot-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> Jump-pilot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>
>
>
>
> ------------------------------
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>
> ------------------------------
>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
>
> End of Jump-pilot-devel Digest, Vol 126, Issue 38
> *************************************************
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>
>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

-------------- next part --------------
An HTML attachment was scrubbed...

------------------------------

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot

------------------------------

_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel


End of Jump-pilot-devel Digest, Vol 126, Issue 40
*************************************************



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to