This service provides spatial reference conversions for coordinates. Coordinates are represented by an array of 3D points.
"points": [
{
"x": -61.04340628871454,
"y": 10.673103179456877,
"z": 0
},
{
"x": -62.28871454043406,
"y": 11.794568776731031,
"z": 0
}
]The context, which is the measurement and unit associated with the axes, is given by the CRS definition. In most of the cases, the CRS definition is 2D. In both the geographic and projected CRS types, the Z-axis is passed through unchanged, and its unit is only known to the client.
In addition to simple points as mentioned above, more complex geometry structures, such as GeoJSON, are supported by the service. GeoJSON only supports WGS 84, by definition. In order to enable spatial reference conversions, a similar structure has been created which uses the GeoJSON types prefixed by AnyCrs, such as AnyCrsFeatureCollection. AnyCrsFeatureCollection contains the CRS information and Z-unit as a persistable reference string.
| Header | Description |
|---|---|
| data-partition-id (Required) | Specify the desired accessible partition ID. Only one data partition can be specified at a time. |
| correlation-id (Optional) | Used to track a single request throughout all the services it passes through. This can be a GUID in the header with a key. If you are the service initiating the request, you should generate the ID. Otherwise, you should just forward it on in the request. |
The Data Platform stores data in different data partitions, depending on the access to those data partitions in the OSDU system.
Note: Viewer permission to the provided data-partition is required to use these APIs.
The CRS conversion and transformation service relies on the Esri projection engine to perform geo-spatial operations. There is considerable variability in response times depending on the kind of operation. The kind of operation is generally opaque to consumers. When transformations between different geographic CRSs are required and use large parameter files, such as the NTv2 method in Japan, Canada, and Australia, the response time can dramatically increase. Up to 90 seconds have been measured for transformations with the largest known parameter file (ESRI, 108109).
The second parameter that impacts the response time is the number of points in the request. Simple conversions with few points can have response times of about 0.5 seconds while 500000 points will require 180 to 200 seconds. The complex operations have response times of about 90 seconds for a few points to ~260 seconds for 500000 points.
This expected latency must be taken into account for the timeout definition and, more importantly, for the application design. Some conversions might be very slow.
To ensure proper scaling of the infrastructure, a best practice is to submit more requests with a smaller payload of ~5000-10000 points.
| Axis | CRS type | Measurement | Unit | Sign and directions |
|---|---|---|---|---|
| x | Geographic CRS | Plane_Angle | from CRS | positive values E, negative values W hemisphere |
| y | Geographic CRS | Plane_Angle | from CRS | positive values N, negative values S hemisphere |
| z | Geographic CRS | Length | pass-through | typically elevation relative to an implicit mean sea level surface |
| x | Projected CRS | Length | from CRS | direction given by the CRS |
| y | Projected CRS | Length | from CRS | direction given by the CRS |
| z | Projected CRS | Length | pass-through | typically elevation relative to an implicit mean sea evel surface |
This method takes two CRS references (persistable references for example) that are exposed by the Spatial Reference Catalog and an array of points:
fromCRS: Persistable reference string for the CRS describing the context of the coordinates supplied in the request. This CRS controls the measurement and unit context of the axes -x,y,z. Details in Axis definitions.toCRS: Persistable reference string for the target CRS, in which the response is expected. ThistoCRScontrols the measurement and unit context of the axes -x,y,z. Details in Axis definitions.points: The list of points (3D coordinates) to be converted/transformed.
An example for a [ConvertPointsRequest](#ConvertPointsRequest):
{
"fromCRS": "{\"lateBoundCRS\":{\"wkt\":\"GEOGCS[\\\"GCS_Provisional_S_American_1956\\\",DATUM[\\\"D_Provisional_S_American_1956\\\",SPHEROID[\\\"International_1924\\\",6378388.0,297.0]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433],AUTHORITY[\\\"EPSG\\\",4248]]\",\"ver\":\"PE_10_3_1\",\"name\":\"GCS_Provisional_S_American_1956\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"4248\"},\"type\":\"LBC\"},\"singleCT\":{\"wkt\":\"GEOGTRAN[\\\"PSAD_1956_To_WGS_1984_9\\\",GEOGCS[\\\"GCS_Provisional_S_American_1956\\\",DATUM[\\\"D_Provisional_S_American_1956\\\",SPHEROID[\\\"International_1924\\\",6378388.0,297.0]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],METHOD[\\\"Geocentric_Translation\\\"],PARAMETER[\\\"X_Axis_Translation\\\",-295.0],PARAMETER[\\\"Y_Axis_Translation\\\",173.0],PARAMETER[\\\"Z_Axis_Translation\\\",-371.0],AUTHORITY[\\\"EPSG\\\",1209]]\",\"ver\":\"PE_10_3_1\",\"name\":\"PSAD_1956_To_WGS_1984_9\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"1209\"},\"type\":\"ST\"},\"ver\":\"PE_10_3_1\",\"name\":\"PSAD56 * DMA-Ven [4248,1209]\",\"authCode\":{\"auth\":\"OSDU\",\"code\":\"4248009\"},\"type\":\"EBC\"}",
"toCRS": "{\"lateBoundCRS\":{\"wkt\":\"PROJCS[\\\"Trinidad_1903_Trinidad_Grid\\\",GEOGCS[\\\"GCS_Trinidad_1903\\\",DATUM[\\\"D_Trinidad_1903\\\",SPHEROID[\\\"Clarke_1858\\\",6378293.64520876,294.260676369]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Cassini\\\"],PARAMETER[\\\"False_Easting\\\",430000.0],PARAMETER[\\\"False_Northing\\\",325000.0],PARAMETER[\\\"Central_Meridian\\\",-61.3333333333333],PARAMETER[\\\"Scale_Factor\\\",1.0],PARAMETER[\\\"Latitude_Of_Origin\\\",10.4416666666667],UNIT[\\\"Link_Clarke\\\",0.201166195164],AUTHORITY[\\\"EPSG\\\",30200]]\",\"ver\":\"PE_10_3_1\",\"name\":\"Trinidad_1903_Trinidad_Grid\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"30200\"},\"type\":\"LBC\"},\"singleCT\":{\"wkt\":\"GEOGTRAN[\\\"Trinidad_1903_To_WGS_1984_2\\\",GEOGCS[\\\"GCS_Trinidad_1903\\\",DATUM[\\\"D_Trinidad_1903\\\",SPHEROID[\\\"Clarke_1858\\\",6378293.64520876,294.260676369]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],METHOD[\\\"Geocentric_Translation\\\"],PARAMETER[\\\"X_Axis_Translation\\\",-61.0],PARAMETER[\\\"Y_Axis_Translation\\\",285.2],PARAMETER[\\\"Z_Axis_Translation\\\",471.6],AUTHORITY[\\\"EPSG\\\",10085]]\",\"ver\":\"PE_10_3_1\",\"name\":\"Trinidad_1903_To_WGS_1984_2\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"10085\"},\"type\":\"ST\"},\"ver\":\"PE_10_3_1\",\"name\":\"Trinidad 1903 * EOG-Tto Trin / Trinidad Grid [30200,10085]\",\"authCode\":{\"auth\":\"OSDU\",\"code\":\"30200002\"},\"type\":\"EBC\"}",
"points": [
{
"x": -61.04340628871454,
"y": 10.673103179456877,
"z": 0
},
{
"x": -62.28871454043406,
"y": 11.794568776731031,
"z": 0
}
]
}Open Try it out or Try it out in new window
The ConvertPointsResponse for this request is:
{
"successCount": 2,
"points": [
{
"x": 586399.4230309083,
"y": 448578.26031172264,
"z": 0.0
},
{
"x": -88904.72321373501,
"y": 1066068.2013103405,
"z": 0.0
}
],
"operationsApplied": [
"transformation GCS_Provisional_S_American_1956 to GCS_WGS_1984 using PSAD_1956_To_WGS_1984_9; 2 points successfully transformed",
"transformation GCS_WGS_1984 to GCS_Trinidad_1903 using Trinidad_1903_To_WGS_1984_2; 2 points successfully transformed",
"conversion from GCS_Trinidad_1903 to Trinidad_1903_Trinidad_Grid; 2 points converted"
]
}Two points were successfully converted/transformed - successCount. The converted points are returned in the list of points.
The source data reference, fromCRS, is a geographic CRS PSAD56 * DMA-Ven [4248,1209], which is bound to a cartographic transformation to WGS 84, EPSG,1209.
The target data reference, toCRS, is a projected CRS Trinidad 1903 * EOG-Tto Trin / Trinidad Grid [30200,10085]. It is based on the geographic CRS GCS_Trinidad_1903, which is different from the source CRS. This CRS with the ID EPSG,30200 is bound to the cartographic transformation to WGS 84 ESPG,10085.
Because both CRSs are bound to WGS 84, it can act as a 'hub'. This is what happened on the server:
- The
fromCRSis not a projected CRS. The first step to convert from thefromCRSto the base geographic CRS is skipped. - Transform the
pointsfrom the geographic CRS, PSAD56 to WGS 84 using the cartographic transformationEPSG,1209. The preliminary result is in WGS 84. - Transform the points from WGS 84 to the geographic CRS GCS_Trinidad_1903 using the cartographic transformation
EPSG,10085in the inverse direction. - Project the points (=convert) from GCS_Trinidad_1903 to Trinidad Grid
EPSG,30200.
The human readable summary of this is captured in the operationsApplied block:
"operationsApplied": [
"transformation GCS_Provisional_S_American_1956 to GCS_WGS_1984 using PSAD_1956_To_WGS_1984_9; 2 points successfully transformed",
"transformation GCS_WGS_1984 to GCS_Trinidad_1903 using Trinidad_1903_To_WGS_1984_2; 2 points successfully transformed",
"conversion from GCS_Trinidad_1903 to Trinidad_1903_Trinidad_Grid; 2 points converted"
]Note the terminology:
- Conversion is an operation between a projected CRS and its base geographic CRS.
- Transformation is an operation between different geographic CRSs (sometimes also referred to as datums).
The convertPoint can also be used to determine whether a conversion can be skipped completely if the fromCRS and toCRS are equivalent in the understanding of the spatial engine. Two CRSs are equivalent if and only if the operationsApplied contain the single string no operation applied:
"operationsApplied": [
"no operation applied"
]In such cases the CRS conversion/transformation can be skipped.
Coordinate conversions and transformations can fail.
A successCount less than the input list length indicates that some of the points failed to convert/transform. (Typically it is the cartographic transformation that fails. Points which failed to convert/transform are returned as "NaN".
Request leading to partial success example
{
"fromCRS": "{\"authCode\":{\"auth\":\"EPSG\",\"code\":\"4326\"},\"name\":\"GCS_WGS_1984\",\"type\":\"LBC\",\"ver\":\"PE_10_3_1\",\"wkt\":\"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]]\"}",
"toCRS": "{\"authCode\":{\"auth\":\"OSDU\",\"code\":\"20256017\"},\"lateBoundCRS\":{\"authCode\":{\"auth\":\"EPSG\",\"code\":\"20256\"},\"name\":\"AGD_1966_AMG_Zone_56\",\"type\":\"LBC\",\"ver\":\"PE_10_3_1\",\"wkt\":\"PROJCS[\\\"AGD_1966_AMG_Zone_56\\\",GEOGCS[\\\"GCS_Australian_1966\\\",DATUM[\\\"D_Australian_1966\\\",SPHEROID[\\\"Australian\\\",6378160.0,298.25]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Transverse_Mercator\\\"],PARAMETER[\\\"False_Easting\\\",500000.0],PARAMETER[\\\"False_Northing\\\",10000000.0],PARAMETER[\\\"Central_Meridian\\\",153.0],PARAMETER[\\\"Scale_Factor\\\",0.9996],PARAMETER[\\\"Latitude_Of_Origin\\\",0.0],UNIT[\\\"Meter\\\",1.0],AUTHORITY[\\\"EPSG\\\",20256]]\"},\"name\":\"AGD66 * OGP-Aus 0.1m / AMG zone 56 [20256,15786]\",\"singleCT\":{\"authCode\":{\"auth\":\"EPSG\",\"code\":\"15786\"},\"name\":\"AGD_1966_To_WGS_1984_17_NTv2\",\"type\":\"ST\",\"ver\":\"PE_10_3_1\",\"wkt\":\"GEOGTRAN[\\\"AGD_1966_To_WGS_1984_17_NTv2\\\",GEOGCS[\\\"GCS_Australian_1966\\\",DATUM[\\\"D_Australian_1966\\\",SPHEROID[\\\"Australian\\\",6378160.0,298.25]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],METHOD[\\\"NTv2\\\"],PARAMETER[\\\"Dataset_australia/A66_National_13_09_01\\\",0.0],AUTHORITY[\\\"EPSG\\\",15786]]\"},\"type\":\"EBC\",\"ver\":\"PE_10_3_1\"}",
"points": [
{
"x": 150.0,
"y": -43.7,
"z": 0
},
{
"x": 153.69,
"y": -43.7,
"z": 0
},
{
"x": 150.0,
"y": -9.86,
"z": 0
},
{
"x": 153.69,
"y": -9.86,
"z": 0
},
{
"x": 151.845,
"y": -26.78,
"z": 0
}
]
}Response example
{
"successCount": 3,
"points": [
{
"x": 258161.26023540544,
"y": 5156882.004961207,
"z": 0
},
{
"x": 555494.9173497866,
"y": 5161025.50936315,
"z": 0
},
{
"x": "NaN",
"y": "NaN",
"z": "NaN"
},
{
"x": "NaN",
"y": "NaN",
"z": "NaN"
},
{
"x": 385073.99901601864,
"y": 7037224.258110141,
"z": 0
}
],
"operationsApplied": [
"transformation GCS_WGS_1984 to GCS_Australian_1966 using AGD_1966_To_WGS_1984_17_NTv2; 3 points successfully transformed",
"conversion from GCS_Australian_1966 to AGD_1966_AMG_Zone_56; 3 points converted"
]
}Inappropriate CRS combinations lead to unsuccessful responses. The response will contain the reasons why the operation failed. The list below lists the known error conditions:
- Could not find a conversion method for the given input.
- Invalid source and/or target CRS specification.
- Incoherent coordinate transformations; no hub CRS could be identified.
This method takes a GeoJSON FeatureCollection or AnyCrsFeatureCollection and a target CRS reference (persistable references, for example, exposed by the Spatial Reference Catalog and for 3D coordinates, the target Z-unit:
featureCollection: The GeoJSON FeatureCollection or AnyCrsFeatureCollection structure to be converted/transformed. GeoJSON is always based on WGS 84. AnyCrsFeatureCollection carries the CRS context in thepersistableReferenceCrsproperty.toCRS: The persistable reference string for the target CRS in which the response is expected. ThistoCRScontrols the measurement and unit context of the axes -x,y. Details in Axis definitions.toUnitZ: Only needed for 3D coordinates. ThetoUnitZcarries the desired vertical axis unit for this AnyCrsGeoJsonFeatureCollection as a persistable reference string. If the target CRS is WGS 84, the response will be a GeoJSON FeatureCollection and the response unitZ will be meters by definition.
The following example takes a GeoJSON polygon with coordinates in WGS 84 and vertical coordinates in meters and requests that it be converted and transformed into a projected CRS, NAD27 * OGP-Usa Conus / Louisiana South [26782,15851] and elevation in ft. The target CRS is obviously not WGS 84, thus the result is a non-standard GeoJSON feature collection with type AnyCrsFeatureCollection containing the converted result.
An example for a [ConvertGeoJsonRequest](#ConvertGeoJsonRequest):
{
"toCRS": "{\"lateBoundCRS\":{\"wkt\":\"PROJCS[\\\"NAD_1927_StatePlane_Louisiana_South_FIPS_1702\\\",GEOGCS[\\\"GCS_North_American_1927\\\",DATUM[\\\"D_North_American_1927\\\",SPHEROID[\\\"Clarke_1866\\\",6378206.4,294.9786982]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Lambert_Conformal_Conic\\\"],PARAMETER[\\\"False_Easting\\\",2000000.0],PARAMETER[\\\"False_Northing\\\",0.0],PARAMETER[\\\"Central_Meridian\\\",-91.3333333333333],PARAMETER[\\\"Standard_Parallel_1\\\",29.3],PARAMETER[\\\"Standard_Parallel_2\\\",30.7],PARAMETER[\\\"Latitude_Of_Origin\\\",28.6666666666667],UNIT[\\\"Foot_US\\\",0.304800609601219],AUTHORITY[\\\"EPSG\\\",26782]]\",\"ver\":\"PE_10_3_1\",\"name\":\"NAD_1927_StatePlane_Louisiana_South_FIPS_1702\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"26782\"},\"type\":\"LBC\"},\"singleCT\":{\"wkt\":\"GEOGTRAN[\\\"NAD_1927_To_WGS_1984_79_CONUS\\\",GEOGCS[\\\"GCS_North_American_1927\\\",DATUM[\\\"D_North_American_1927\\\",SPHEROID[\\\"Clarke_1866\\\",6378206.4,294.9786982]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],METHOD[\\\"NADCON\\\"],PARAMETER[\\\"Dataset_conus\\\",0.0],AUTHORITY[\\\"EPSG\\\",15851]]\",\"ver\":\"PE_10_3_1\",\"name\":\"NAD_1927_To_WGS_1984_79_CONUS\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"15851\"},\"type\":\"ST\"},\"ver\":\"PE_10_3_1\",\"name\":\"NAD27 * OGP-Usa Conus / Louisiana South [26782,15851]\",\"authCode\":{\"auth\":\"OSDU\",\"code\":\"26782079\"},\"type\":\"EBC\"}",
"toUnitZ": "{\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"scaleOffset\":{\"offset\":0.0,\"scale\":0.3048},\"symbol\":\"ft\",\"type\":\"USO\"}",
"featureCollection": {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"name": "A polygon with a hole."
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-92.515869140625,
29.32472016151103,
-1000
],
[
-92.537841796875,
28.555576049185973,
-1000
],
[
-91.5380859375,
28.31405305806959,
-1000
],
[
-91.56005859375,
29.046565622728846,
-1000
],
[
-92.515869140625,
29.32472016151103,
-1000
]
],
[
[
-92.13134765625,
28.94086176940557,
-1000
],
[
-92.13134765625,
28.680949728554964,
-1000
],
[
-91.86767578124999,
28.642389157900553,
-1000
],
[
-91.8896484375,
28.8831596093235,
-1000
],
[
-92.13134765625,
28.94086176940557,
-1000
]
]
]
}
}
]
}
}An example for a [ConvertGeoJsonResponse](#ConvertGeoJsonResponse):
{
"successCount": 10,
"totalCount": 10,
"featureCollection": {
"features": [
{
"geometry": {
"coordinates": [
[
[
1623199.0684313627,
241162.24900275152,
-3280.839895013123
],
[
1613254.3498838635,
-38458.39547216708,
-3280.839895013123
],
[
1934125.5158272136,
-128273.03385216261,
-3280.839895013123
],
[
1927583.5376134154,
138142.61888119436,
-3280.839895013123
],
[
1623199.0684313627,
241162.24900275152,
-3280.839895013123
]
],
[
[
1744758.669107775,
100518.15156956631,
-3280.839895013123
],
[
1744099.2790491593,
5998.321335534272,
-3280.839895013123
],
[
1828596.3197773872,
-8516.083011477729,
-3280.839895013123
],
[
1821972.905298972,
79078.3264942808,
-3280.839895013123
],
[
1744758.669107775,
100518.15156956631,
-3280.839895013123
]
]
],
"type": "AnyCrsPolygon",
"bbox": null
},
"properties": {
"name": "A polygon with a hole."
},
"type": "AnyCrsFeature",
"bbox": null
}
],
"properties": null,
"persistableReferenceCrs": "{\"lateBoundCRS\":{\"wkt\":\"PROJCS[\\\"NAD_1927_StatePlane_Louisiana_South_FIPS_1702\\\",GEOGCS[\\\"GCS_North_American_1927\\\",DATUM[\\\"D_North_American_1927\\\",SPHEROID[\\\"Clarke_1866\\\",6378206.4,294.9786982]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Lambert_Conformal_Conic\\\"],PARAMETER[\\\"False_Easting\\\",2000000.0],PARAMETER[\\\"False_Northing\\\",0.0],PARAMETER[\\\"Central_Meridian\\\",-91.3333333333333],PARAMETER[\\\"Standard_Parallel_1\\\",29.3],PARAMETER[\\\"Standard_Parallel_2\\\",30.7],PARAMETER[\\\"Latitude_Of_Origin\\\",28.6666666666667],UNIT[\\\"Foot_US\\\",0.304800609601219],AUTHORITY[\\\"EPSG\\\",26782]]\",\"ver\":\"PE_10_3_1\",\"name\":\"NAD_1927_StatePlane_Louisiana_South_FIPS_1702\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"26782\"},\"type\":\"LBC\"},\"singleCT\":{\"wkt\":\"GEOGTRAN[\\\"NAD_1927_To_WGS_1984_79_CONUS\\\",GEOGCS[\\\"GCS_North_American_1927\\\",DATUM[\\\"D_North_American_1927\\\",SPHEROID[\\\"Clarke_1866\\\",6378206.4,294.9786982]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],METHOD[\\\"NADCON\\\"],PARAMETER[\\\"Dataset_conus\\\",0.0],AUTHORITY[\\\"EPSG\\\",15851]]\",\"ver\":\"PE_10_3_1\",\"name\":\"NAD_1927_To_WGS_1984_79_CONUS\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"15851\"},\"type\":\"ST\"},\"ver\":\"PE_10_3_1\",\"name\":\"NAD27 * OGP-Usa Conus / Louisiana South [26782,15851]\",\"authCode\":{\"auth\":\"OSDU\",\"code\":\"26782079\"},\"type\":\"EBC\"}",
"persistableReferenceUnitZ": "{\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"scaleOffset\":{\"offset\":0.0,\"scale\":0.3048},\"symbol\":\"ft\",\"type\":\"USO\"}",
"type": "AnyCrsFeatureCollection",
"bbox": null
},
"operationsApplied": [
"transformation GCS_WGS_1984 to GCS_North_American_1927 using NAD_1927_To_WGS_1984_79_CONUS; 10 points successfully transformed",
"conversion from GCS_North_American_1927 to NAD_1927_StatePlane_Louisiana_South_FIPS_1702; 10 points converted",
"Z-axis unit conversion from m to ft"
]
}Open Try it out or Try it out in new window
| Name | Type | Description | Notes |
|---|---|---|---|
| fromCRS | str | Source CRS as persistable reference string | |
| toCRS | str | Target CRS as persistable reference string | |
| points | list[Point] | List of points to be converted |
| Name | Type | Description | Notes |
|---|---|---|---|
| successCount | int | Number of points successfully converted. If the number is less than the request array length, conversion/transformation failures occurred. Individual points, which failed to convert/transform, are represented as "NaN". | |
| points | list[Point] | Converted points; length and order of the array is the same as in the request. Points, which failed to convert, are returned as NaN. | |
| operationsApplied | list[string] | The operations (conversions and/or transformation) applied to the points. |
| Name | Type | Description | Notes |
|---|---|---|---|
| featureCollection | AnyCrsGeoJsonFeatureCollection | The GeoJSON FeatureCollection or non-GeoJSON AnyCrsFeatureCollection to be converted. The fromCRS is either WGS 84 for GeoJSON or AnyCrsFeatureCollection.persistableReference. | |
| toCRS | str | The GeoJSON FeatureCollection or AnyCrsFeatureCollection structure to be converted/transformed. GeoJSON is always based on WGS 84; AnyCrsFeatureCollection carries the CRS context in the persistableReferenceCrs property. | |
| toUnitZ | str | The vertical axis unit for this AnyCrsGeoJsonFeatureCollection as a persistable reference string. Not required for 2D coordinates. | [optional] |
| Name | Type | Description | Notes |
|---|---|---|---|
| totalCount | int | The total number of coordinates in the GeoJSON FeatureCollection or AnyCrsFeatureCollection. | |
| successCount | int | The number of coordinates in the GeoJSON FeatureCollection or AnyCrsFeatureCollection that were successfully converted/transformed. If this number is less than totalCount, then conversion/transformation errors have occurred. Unconverted coordinates are marked as "NaN". | |
| featureCollection | AnyCrsGeoJsonFeatureCollection | ||
| operationsApplied | list[str] | The list of operations, which have been applied to the points. |
| Name | Type | Description | Notes |
|---|---|---|---|
| type | str | Either FeatureCollection for standard GeoJSON or AnyCrsFeatureCollection for non-standard. | required |
| features | list[AnyCrsGeoJsonFeature] | required | |
| bbox | list[double] | The rectangular bounding box. It has the same dimensions as coordinates: [west, south, east, north] or [west, south, min-elevation, east, north, max-elevation]. | [optional] |
| persistableReferenceCrs | str | The spatial context of this AnyCrsGeoJsonFeatureCollection as persistable reference string. | [optional] |
| persistableReferenceUnitZ | str | The vertical axis unit for this AnyCrsGeoJsonFeatureCollection as persistable reference string. | [optional] |
| Name | Type | Description | Notes |
|---|---|---|---|
| type | str | Either Feature for standard GeoJSON or AnyCrsFeature for non-standard. | required |
| properties | AnyProperty | required | |
| geometry | AnyCrsGeoJsonFeatureGeometry | required | |
| bbox | list[double] | The rectangular bounding box. It has the same dimensions as coordinates: [west, south, east, north] or [west, south, min-elevation, east, north, max-elevation]. | [optional] |
| Name | Type | Description | Notes |
|---|---|---|---|
| type | str | The geometry type enumeration. For GeoJSON standard the allowed values are: "Point", "LineString", "Polygon", "MultiPoint", "MultiLineString", "MultiPolygon", "GeometryCollection". For non-standard AnyCrsFeature geometries, the allowed values are: "AnyCrsPoint", "AnyCrsLineString", "AnyCrsPolygon", "AnyCrsMultiPoint", "AnyCrsMultiLineString", "AnyCrsMultiPolygon", "AnyCrsGeometryCollection". | required |
| coordinates | object | Depending on type, a 2D, 3D, or 4D array of 2D or 3D coordinate arrays. | |
| bbox | list[double] | The rectangular bounding box. It has the same dimensions as coordinates: [west, south, east, north] or [west, south, min-elevation, east, north, max-elevation]. | [optional] |
| Name | Type | Description | Notes |
|---|---|---|---|
| x | double | x coordinate or longitude | |
| y | double | y coordinate or latitude | |
| z | double | z coordinate |
Convert a list of trajectory stations, given the unit, spatial context, and a reference point in 3D where MD==0. The definition of the frame of reference is paramount. Details are listed in the description of the ConvertTrajectoryRequest structure.
The service uses the minimum curvature method and, if requested by "interpolate": true, performs smart interpolation such that the resulting polyline can be linearly interpolated with an error of less than 0.05 meter.
Only conversions from MD, inclination, and azimuth input are supported.
Below is an example of a trajectory conversion request and response.
An example for a [ConvertTrajectoryRequest](#ConvertTrajectoryRequest):
{
"azimuthReference": "TN",
"interpolate": true,
"referencePoint": {
"y": 6500000,
"x": 400000,
"z": 0
},
"unitZ": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}",
"inputStations": [
{
"md": 0,
"azimuth": 0,
"inclination": 0
},
{
"md": 1000,
"azimuth": 0,
"inclination": 0
},
{
"md": 2000,
"azimuth": 0,
"inclination": 90
},
{
"md": 3000,
"azimuth": 0,
"inclination": 90
},
{
"md": 5000,
"azimuth": 90,
"inclination": 90
},
{
"md": 6000,
"azimuth": 90,
"inclination": 90
}
],
"trajectoryCRS": "{\"wkt\":\"PROJCS[\\\"WGS_1984_UTM_Zone_31N\\\",GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Transverse_Mercator\\\"],PARAMETER[\\\"False_Easting\\\",500000.0],PARAMETER[\\\"False_Northing\\\",0.0],PARAMETER[\\\"Central_Meridian\\\",3.0],PARAMETER[\\\"Scale_Factor\\\",0.9996],PARAMETER[\\\"Latitude_Of_Origin\\\",0.0],UNIT[\\\"Meter\\\",1.0],AUTHORITY[\\\"EPSG\\\",32631]]\",\"ver\":\"PE_10_3_1\",\"name\":\"WGS_1984_UTM_Zone_31N\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"32631\"},\"type\":\"LBC\"}",
"inputKind": "MD_Incl_Azim",
"unitXY": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}",
"method": "AzimuthalEquidistant"
}Open Try it out or Try it out in new window
Here the response:
An example for a [ConvertTrajectoryResponse](#ConvertTrajectoryResponse):
{
"trajectoryCRS": "{\"wkt\":\"PROJCS[\\\"WGS_1984_UTM_Zone_31N\\\",GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Transverse_Mercator\\\"],PARAMETER[\\\"False_Easting\\\",500000.0],PARAMETER[\\\"False_Northing\\\",0.0],PARAMETER[\\\"Central_Meridian\\\",3.0],PARAMETER[\\\"Scale_Factor\\\",0.9996],PARAMETER[\\\"Latitude_Of_Origin\\\",0.0],UNIT[\\\"Meter\\\",1.0],AUTHORITY[\\\"EPSG\\\",32631]]\",\"ver\":\"PE_10_3_1\",\"name\":\"WGS_1984_UTM_Zone_31N\",\"authCode\":{\"auth\":\"EPSG\",\"code\":\"32631\"},\"type\":\"LBC\"}",
"unitXY": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}",
"unitZ": "{\"scaleOffset\":{\"scale\":1.0,\"offset\":0.0},\"symbol\":\"m\",\"baseMeasurement\":{\"ancestry\":\"Length\",\"type\":\"UM\"},\"type\":\"USO\"}",
"unitDls": "{\"scaleOffset\":{\"scale\":5.81776417331443E-4,\"offset\":0.0},\"symbol\":\"deg/30m\",\"baseMeasurement\":{\"ancestry\":\"Rotation_Per_Length\",\"type\":\"UM\"},\"type\":\"USO\"}",
"stations": [
{
"md": 0,
"inclination": 0,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 0,
"point": {
"x": 400000,
"y": 6500000,
"z": 0
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.62877104866187,
"dls": 0,
"original": true,
"dz": 0
},
{
"md": 1000,
"inclination": 0,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 0,
"point": {
"x": 400000,
"y": 6500000,
"z": -1000
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.62877104866187,
"dls": 0,
"original": true,
"dz": 1000
},
{
"md": 1015.625,
"inclination": 1.4062500000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 0.19173797306384077,
"point": {
"x": 400000.0049192315,
"y": 6500000.191621652,
"z": -1015.6234313158773
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.62877277000361,
"dls": 2.7,
"original": false,
"dz": 1015.6234313158773
},
{
"md": 1031.25,
"inclination": 2.8125000000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 0.7668363964699341,
"point": {
"x": 400000.01967396325,
"y": 6500000.766371176,
"z": -1031.2374516609275
},
"wgs84Longitude": 1.2778067531834363,
"wgs84Latitude": 58.62877793299193,
"dls": 2.7,
"original": false,
"dz": 1031.2374516609275
},
{
"md": 1046.875,
"inclination": 4.218750000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 1.7249488524323355,
"point": {
"x": 400000.0442553093,
"y": 6500001.723902367,
"z": -1046.8326557331407
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.628786534516834,
"dls": 2.7,
"original": false,
"dz": 1046.8326557331407
},
{
"md": 1062.5,
"inclination": 5.625000000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 3.0654982098337045,
"point": {
"x": 400000.0786484652,
"y": 6500003.063638443,
"z": -1062.3996495647261
},
"wgs84Longitude": 1.277806753183436,
"wgs84Latitude": 58.628798569397084,
"dls": 2.7,
"original": false,
"dz": 1062.3996495647261
},
{
"md": 1078.125,
"inclination": 7.031250000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 4.787676971867511,
"point": {
"x": 400000.1228327177,
"y": 6500004.784772394,
"z": -1077.929056180687
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.62881403038324,
"dls": 2.7,
"original": false,
"dz": 1077.929056180687
},
{
"md": 1093.75,
"inclination": 8.437500000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 6.890447762443923,
"point": {
"x": 400000.1767814569,
"y": 6500006.88626748,
"z": -1093.4115212471597
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.62883290816225,
"dls": 2.7,
"original": false,
"dz": 1093.4115212471597
},
{
"md": 1109.375,
"inclination": 9.843750000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 9.372543951066355,
"point": {
"x": 400000.24046219175,
"y": 6500009.366857837,
"z": -1108.8377187061146
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.628855191362774,
"dls": 2.7,
"original": false,
"dz": 1108.8377187061146
},
{
"md": 1125,
"inclination": 11.250000000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 12.232470415802338,
"point": {
"x": 400000.3138365702,
"y": 6500012.225049244,
"z": -1124.1983563930257
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.62888086656219,
"dls": 2.7,
"original": false,
"dz": 1124.1983563930257
},
{
"md": 1140.625,
"inclination": 12.656250000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 15.468504443889053,
"point": {
"x": 400000.39686040225,
"y": 6500015.459120036,
"z": -1139.4841816341213
},
"wgs84Longitude": 1.2778067531834378,
"wgs84Latitude": 58.62890991829469,
"dls": 2.7,
"original": false,
"dz": 1139.4841816341213
},
{
"md": 1156.25,
"inclination": 14.062500000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 19.078696769431087,
"point": {
"x": 400000.4894836864,
"y": 6500019.067122132,
"z": -1154.6859868198499
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.62894232906055,
"dls": 2.7,
"original": false,
"dz": 1154.6859868198499
},
{
"md": 1171.875,
"inclination": 15.468750000000002,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 23.060872747565316,
"point": {
"x": 400000.59165063966,
"y": 6500023.046882204,
"z": -1169.7946149511997
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.62897807933672,
"dls": 2.7,
"original": false,
"dz": 1169.7946149511997
},
{
"md": 1187.5,
"inclination": 16.875000000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 27.412633664385673,
"point": {
"x": 400000.70329973137,
"y": 6500027.39600299,
"z": -1184.8009651555326
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.62901714758845,
"dls": 2.7,
"original": false,
"dz": 1184.8009651555326
},
{
"md": 1203.125,
"inclination": 18.28125,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 32.13135818183867,
"point": {
"x": 400000.82436372,
"y": 6500032.111864746,
"z": -1199.695998168609
},
"wgs84Longitude": 1.277806753183436,
"wgs84Latitude": 58.62905951028247,
"dls": 2.7,
"original": false,
"dz": 1199.695998168609
},
{
"md": 1218.75,
"inclination": 19.687500000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 37.21420391671949,
"point": {
"x": 400000.95476969396,
"y": 6500037.1916268105,
"z": -1214.470741779503
},
"wgs84Longitude": 1.2778067531834363,
"wgs84Latitude": 58.62910514190099,
"dls": 2.7,
"original": false,
"dz": 1214.470741779503
},
{
"md": 1234.375,
"inclination": 21.09375,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 42.65810915281726,
"point": {
"x": 400001.0944391149,
"y": 6500042.632229322,
"z": -1229.1162962351266
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.62915401495717,
"dls": 2.7,
"original": false,
"dz": 1229.1162962351266
},
{
"md": 1250,
"inclination": 22.500000000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 48.4597946851785,
"point": {
"x": 400001.2432878657,
"y": 6500048.43039507,
"z": -1243.623839601108
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.62920610001167,
"dls": 2.7,
"original": false,
"dz": 1243.623839601108
},
{
"md": 1265.625,
"inclination": 23.906250000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 54.61576579537751,
"point": {
"x": 400001.40122630046,
"y": 6500054.582631451,
"z": -1257.9846330757962
},
"wgs84Longitude": 1.2778067531834363,
"wgs84Latitude": 58.62926136569025,
"dls": 2.7,
"original": false,
"dz": 1257.9846330757962
},
{
"md": 1281.25,
"inclination": 25.312500000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 61.122314356604086,
"point": {
"x": 400001.56815929903,
"y": 6500061.0852325875,
"z": -1272.1900262541863
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.62931977870291,
"dls": 2.7,
"original": false,
"dz": 1272.1900262541863
},
{
"md": 1296.875,
"inclination": 26.718750000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 67.97552106730048,
"point": {
"x": 400001.74398632377,
"y": 6500067.934281556,
"z": -1286.2314623386012
},
"wgs84Longitude": 1.277806753183436,
"wgs84Latitude": 58.62938130386372,
"dls": 2.7,
"original": false,
"dz": 1286.2314623386012
},
{
"md": 1312.5,
"inclination": 28.125000000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 75.17125781200205,
"point": {
"x": 400001.9286014805,
"y": 6500075.125652745,
"z": -1300.1004832929873
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.62944590411215,
"dls": 2.7,
"original": false,
"dz": 1300.1004832929873
},
{
"md": 1328.125,
"inclination": 29.53125,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 82.70519014795971,
"point": {
"x": 400002.12189358176,
"y": 6500082.655014336,
"z": -1313.7887349377174
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.62951354053529,
"dls": 2.7,
"original": false,
"dz": 1313.7887349377174
},
{
"md": 1343.75,
"inclination": 30.937500000000004,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 90.5727799160462,
"point": {
"x": 400002.3237462144,
"y": 6500090.51783093,
"z": -1327.2879719818377
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.62958417239146,
"dls": 2.7,
"original": false,
"dz": 1327.2879719818377
},
{
"md": 1359.375,
"inclination": 32.34375000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 98.76928797437331,
"point": {
"x": 400002.534037809,
"y": 6500098.709366254,
"z": -1340.5900629897217
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.62965775713455,
"dls": 2.7,
"original": false,
"dz": 1340.5900629897217
},
{
"md": 1375,
"inclination": 33.75000000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 107.28977705297389,
"point": {
"x": 400002.7526417133,
"y": 6500107.224686031,
"z": -1353.6869952791433
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.62973425043972,
"dls": 2.7,
"original": false,
"dz": 1353.6869952791433
},
{
"md": 1390.625,
"inclination": 35.156250000000014,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 116.12911472782864,
"point": {
"x": 400002.9794262687,
"y": 6500116.058660954,
"z": -1366.5708797478173
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.62981360623019,
"dls": 2.7,
"original": false,
"dz": 1366.5708797478173
},
{
"md": 1406.25,
"inclination": 36.5625,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 125.28197651244625,
"point": {
"x": 400003.21425488923,
"y": 6500125.205969765,
"z": -1379.2339556254994
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.62989577670491,
"dls": 2.7,
"original": false,
"dz": 1379.2339556254994
},
{
"md": 1421.875,
"inclination": 37.96875000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 134.74284906513535,
"point": {
"x": 400003.4569861437,
"y": 6500134.661102464,
"z": -1391.6685951487837
},
"wgs84Longitude": 1.2778067531834363,
"wgs84Latitude": 58.62998071236734,
"dls": 2.7,
"original": false,
"dz": 1391.6685951487837
},
{
"md": 1437.5,
"inclination": 39.37500000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 144.5060335100349,
"point": {
"x": 400003.7074738411,
"y": 6500144.418363632,
"z": -1403.8673081557822
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63006836205527,
"dls": 2.7,
"original": false,
"dz": 1403.8673081557822
},
{
"md": 1453.125,
"inclination": 40.78125000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 154.56564886990435,
"point": {
"x": 400003.9655671185,
"y": 6500154.471875859,
"z": -1415.8227465979194
},
"wgs84Longitude": 1.2778067531834378,
"wgs84Latitude": 58.63015867297174,
"dls": 2.7,
"original": false,
"dz": 1415.8227465979194
},
{
"md": 1468.75,
"inclination": 42.1875,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 164.91563560860405,
"point": {
"x": 400004.2311105317,
"y": 6500164.815583287,
"z": -1427.5277089661197
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.6302515907167,
"dls": 2.7,
"original": false,
"dz": 1427.5277089661197
},
{
"md": 1484.375,
"inclination": 43.59375000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 175.54975928113367,
"point": {
"x": 400004.50394414924,
"y": 6500175.443255246,
"z": -1438.9751446287296
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.63034705931985,
"dls": 2.7,
"original": false,
"dz": 1438.9751446287296
},
{
"md": 1500,
"inclination": 45.00000000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 186.46161428902835,
"point": {
"x": 400004.78390364826,
"y": 6500186.348490028,
"z": -1450.158158078553
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.63044502127438,
"dls": 2.7,
"original": false,
"dz": 1450.158158078553
},
{
"md": 1515.625,
"inclination": 46.40625000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 197.6446277388518,
"point": {
"x": 400005.0708204136,
"y": 6500197.524718724,
"z": -1461.0700130864477
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.630545417571575,
"dls": 2.7,
"original": false,
"dz": 1461.0700130864477
},
{
"md": 1531.25,
"inclination": 47.81250000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 209.0920634014617,
"point": {
"x": 400005.3645216393,
"y": 6500208.965209193,
"z": -1471.7041367589773
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.630648187736305,
"dls": 2.7,
"original": false,
"dz": 1471.7041367589773
},
{
"md": 1546.875,
"inclination": 49.21875000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 220.79702576966204,
"point": {
"x": 400005.6648304326,
"y": 6500220.663070106,
"z": -1482.054123497677
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.63075326986357,
"dls": 2.7,
"original": false,
"dz": 1482.054123497677
},
{
"md": 1562.5,
"inclination": 50.62500000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 232.75246421179904,
"point": {
"x": 400005.97156592074,
"y": 6500232.611255111,
"z": -1492.1137388575464
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.63086060065572,
"dls": 2.7,
"original": false,
"dz": 1492.1137388575464
},
{
"md": 1578.125,
"inclination": 52.03125000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 244.95117721879768,
"point": {
"x": 400006.28454335907,
"y": 6500244.802567066,
"z": -1501.876923302446
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63097011546057,
"dls": 2.7,
"original": false,
"dz": 1501.876923302446
},
{
"md": 1593.75,
"inclination": 53.43750000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 257.38581674208194,
"point": {
"x": 400006.6035742435,
"y": 6500257.229662377,
"z": -1511.337795855135
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.6310817483104,
"dls": 2.7,
"original": false,
"dz": 1511.337795855135
},
{
"md": 1609.375,
"inclination": 54.84375000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 270.0488926197639,
"point": {
"x": 400006.92846642266,
"y": 6500269.885055432,
"z": -1520.4906576397525
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.63119543196165,
"dls": 2.7,
"original": false,
"dz": 1520.4906576397525
},
{
"md": 1625,
"inclination": 56.25000000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 282.9327770884381,
"point": {
"x": 400007.2590242147,
"y": 6500282.761123087,
"z": -1529.3299953146075
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.63131109793542,
"dls": 2.7,
"original": false,
"dz": 1529.3299953146075
},
{
"md": 1640.625,
"inclination": 57.65625000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 296.0297093778598,
"point": {
"x": 400007.59504852444,
"y": 6500295.850109286,
"z": -1537.850484393208
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63142867655876,
"dls": 2.7,
"original": false,
"dz": 1537.850484393208
},
{
"md": 1656.25,
"inclination": 59.0625,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 309.33180038574363,
"point": {
"x": 400007.9363369635,
"y": 6500309.144129707,
"z": -1546.046992451535
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63154809700659,
"dls": 2.7,
"original": false,
"dz": 1546.046992451535
},
{
"md": 1671.875,
"inclination": 60.468750000000014,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 322.83103742986384,
"point": {
"x": 400008.2826839721,
"y": 6500322.635176529,
"z": -1553.9145822196215
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.6316692873444,
"dls": 2.7,
"original": false,
"dz": 1553.9145822196215
},
{
"md": 1687.5,
"inclination": 61.87500000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 336.51928907459404,
"point": {
"x": 400008.6338809429,
"y": 6500336.31512325,
"z": -1561.448514555579
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.63179217457155,
"dls": 2.7,
"original": false,
"dz": 1561.448514555579
},
{
"md": 1703.125,
"inclination": 63.281250000000014,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 350.3883100289802,
"point": {
"x": 400008.98971634655,
"y": 6500350.175729581,
"z": -1568.6442513002808
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63191668466529,
"dls": 2.7,
"original": false,
"dz": 1568.6442513002808
},
{
"md": 1718.75,
"inclination": 64.68750000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 364.4297461133952,
"point": {
"x": 400009.34997585916,
"y": 6500364.208646409,
"z": -1575.4974580109774
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.63204274262531,
"dls": 2.7,
"original": false,
"dz": 1575.4974580109774
},
{
"md": 1734.375,
"inclination": 66.09375,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 378.6351392917851,
"point": {
"x": 400009.7144424911,
"y": 6500378.40542083,
"z": -1582.0040065722037
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.632170272518906,
"dls": 2.7,
"original": false,
"dz": 1582.0040065722037
},
{
"md": 1750,
"inclination": 67.50000000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 392.99593276647323,
"point": {
"x": 400010.08289671806,
"y": 6500392.757501238,
"z": -1588.1599776824028
},
"wgs84Longitude": 1.2778067531834363,
"wgs84Latitude": 58.63229919752677,
"dls": 2.7,
"original": false,
"dz": 1588.1599776824028
},
{
"md": 1765.625,
"inclination": 68.90625000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 407.50347613245486,
"point": {
"x": 400010.45511661284,
"y": 6500407.256242471,
"z": -1593.961663214764
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.632429439989174,
"dls": 2.7,
"original": false,
"dz": 1593.961663214764
},
{
"md": 1781.25,
"inclination": 70.31250000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 422.14903058807846,
"point": {
"x": 400010.83087797917,
"y": 6500421.892911032,
"z": -1599.405568450862
},
"wgs84Longitude": 1.2778067531834363,
"wgs84Latitude": 58.63256092145287,
"dls": 2.7,
"original": false,
"dz": 1599.405568450862
},
{
"md": 1796.875,
"inclination": 71.71875000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 436.9237741989723,
"point": {
"x": 400011.20995448704,
"y": 6500436.658690338,
"z": -1604.4884141857426
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.632693562718295,
"dls": 2.7,
"original": false,
"dz": 1604.4884141857426
},
{
"md": 1812.5,
"inclination": 73.125,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 451.81880721204874,
"point": {
"x": 400011.59211780824,
"y": 6500451.544686034,
"z": -1609.2071387031956
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.6328272838872,
"dls": 2.7,
"original": false,
"dz": 1609.2071387031956
},
{
"md": 1828.125,
"inclination": 74.53125000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 466.82515741638167,
"point": {
"x": 400011.9771377547,
"y": 6500466.541931355,
"z": -1613.5588996200158
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63296200441092,
"dls": 2.7,
"original": false,
"dz": 1613.5588996200158
},
{
"md": 1843.75,
"inclination": 75.93750000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 481.93378554773153,
"point": {
"x": 400012.3647824165,
"y": 6500481.641392518,
"z": -1617.5410755981502
},
"wgs84Longitude": 1.2778067531834376,
"wgs84Latitude": 58.633097643138775,
"dls": 2.7,
"original": false,
"dz": 1617.5410755981502
},
{
"md": 1859.375,
"inclination": 77.34375,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 497.1355907334602,
"point": {
"x": 400012.7548183017,
"y": 6500496.83397417,
"z": -1621.1512679236923
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.63323411836699,
"dls": 2.7,
"original": false,
"dz": 1621.1512679236923
},
{
"md": 1875,
"inclination": 78.75000000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 512.4214159745557,
"point": {
"x": 400013.14701047743,
"y": 6500512.110524874,
"z": -1624.3873019517791
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.633371347888,
"dls": 2.7,
"original": false,
"dz": 1624.3873019517791
},
{
"md": 1890.625,
"inclination": 80.15625000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 527.7820536614666,
"point": {
"x": 400013.54112271045,
"y": 6500527.461842599,
"z": -1627.247228416515
},
"wgs84Longitude": 1.277806753183437,
"wgs84Latitude": 58.63350924903976,
"dls": 2.7,
"original": false,
"dz": 1627.247228416515
},
{
"md": 1906.25,
"inclination": 81.56250000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 543.2082511204219,
"point": {
"x": 400013.9369176104,
"y": 6500542.8786802925,
"z": -1629.7293246051374
},
"wgs84Longitude": 1.2778067531834374,
"wgs84Latitude": 58.63364773875579,
"dls": 2.7,
"original": false,
"dz": 1629.7293246051374
},
{
"md": 1921.875,
"inclination": 82.96875000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 558.6907161868944,
"point": {
"x": 400014.3341567719,
"y": 6500558.351751421,
"z": -1631.8320953957136
},
"wgs84Longitude": 1.2778067531834358,
"wgs84Latitude": 58.633786733614976,
"dls": 2.7,
"original": false,
"dz": 1631.8320953957136
},
{
"md": 1937.5,
"inclination": 84.375,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 574.2201228028554,
"point": {
"x": 400014.73260091903,
"y": 6500573.871735587,
"z": -1633.5542741577476
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.63392614989202,
"dls": 2.7,
"original": false,
"dz": 1633.5542741577476
},
{
"md": 1953.125,
"inclination": 85.78125000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 589.7871166344406,
"point": {
"x": 400015.1320100486,
"y": 6500589.429284131,
"z": -1634.8948235151488
},
"wgs84Longitude": 1.2778067531834365,
"wgs84Latitude": 58.63406590360772,
"dls": 2.7,
"original": false,
"dz": 1634.8948235151488
},
{
"md": 1968.75,
"inclination": 87.18750000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 605.3823207066539,
"point": {
"x": 400015.53214357526,
"y": 6500605.0150257675,
"z": -1635.8529359711115
},
"wgs84Longitude": 1.2778067531834372,
"wgs84Latitude": 58.63420591057964,
"dls": 2.7,
"original": false,
"dz": 1635.8529359711115
},
{
"md": 1984.375,
"inclination": 88.59375000000001,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 620.9963410517042,
"point": {
"x": 400015.93276047625,
"y": 6500620.619572232,
"z": -1636.4280343945175
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.63434608647283,
"dls": 2.7,
"original": false,
"dz": 1636.4280343945175
},
{
"md": 2000,
"inclination": 90,
"azimuthTN": 0,
"azimuthGN": 1.4705504660493034,
"dxTN": 0,
"dyTN": 636.6197723675813,
"point": {
"x": 400016.3336194366,
"y": 6500636.233523927,
"z": -1636.6197723675814
},
"wgs84Longitude": 1.2778067531834367,
"wgs84Latitude": 58.634486346850565,
"dls": 2.7,
"original": true,
"dz": 1636.6197723675814
}
],
"localCRS": "{\"name\":\"Azimuthal Equidistant Lng=1.27780675;Lat=58.62877105\",\"type\":\"LBC\",\"ver\":\"PE_10_3_1\",\"wkt\":\"PROJCS[\\\"Azimuthal Equidistant Lng=1.27780675;Lat=58.62877105\\\",GEOGCS[\\\"GCS_WGS_1984\\\",DATUM[\\\"D_WGS_1984\\\",SPHEROID[\\\"WGS_1984\\\",6378137.0,298.257223563]],PRIMEM[\\\"Greenwich\\\",0.0],UNIT[\\\"Degree\\\",0.0174532925199433]],PROJECTION[\\\"Azimuthal_Equidistant\\\"],PARAMETER[\\\"False_Easting\\\",0.0],PARAMETER[\\\"False_Northing\\\",0.0],PARAMETER[\\\"Central_Meridian\\\",1.277806753183437],PARAMETER[\\\"Latitude_Of_Origin\\\",58.62877104866187],UNIT[\\\"Meter\\\",1.0]]\"}",
"method": "AzimuthalEquidistant",
"operationsApplied": [
"derived GN from TN azimuth by grid convergence 1.470550",
"Using OSDU Drilling's trajectory computation engine",
"Performed trajectory calculation for each of the 3 input survey station.",
"Added 63 interpolated stations to the original 3 trajectory stations.",
"computation method: AzimuthalEquidistant",
"conversion from 'Azimuthal Equidistant Lng=1.27780675;Lat=58.62877105' to 'GCS_WGS_1984'",
"conversion from 'GCS_WGS_1984' to 'WGS_1984_UTM_Zone_31N'",
"to WGS 84: conversion from WGS_1984_UTM_Zone_31N to GCS_WGS_1984; 66 points converted"
],
"inputKind": "MD_Incl_Azim"
}| Name | Type | Description | Notes |
|---|---|---|---|
| trajectoryCrs | str | Coordinate reference system for the reference point. Typically the CRS is a projected CRS. If a geographic CRS is provided, the unitXY must be defined and the azimuthReference must be TrueNorth. | |
| azimuthReference | str | Azimuth reference for the input trajectory station azimuth values (TrueNorth or GridNorth). | |
| unitXY | str | The horizontal unit of the dx and dy in the input trajectory stations. The unit must be a length unit in 'persistable reference' format. See example. | |
| unitZ | str | The vertical unit of the dz in the input trajectory stations. The unit must be a length unit in 'persistable reference' format. See example. | |
| referencePoint | Point | The 3D reference point in the 'trajectoryCRS' where MD==0. | |
| inputStations | list[TrajectoryStationIn] | The array of input trajectory stations. | |
| method | str | The computation method: 'AzimuthalEquidistant' (default) or 'LMP' (Lee's modified proposal SPE96813). | |
| interpolate | bool | Perform trajectory interpolation on demand. The default is true. | [optional] |
| Name | Type | Description | Notes |
|---|---|---|---|
| md | double | MD (measured depth) from vertical reference point in 'unitZ'. | |
| inclination | double | Inclination angle in degrees of arc. 0.0 is vertical, 90.0 is horizontal. | |
| azimuth | double | Azimuth angle in degrees of arc, 0.0/360.0 is North. Reference given by azimuthReference (TrueNorth or GridNorth). | |
| dx | double | E-W deviation in the local Cartesian engineering CRS from the well reference point. The unit is given by container's 'unitXY' or projected 'trajectoryCRS'. | |
| dy | double | N-S deviation in the local Cartesian engineering CRS from the well reference point. Y is aligned with the azimuth reference (TrueNorth or projected GridNorth). The unit is given by container's 'unitXY' or projected 'trajectoryCRS'. | |
| dz | double | True vertical deviation in the local Cartesian engineering CRS from the well reference point. The unit is given by container's unitZ, downwards positive. |
| Name | Type | Description | Notes |
|---|---|---|---|
| trajectoryCrs | str | Coordinate reference system for the reference point. Typically the CRS is a projected CRS. If a geographic CRS is provided, the unitXY must be defined and the azimuthReference must be TrueNorth. | |
| unitXY | str | The horizontal unit of the dx, dy in the output trajectory stations. | |
| unitZ | str | The vertical unit of the dz in the output trajectory stations. | |
| unitDls | str | The unit of the dog leg severity (DLS) in the output trajectory stations. | |
| stations | list[TrajectoryStationOut] | Computed trajectory stations. | |
| localCRS | str | Coordinate reference system for the local, true north oriented, true distance, engineering CRS with origin at the well's surface location. | |
| method | str | The computation method used: 'AzimuthalEquidistant' (default) or 'LMP' (Lee's modified proposal SPE96813). LMP is not yet supported. | |
| operationsApplied | list[string] | The operations (conversions and/or transformation) applied to the points. |
| Name | Type | Description | Notes |
|---|---|---|---|
| md | double | MD (measured depth) from the vertical reference point in 'unitZ'. | |
| inclination | double | Inclination angle in degrees of arc, 0.0 is vertical, 90.0 is horizontal. | |
| azimuthTN | double | True north azimuth angle in degrees of arc, 0.0/360.0 is north. | |
| azimuthGN | double | Grid north azimuth angle in degrees of arc, 0.0/360.0 is north. | |
| dxTN | double | True E-W deviation in the local Cartesian engineering CRS from the well reference point. The unit is given by container's 'unitXY'. | |
| dyTN | double | True N-S deviation in the local Cartesian engineering CRS from the well reference point. Y is aligned with TrueNorth. The unit is given by container's 'unitXY'. | |
| point | Point | Trajectory station point in trajectoryCRS and vertical unit as defined in container's 'unitZ'. point.z is an elevation, positive upwards. -point.z corresponds to TVDSS (true vertical depth sub-sea). | |
| wgs84Longitude | double | WGS 84 longitude in dega. | |
| wgs84Latitude | double | WGS 84 latitude in dega. | |
| dls | double | Curvature, Dog Leg Severity, measured in 'unitDls'. | |
| original | bool | Original trajectory station if true, interpolated trajectory station if false. | |
| dz | double | The relative true vertical depth measured from the reference point, downwards positively increasing. Also known as TVD (true vertical depth) |
The CRS Converter is sensitive to 'bad numbers', numbers that are outside the valid range given a coordinate reference system. This is never a problem with 'proper coordinates' in the range supported by the coordinate reference system. Cases have been reported where, for example, coordinates close to the poles caused infinite loops in the Esri engine. This means the conversion request times out, and the loop keeps running until the service instance is terminated. Of course the performance degrades over time. Unfortunately there are no quick tests whether specific coordinates are close to a singularity. The numeric ranges vary from CRS to CRS. The engine does not offer a validation of coordinates. Only geographic CRSs allow that: number must be inside +90, -90 degrees latitude and +180, -180 degrees longitude. 'Proper coordinates' are stable for projection and de-projection round-trips. Coordinate values outside the supported range show drift or large errors during round-tripping.
Large transformation grid files are known to cause bad transformation performance. One example is Tokyo_To_WGS_1984_NTv2, ESRI,108109. The system will transform the coordinates, however sometimes not before the timeout. The issue is located in the Esri engine code.