1

新しい目印を設定するときに、UTM 座標で kml を作成したいと考えています。これは私のコードですが、このプロパティを設定する必要がある場所がわかりません

//part of the code
counter++;
placemark= makePlacemark(hitTestResult.getLatitude(), hitTestResult.getLongitude(),
          hitTestResult.getAltitude(), ge.ALTITUDE_ABSOLUTE, 'T');
//set placemark name
placemark.setName("PLM" + counter);
//set the placemark on the map
ge.getFeatures().appendChild(placemark);

var output = placemark.getKml();
alert(output);

function makePlacemark(lat, lng, alt, altMode, iconStr) {
        var icon = ge.createIcon('');
        icon.setHref('http://maps.google.com/mapfiles/kml/paddle/' + iconStr + '.png');

        var style = ge.createStyle('');
        style.getIconStyle().setIcon(icon);
        style.getIconStyle().getHotSpot().set(0.5, ge.UNITS_FRACTION, 0,ge.UNITS_FRACTION);

        var pt = ge.createPoint('');
        pt.set(lat, lng, alt, altMode, false, false);
        var pm = ge.createPlacemark('PLM' + counter);
        pm.setGeometry(pt);
        pm.setStyleSelector(style);

        return pm;
}

座標を UTM 投影から epsg:4326 に変換 (再投影) する必要があります。

これは、Google Earth アプリケーションが UTM で座標を表示するために追加の変換を使用するということですか? ツール - >オプション

4

3 に答える 3

2

KML 仕様は、WGS84 測地系で緯度と経度を指定します。任意の投影はサポートされていません。

座標を UTM 投影法からepsg:4326に変換 (再投影) し、緯度と経度を適切に入力する必要があります。

于 2012-06-14T05:26:19.497 に答える
0

私が見つけた最高のサーバー側の座標変換は次のとおりです。

http://www.jstott.me.uk/phpcoord/

私はこれを Google マップと GE プラグイン コードと組み合わせて何年も使用してきました。

同等のJavaScriptを知っている人はいますか?

于 2012-06-18T14:16:52.203 に答える
0

以前の投稿で述べたように、UTM 座標を長緯度に変換する必要があります。

このクライアント側に適したツールは次のとおりです: http://trac.osgeo.org/proj4js

例を参照してください:
http://trac.osgeo.org/proj4js/wiki/UserGuide

以前の投稿でも述べたように: 宛先座標 epsg:4326 、例ではソースとしてそれらを持っています

proj4 のソースはあなたの utms になります。

proj4js を使用し、UTM ゾーン 10 北、 http ://spatialreference.org/ref/epsg/32610/ :

var dest= new Proj4js.Proj(‘EPSG:4236’);     
var Source= new Proj4js.Proj(‘EPSG:32610’);     

// transforming utm ngcoordinates
var p = new Proj4js.Point(489399,5456814);   

Proj4js.transform(source, dest, p);     

var lng= p.x ;
var lat= p.y;
于 2012-06-21T03:39:52.143 に答える