1

Google Earth から 3D モデルの KML ファイル (ICBC.kml) をエクスポートしました。3D モデルを Google Earth プラグインにロードしたいのですが、結果が得られません。ご提案ありがとうございます。

kml をロードするための JavaScript コード

// Create the placemark.
var placemark = ge.createPlacemark('');
// Get the current view`enter code here`
var myCamera = ge.getView().copyAsCamera(ge.ALTITUDE_RELATIVE_TO_GROUND);

// Set new latitude and longitude values
myCamera.setLatitude(30.55552076525944);
myCamera.setLongitude(114.3344795151639);
myCamera.setAltitude(500);

// Placemark/Model/Location
var loc = ge.createLocation('');
loc.setLatitude(myCamera.getLatitude());
loc.setLongitude(myCamera.getLongitude());


// Update the view in Google Earth
ge.getView().setAbstractView(myCamera);

var fso = new ActiveXObject("Scripting.FileSystemObject");

var f = fso.OpenTextFile("http://localhost/ICBC.kml",1,true);

var kmlobject = ge.parseKml(f.ReadAll());
ge.getFeatures().appendChild(kmlobject);
var la = ge.createLookAt('');
la.set(30.55552076525944, 114.3344795151639, 500, ge.ALTITUDE_RELATIVE_TO_GROUND, 0, 45, 900);
ge.getView().setAbstractView(la);
4

1 に答える 1

2

がある場合はKML fileparseKmlを使用fetchKmlしないでください。KML の文字列を渡す必要はなくURL、KML の のみを使用することをお勧めします。

あなたの場合、次の行を使用する必要があります。

var href = UrlOfKML;

google.earth.fetchKml(googleEarthInstance, href, function(kmlObject) {
      if (kmlObject)
         ge.getFeatures().appendChild(kmlObject);
});

の違いについてさらに疑問がある場合は、次のリンクfetchKmlを確認してください: KML のインポート - GE ドキュメントparseKml

于 2012-08-14T06:39:21.957 に答える