I have been importing different KML files into the webpage I have been working with. I first tried the 2D setting on the map control. This works very well. It wasn't until I played with the 3D capabilities of the VE control that I noticed some issues. The following is excerpted from my post on the MSDN Virtual Earth Map Control Forum:
When adding a KML overlay using ImportShapeLayerData the VEDataType.ImportXML type in a 2D rendering of the map works wonderfully. Hybrid, road, even birds eye - they all work. However, change the map to 3D style and the KML overlay is skewed and does not appear to be overlayed correctly on the map.
<script type="text/javascript">
var map = null;
var layerid=1;
function GetMap()
{
map = new VEMap('myMap');
map.LoadMap(null,null,'h',null,null,null,null);
var l = new VEShapeLayer();
var veLayerSpec = new VEShapeSourceSpecification(VEDataType.ImportXML, "http://www.spencerwilliams.net/kml/kmltest2.xml", l);
map.ImportShapeLayerData(veLayerSpec, onFeedLoad, 1);
}
function AddMyLayer(type)
{
var l = new VEShapeLayer();
var veLayerSpec = new VEShapeSourceSpecification(type, txtSource.value, null);
map.ImportShapeLayerData(veLayerSpec, onFeedLoad, 1);
}
function onFeedLoad(feed)
{
}
When you look at the map in 2D, zoom into the area where 3 trails meet by clicking the "Go To Position" button on the right side of the map (Click here for this map).
This is a hiking trail where 3 trails come together. This placement is correct. Now change it to 3D view and you will see that the triangle section is nowhere near the previous spot. I would assume that this has something to do with a 2D KML overlay being placed on a 3D contoured shape, like a paper cutout that doesnt fit around an object. I thought about this for a while and then looked at the KML.
UPDATE - 7-18-2008 : this appears to be fixed as long as you don't zoom in past 20yds in 3d - I'll have to research if there were changes to the rendering of 3D overlays by the virtual earth team