Andorville™ Coordinates Client


Introduction

The Andorville™ Coordinates Client software provides a demonstration of a client application controlling the Coordinates application and instructing it to perform coordinate transformations.

Coordinates are entered on the Point Conversion form.
These coordinates can be projected, geographic or cartesian.
The corresponding coordinate values in the Output coordinate reference system are calculated and displayed on the form.

The Coordinates Client uses the Coordinates application as a server to perform the coordinate calculations.


The Coordinates Client Form

The Coordinates Client Form.


The source code for the software can be downloaded from this GitHub page: ADVL_Coordinates_Client_2

If you have any questions or comments, contact me at


The Coordinates application can be opened and closed from the client as required.

Andorville™ applications exchange information using XMessages.

The following XMessage is sent to the Coordinates application to define the input and output coordinate reference systems and define the datum transformation operation:

<XMsg>
<SetInputCrsCode>28351</SetInputCrsCode>
<SetOutputCrsCode>7851</SetOutputCrsCode>
<SetDatumTransType>Direct</SetDatumTransType>
<SetDirectDatumTransCode>8048</SetDirectDatumTransCode>
<SetDirectDatumTransApplyRev>False</SetDirectDatumTransApplyRev>
<ShowDmsSymbols>true</ShowDmsSymbols>
</XMsg>

These settings were automatically saved from an earlier conversion session.
The Coordinate Reference System tab and Datum Transformation tab can be used to select suitable parameters from a list.


When an input coordinate value is entered or edited, the following XMessage is sent to request a coordinate conversion calculation:

<XMsg>
<ClientProNetName/>
<ClientConnectionName>ADVL_Coordinates_Client_2</ClientConnectionName>
<Convert>
    <Coord>
      <Index>0</Index>
      <SetLongitude>123.1914192</SetLongitude>
      <SetLatitude>-13.9458222</SetLatitude>
      <SetEllHeight>0</SetEllHeight>
      <Command>InputLongLatToIndexedInputOutputAllDms</Command>
    </Coord>
</Convert>
</XMsg>

This XMessage contains the following information:
<ClientProNetName/> is the name of the client project network. (In this case, the Coordinates Server is not in a network and the name is blank.)
<ClientConnectionName>ADVL_Coordinates_Client_2</ClientConnectionName> is the name of the client connection.
The project network name and client connection name tell the coordinates server where to send the results of the coordinate calculations.

<Index>0</Index> is the index number of the coordinate calculation. This is the row number of the point location in the list displayed on the Coordinates Client form.
<SetLongitude>123.1914192</SetLongitude> This instruction tells the server to set the input longitude to the specified value.
Geographic coordinates can be entered as either decimal degrees or degrees, minutes and seconds.
The software automatically detects the format of the entered coordinates.

<SetLatitude>-13.9458222</SetLatitude> This instruction tells the server to set the input latitude to the specified value.
<SetEllHeight>0</SetEllHeight> This instruction tells the server to set the ellipsoidal height to the specified value.
<Command>InputLongLatToIndexedInputOutputAllDms</Command> This command tells the server to calculate all input and output coordinate types from the input longitude and latitude, return indexed values and use degrees, minutes and seconds format for geographic coordinates.


The Coordinates Server performs the requested calculations and sends the following XMessage back to the client:

<XMsg>
<Main>
    <Coord>
      <Index>0</Index>
      <InputEasting>520676.37620877783</InputEasting>
      <InputNorthing>8458257.15162918</InputNorthing>
      <InputX>-3389373.710024944</InputX>
      <InputY>5181199.3184402678</InputY>
      <InputZ>-1527165.0174215392</InputZ>
      <OutputEasting>520677.36164351105</OutputEasting>
      <OutputNorthing>8458258.6763724126</OutputNorthing>
      <OutputLongitudeDms>123° 11' 29.1419" E</OutputLongitudeDms>
      <OutputLatitudeDms>13° 56' 44.9103" S</OutputLatitudeDms>
      <OutputEllHeight>-0.09804248996078968</OutputEllHeight>
      <OutputX>-3389374.6832405673</OutputX>
      <OutputY>5181199.0076041948</OutputY>
      <OutputZ>-1527163.5126386569</OutputZ>
    </Coord>
    <Status>OK</Status>
</Main>
</XMsg>

The reply XMessage contains the index number of the processed point and all of the requested input and output point coordinate types.
The Coordinates Client updates the coordinate types selected for display on the list with the specified number formatting applied.



The Andorville™ Coordinates Client   The Coordinates Client CRS Tab   The Coordinates Client Datum Transformation Tab   The Coordinates Client Settings Tab