問題タブ [mkcoordinatespan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
12926 参照

ios - iOS MKCoordinateSpan のメートル単位のスパンサイズを取得しようとしています

を作成する必要があるときMKCoordinateRegionは、次のようにします。

非常にシンプル - 完全に機能します。

ここで、現在のリージョンspanの値を保存したいと思います。region.Span値を見ると、次のMKCoordinateSpan2 つのプロパティがあります。

LatitudeDelta値をプリーズに変換するにはどうすればよいlatitudinalMetersですか? (そのため、上記の方法を使用して (後で) リージョンを再作成できます...

0 投票する
1 に答える
825 参照

ios - 180 度を超えるときに 2 つの CLLocationCoordinate2D の中間点を見つける

MKCoordinateRegion を作成して、定義された 2 つのポイントを含むマップを表示する次のコードがあります。問題は、経度が 180 度または -180 度を超えると機能しないことです。

このコードを変更して、startLong が正の値、つまり 174 で、nextLong が負の値、つまり -127、またはその逆を処理できるようにする方法を教えてください。

0 投票する
1 に答える
444 参照

swift - mapkit: 適合する領域が正しくレンダリングされない

bestregion.span.latitudeDeltaとの両方を決定するコードがありregion.span.longitudeDeltaます。左上と右下を見つけて、緯度座標と経度座標の差分を取ります。

私が抱えている問題は、レンダリングが実際に実行時に設定したものと異なることです:

例として、最初にレンダリングしたい項目を選択して (たとえば、テーブルから) マップに切り替えると、マップ上のすべてのポイントを表示してから必要なポイントを選択する場合とは(視覚的に) 異なる結果が得られます。保つ。

さらに、マップ上のすべてのポイントをレンダリングし、いくつかを選択して選択したものをレンダリングし、次にフィルターを削除してすべてレンダリングすると、マップは開始時と同じではありません-すべてのポイントが表示されますが、小さくなります(最初のビューと比較すると、ズームアウトされているように見えます)。

デバッグ時に、両方のシナリオで同じスパン値が生成されることがわかりますが、レンダリングではそれらが無視されているようです。(英国で選択されたポイント)を使用したデバッグから:

  1. すべてのポイントをロード:

    region.span.latitudeDelta 7.439768

    region.span.longitudeDelta 11.0

  2. フィルター ポイント:

    region.span.latitudeDelta 1.25

    region.span.longitudeDelta 10.50477

  3. フィルタを削除:

    region.span.latitudeDelta 7.439768

    region.span.longitudeDelta 11.0

(viewDidLoad だけでなく) 再レンダリングする前に、マップを固定座標に再配置しようとしましたが、違いはありませんでした。

上記のシーケンスを実行するたびにマップがズームアウトし続けるわけではないことを強調したいと思います。一度ズームアウトするだけです。

私が見逃している明らかなステップはありますか?設定する必要がある非表示のブール値? 他の何か?

また、 regionThatFits からに変更してみました

そして、私も次のことを試しました:

私が何をしても、すでにマップ上にいるときに注釈フィルターを適用すると、実際のスパンが増加/倍増したように見えます (または、マップの端の周りに強制フレームがあるように見えます)。デバッグ出力がそうでないことを示しているにもかかわらず、ズームアウトされています...

以下は、異なるシナリオからの 2 つの画像です。どんなアドバイスでも大歓迎です。

ありがとう!

  1. 図 1 - テーブルにいる間にフィルターを適用し、マップに移動しました: ここに画像の説明を入力

  2. 図 2 - マップに移動してからフィルターを適用: ここに画像の説明を入力