[Windows ストア アプリ] 特定の座標を原点とした座標とそこからの距離を取得する

こんにちは、うりるーです。

使う言語: Visual Basic

今回は前回のコードをもとに特定の座標を原点とした座標とそこからの距離を取得する方法を書いていきます。今回、特定の座標として (500,500) を指定し、座標をわかりやすくするために白い点を表示させます。また、クリック / タップされた座標と距離を表示するための TextBlock も追加します。白い点は 20px × 20px で、背景は透明です。

前回紹介したコード([Windows ストア アプリ] クリック または タッチした座標を取得する)をもとに実装していきます。

まず、ツールボックスから TextBlock を追加します。TextBlock の名前は PostionText2 とし、これも前回の PositionText と同様に座標を表示できるようにサイズを大きくしておきます。


次に白い点の画像を Assets に追加します。


ツールボックスから Image を追加し、座標として  (490,490) を指定します。
その後、Source から white.png を選択し、表示サイズを 20px × 20px に指定して、名前を WhitePoint にします。



では座標と距離を取得して表示するコードを実装していきます。
コードはファイル MainPage.xaml.vb に記述されている MainPagePoniterPressed に内に書きます。

Dim WhitePointPosition As Point = e.GetCurrentPoint(WhitePoint).Position
Dim whiteposition2 As Point
whiteposition2.X = WhitePointPosition.X - 10
whiteposition2.Y = WhitePointPosition.Y - 10

Dim distance As Double
distance = Math.Sqrt(((whiteposition2.X - 0) ^ 2) + ((whiteposition2.Y - 0) ^ 2))

PostionText2.Text = "X: " & whiteposition2.X & vbLf & "Y: " & whiteposition2.Y & vbLf & "Distance:" & distance

前回の続きになるので MainPage.xaml.vb は次のようになります。


特定の座標からの距離を出すには三平方の定理を使います。
実行して機能をただしく実装されたか確認します。


座標関連の説明は以上でおわりです。

0 件のコメント:

コメントを投稿