Does convert to kml reproject?

2364
7
08-18-2016 01:47 AM
Oliver_Burdekin
Occasional Contributor II

I have a number of files in Arc 1950 and would like to convert them to kmls / kmzs. Looking at the docs I'm unsure as to the level the kml to layer tool will handle projections. As I read it if a transformation is required (e.g. Arc 1950 to WGS84) I will need to reproject to WGS84 prior to running the tool. I'd like to make sure I get this right as I don't want to be sending out spurious kmls.

0 Kudos
7 Replies
FC_Basson
MVP Regular Contributor

It will always convert to GCS WGS84.  Just make sure your geographic transformation is specified in the environment settings of the tool so that you don't need to do the reprojection beforehand.

Oliver_Burdekin
Occasional Contributor II

Thanks. Linked to this I'm also wondering about ESRI's basemaps. Adding layers in Arc1950 to a blank map will set the dataframe CRS to whatever the first layer's coordinate system is. Adding a basemap to that will not raise any warnings or errors. But looking at the CRSs of the layers the basemap will always be in Web Mercator.

Doing the reverse and adding the the basemap first will result in a warning for the layers being brought in. Setting the transformation will allow the layers to be projected on the fly. However, looking at the position of the layers in this case (in relation to the basemap) they line up perfectly with KMLs in Google earth even when the transformation is not set for "layer to kml"....

If that makes sense

0 Kudos
Oliver_Burdekin
Occasional Contributor II

This is not the behaviour I'm experiencing in 10.4. Setting the tool env settings to use a particular transformation is overridden when the tool runs. For example setting Arc1950 to WGS84 (8) in the env settings still produces an output using transformation Arc 1950 to WGS84 (1).

0 Kudos
NeilAyres
MVP Alum

If you are dealing with data for a map service or similar, it is far better to resolve all this underlying datum story upfront.

Ie reproject all the data first and use appropriate transforms to get the correct WGS84 based output.

0 Kudos
Oliver_Burdekin
Occasional Contributor II

Agreed. It is worth noting how this behaviour is replicated with basemaps too.

0 Kudos
NeilAyres
MVP Alum

There are 9 different geocentric Arc50 to WGS84 transforms available in the system.

Just make sure you pick the correct one for your data.

See the geographic_transformations.pdf in your ArcGIS install / documentation folder. Page 5 for each region of use.

Oliver_Burdekin
Occasional Contributor II

I've tried a few variations on this with rather odd results. The attached image shows these results. I'm working with both the vertices and polygons here for illustrative purposes. I'll describe the process for each one. Transformation A and B just represent different transformations rather than the actual transformations

Yellow point - original file in Arc 1950, no transformations set, layer to kml run

Red polygon - original file Arc 1950, output coordinate system set to WGS 84 and transformation set in tool environment settings.

Pink polygon - WGS 84, reprojected prior to running kml tool using transformation A

Blue polygon - WGS 84, reporjected prior to running kml tool using transformation B

So from this it would appear that using the environment settings of the tool does nothing. Reprojecting prior to running the tool results in a shift. How far that shift will be depends on the transformation used for which there appear to be no hard and fast rules.

Which one is correct and what should the workflow be when dealing with layer to kml and datums other than WGS84?

On top of that, using a basemap if I add the layers first (setting the dataframe to Arc 1950 from the first layer added) and then add a basemap, no warnings or errors are given. Presumably this will behave as the red polygon above did.

If I add the basemap and then the layers I'm asked to set the transformation. Granted there is a difference between the transformations but there is also a difference between the default behaviour (outlined above for adding the basemap after layers) and setting the transformation.

UPDATE

The layer to kml tool is defaulting to the first transformation (Arc1950 to WGS84 (1)) available. It does this when the source file is in Arc1950 and appears to over ride the tool environment settings. 

The shift from one transformation to another can be as much as ~70m in this case depending on where the data is and so it would seem to be appropriate to reproject the data to WGS84 prior running kml to layer using the required transformation rather than relying on environment settings in the tool. Which I guess is what the docs say but I feel they could be more explicit as to what the default behaviour is.

0 Kudos