Skip to main content
Question

Creating a milli-arcsecond coordinate system

  • February 14, 2022
  • 3 replies
  • 53 views

mbfbsae90
Contributor
Forum|alt.badge.img+1

How do I create a WGS84 coordinate system whose units are milliarcseconds (1/1000th of arc second) in MyCoordSysDefs.fme?

 

Not exactly sure what I really need... This is my guess.

UNIT_DEF MILLI_SEC               \\  

  UNIT_TYPE ANGLE           \\ 

  UNIT_ABBREVIATION DEG_MILLI_SEC      \\    

  UNIT_FACTOR 0.00000000484813681109535

 

 

COORDINATE_SYSTEM_DEF WGS84-MilliSec\\

  DESC_NM "WGS84 milli (1/1000) arcsecond " \\

  GROUP "WORLD"                  \\

  PROJ LL                     \\

  UNIT MILLI_SEC                   \\

  DT_NAME WGS84

 

Should  UNIT_FACTOR be 0.00000027777777777777777  for conversion to meter & UNIT_TYPE be LENGTH?

 

Thx,

Mark

 

 

3 replies

daveatsafe
Safer
Forum|alt.badge.img+19
  • Safer
  • February 14, 2022

Hi @mbfbsae90​,

A milli arc second is 1/3600000 of a degree, so in the UNIT_DEF, the UNIT_TYPE should be ANGLE, and the UNIT_FACTOR should be 0.00000027777777777777777


mbfbsae90
Contributor
Forum|alt.badge.img+1
  • Author
  • Contributor
  • February 21, 2022

The result PRJ file is this:

GEOGCS["GCS_WGS84_milli_1_1000_arcsecond",DATUM["D_WGS_1984",SPHEROID["World_Geodetic_System_of_1984_GEM_10C",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]

 

Besides the name I do not see any difference in the file to LL84: (could be missing something...)

GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433],AUTHORITY["EPSG",4326]]

 

How would something know that the data is 1/1000th of an arcsecond. I would have expected the "UNIT" to be labelled millisec with a different "scale number". But I'm no expert on the PRJ files.

 

Thanks,

Mark

 


daveatsafe
Safer
Forum|alt.badge.img+19
  • Safer
  • February 22, 2022
mbfbsae90 wrote:

The result PRJ file is this:

GEOGCS["GCS_WGS84_milli_1_1000_arcsecond",DATUM["D_WGS_1984",SPHEROID["World_Geodetic_System_of_1984_GEM_10C",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]

 

Besides the name I do not see any difference in the file to LL84: (could be missing something...)

GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433],AUTHORITY["EPSG",4326]]

 

How would something know that the data is 1/1000th of an arcsecond. I would have expected the "UNIT" to be labelled millisec with a different "scale number". But I'm no expert on the PRJ files.

 

Thanks,

Mark

 

Hi @mbfbsae90​,

The automatic PRJ WKT creation in FME does not seem to like custom units. You can define your own WKT for the coordinate system and store it in an exception (.db) file in your Documents\FME\CoordinateSystemExceptions folder, and FME will use that instead.

According to the Esri docs:

The UNIT object can represent angular or linear units of measure.
 
The conversion factor specifies number of meters (for a linear unit), or number of radians (for an angular unit) per unit and must be greater than zero.

1 milliarcsecond is equal to 4.8481368110954E-9 radian.

 I think the following would work for the .db file contents:

GEOGCS["WGS84-MilliSec",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["MilliArcSecond",0.0000000048481368110954]

This is essentially the same as WGS84, but with a modified UNIT.

After creating the .db file, restart FME for it to take effect.


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings