2016-10-15 6 views
-1

の現在のポイントと角度と距離による座標arcgis javascript Apiを使用してWeb GISアプリケーションを開発しています。私はpoint1から距離と角度で線を描く必要があります。 POINT1及びポイント2で描画線:「ラジアン」新しいポイントを取得するarcgis js

第二段階で、この式

point2X = point1.x + distance * Math.cos(angle) 
point2Y = point1.y + distance * Math.sin(angle) 

距離単位「メーター」と角度による第一ステップを計算ポイント2。入力距離が1000メートルの場合、弧型測定ツールで測定した場合、線の長さは866メートルとなります。この公式の座標系は影響を及ぼしていますか?

機能:

function GetNewPoint(x, y, distance, angle) { 

     var alpha = ToRadian(angle); 

     var cos = Math.cos(alpha); 
     var sin = Math.sin(alpha); 
     var x2 = (cos * distance)+x ; 
     var y2 = (sin * distance)+y ; 

     return esri.geometry.xyToLngLat(x2, y2); 
    } 
    function ToRadian(angle) { 
     return (Math.PI/180) * angle; 
    } 
+0

サンプルまたはjsフィドルを追加することはできますか...これまでに試したことが何であれ... –

+0

まあ、別の空間参照投影があるので、共通の関数を追加すると、long longやx、yさまざまなフォーマットを持っていて、彼らは要因を追加することを期待しています...私は正確なシナリオを理解したいので、コードを実行するよう求めています.... –

答えて

0

地図投影絶対尺度の結果に影響を与えます(あなたの座標系で定義されるもの)。

"RobinsonやWinkel Tripelなどの一部のプロジェクションでは、これらの要因の妥協点を除いて、世界中の歪みを最小限に抑えようとしています。 UTMとState Plane)は、歪みを最小限に抑えるために、グローブの焦点を絞った領域用に設計されています。 ソース:https://blogs.esri.com/esri/arcgis/2010/03/05/measuring-distances-and-areas-when-your-map-uses-the-mercator-projection/

幸いにも、使用しているWeb APIには、測定を行う前にデータを再投影するいくつかのメソッドがあります。

あなたのマップの再プロジェクト固有の機能に興味があるなら、あなたはこのようなものを使用することができます

var sr = new esri.SpatialReference({wkid:32610}) 

// assuming you already referenced geometryService 
geometryService.project([graphic], sr, function(projectedGraphic){ 
    geometryService.areasAndLengths(projectedGraphic, function(result){ 
    var perimeter = result.lengths[0]; 
    var area = result.areas[0]; 
    }); 
}); 

を前の例では、ジオメトリサービスの利用を想定して(あなたは、ArcGISでこれを見つけることができますオンラインまたはご使用のArcGIS for Serverインスタンスで)、リモートで処理されます。

ジオメトリサービスの詳細については、thisリンクを参照してください。

この情報が問題の解決に役立つかどうかをお知らせください。

関連する問題