▶ 実 行
▶ 実行
クリア
近傍点を探索するプログラム
by sphiarno🕷️88ver.
# 🐭 乱数の近似点を探索します 🐭 # 👩 「打点」を押して試してみてね 👩 《🍵》=0.05 単位スケールは、4 ペンサイズは、単位スケール/4 円サイズは、単位スケール*2 点サイズは、単位スケール/2 キャンバスサイズは、300 ボイドは、NULL 平面座標は、{「X」:0、「Y」:0} 中心座標は、{「X」:0、「Y」:0} 三次元整数座標は、{X:0、Y:0、Z:0} 拡大率等倍は、 65536 比数ルート3は、113512 ●(Aの)二次元変換とは、 // Aは三次元整数座標 // 目盛上の同一数値を返す。 返却値は、{ 「X」:((比数ルート3*(A@「Y」-A@「Z」))/拡大率等倍)*単位スケール、 「Y」:(((-2)*A@「X」)+A@「Y」+A@「Z」)*単位スケール } メッセージ=「X:」&(返却値@「X」を文字列変換)&「 Y:」&(返却値@「Y」を文字列変換) // メッセージを表示。 返却値を戻す。 ここまで。 ●(ボイドで)乱点発生とは、 座標={ 「X」:((キャンバスサイズ*拡大率等倍)の乱数)/拡大率等倍-(キャンバスサイズ/2)、 「Y」:((キャンバスサイズ*拡大率等倍)の乱数)/拡大率等倍-(キャンバスサイズ/2) } メッセージ=「X:」&(座標@「X」を文字列変換)&「 Y:」&(座標@「Y」を文字列変換) // メッセージを表示。 座標を戻す。 ここまで。 ●(AからBへ)打線とは、 // A、Bは平面座標 「#80008040」に線色設定。 [(A@「X」)、(A@「Y」)]から[(B@「X」)、(B@「Y」)]まで線描画。 // A、Bは平面座標 ここまで。 ●(点色でAの)打点とは、 // Aは平面座標 点色に線色設定。点色に塗色設定。 [(A@「X」)、(A@「Y」)]に点サイズの円描画。 ここまで。 ●(円色でAの)打円とは、 // Aは平面座標 円色に線色設定。「#a0a0f040」に塗色設定。 [(A@「X」)、(A@「Y」)]に円サイズの円描画。 ここまで。 ●(平面点Aと平面点Bの)ユークリッド距離とは、 距離=(((平面点A@「X」-平面点B@「X」)の二乗)+((平面点A@「Y」-平面点B@「Y」)の二乗))の平方根 メッセージは、「ユークリッド距離:」&(距離を文字列変換) // メッセージを表示。 // 平面点Aから平面点Bへ打線。 距離を戻す。 ここまで。 ●(平面点Aの)最近傍三次元座標とは、 Rは、{「X」:0、「Y」:0、「Z」:0} D=1 (D>0)の間、 比較列は、[ {「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「X」:R@「X」+1、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」-1}、 {「X」:R@「X」+0、「Y」:R@「Y」+1、「Z」:R@「Z」+0}、 {「X」:R@「X」-1、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」+1}、 {「X」:R@「X」+0、「Y」:R@「Y」-1、「Z」:R@「Z」+0} ] 平面点Bは、Rの二次元変換 「#80000040」で平面点Bの打点 D=0 最短距離=平面点Aと平面点Bのユークリッド距離。 6回、 平面点Xは、比較列[回数]の二次元変換。 平面点Bから平面点Xへ打線。 距離は、平面点Aと平面点Xのユークリッド距離。 // 最短距離を表示。 // 距離を表示。 もし、最短距離>距離ならば、 # 修正:=を削除 D=回数 最短距離=距離 ここまで。 《🍵》秒待。 ここまで。 R=比較列[D] ここまで。 平面点Bは、Rの二次元変換 赤色で平面点Bの打円。 Rを戻す。 ここまで。 ●(ボイドで)発生とは、 「#d0d0f090」に塗色設定。 [0、0、300、300]に四角描画。 キャンバス状態保存 [キャンバスサイズ/2、キャンバスサイズ/2]に描画起点設定。 緑色で中心座標の打点。 平面座標は、ボイドで乱点発生。 青色で平面座標の打点。 距離は、平面座標と中心座標のユークリッド距離。 三次元座標は、平面座標の最近傍三次元座標。 メッセージは、「X:」&三次元座標@「X」&「 Y:」&三次元座標@「Y」&「 Z:」&三次元座標@「Z」 // メッセージを表示。 キャンバス状態復元 ここまで。 #🌼🌼🌼 表示系 🌼🌼🌼 「#d0d0f0」に塗色設定。 [0、0、300、300]に四角描画。 黒色に線色設定。黒色に塗色設定。 打点ボタン=「打点」のボタン作成。 消ボタン=「消去」のボタン作成。 保存ボタン=「保存」のボタン作成。 打点ボタンをクリックした時には、 ボイドで発生。 ここまで。 消ボタンをクリックした時には、 「#d0d0f0」に塗色設定。 [0、0、300、300]に四角描画。 ここまで。 保存ボタンをクリックした時には 描画ダウンロード。 ここまで。
00bbbff1848b2a73b72897ad2d76fc93
1478