🌸 「なでしこ」
>
🍯 「貯蔵庫」
近傍点を探索するプログラム3(おまけ?)
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
近傍点を探索するプログラム3(おまけ?) 📖
近傍点を探索するプログラムのおまけです。最初の移動回数を調整して、最初でキャンバスサイズの半分以上をカバーする必要があります。
プログラム:
(→大)
# 🐭 乱数の近似点を探索します 🐭 # 👩 「打点」を押して試してみてね 👩 # 👯 5方向の負をとらないバージョン 💃 《🍵》=0.1 単位スケールは、4 ペンサイズは、単位スケール/4 円サイズは、単位スケール 点サイズは、単位スケール/4 キャンバスサイズは、300 移動回数は、6 ボイドは、NULL 平面座標は、{「X」:0、「Y」:0} 中心座標は、{「X」:0、「Y」:0} 五次元整数座標は、{V:0、W:0、X:0、Y:0、Z:0} 拡大率等倍は、65536 比数S18は、20252 比数C18は、62328 比数S54は、53020 比数C54は、38521 ●(Aの)二次元変換とは、 // Aは五次元整数座標 // 目盛上の同一数値を返す。 返却値は、{ 「X」:(比数C18*(A@「W」-A@「Z」)+比数C54*(A@「X」-A@「Y」))/拡大率等倍*単位スケール、 「Y」:((-1)*拡大率等倍*A@「V」+(-1)*比数S18*(A@「W」+A@「Z」)+比数S54*(A@「X」+A@「Y」))/拡大率等倍*単位スケール } メッセージ=「X:」&(返却値@「X」を文字列変換)&「 Y:」&(返却値@「Y」を文字列変換) // メッセージを表示。 返却値を戻す。 ここまで。 ●(ボイドで)乱点発生とは、 座標={ 「X」:((キャンバスサイズ*拡大率等倍)の乱数)/拡大率等倍-(キャンバスサイズ/2)、 「Y」:((キャンバスサイズ*拡大率等倍)の乱数)/拡大率等倍-(キャンバスサイズ/2) } メッセージ=「X:」&(座標@「X」を文字列変換)&「 Y:」&(座標@「Y」を文字列変換) // メッセージを表示。 座標を戻す。 ここまで。 ●(AからBへ)打線とは、 // A、Bは平面座標 「#80008020」に線色設定。 [(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は、{「V」:0、「W」:0、「X」:0、「Y」:0、「Z」:0} G=2の(移動回数-1)のべき乗 移動回数回、 比較列は、[ {「V」:R@「V」+0、「W」:R@「W」+0、「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「V」:R@「V」+G、「W」:R@「W」+0、「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「V」:R@「V」+0、「W」:R@「W」+G、「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「V」:R@「V」+0、「W」:R@「W」+0、「X」:R@「X」+G、「Y」:R@「Y」+0、「Z」:R@「Z」+0}、 {「V」:R@「V」+0、「W」:R@「W」+0、「X」:R@「X」+0、「Y」:R@「Y」+G、「Z」:R@「Z」+0}、 {「V」:R@「V」+0、「W」:R@「W」+0、「X」:R@「X」+0、「Y」:R@「Y」+0、「Z」:R@「Z」+G}、 ] 平面点Bは、Rの二次元変換 「#80000040」で平面点Bの打点 最短距離=平面点Aと平面点Bのユークリッド距離。 D=0 5回、 平面点Xは、比較列[回数]の二次元変換。 平面点Bから平面点Xへ打線。 距離は、平面点Aと平面点Xのユークリッド距離。 // 最短距離を表示。 // 距離を表示。 もし、最短距離>=距離ならば、 D=回数 最短距離=距離 ここまで。 《🍵》秒待。 ここまで。 R=比較列[D] G=G/2 ここまで。 平面点Bは、Rの二次元変換 赤色で平面点Bの打円。 Rを戻す。 ここまで。 ●(ボイドで)発生とは、 「#d0d0f0f0」に塗色設定。 [0、0、300、300]に四角描画。 キャンバス状態保存 [キャンバスサイズ/2、キャンバスサイズ/2]に描画起点設定。 緑色で中心座標の打点。 平面座標は、ボイドで乱点発生。 青色で平面座標の打点。 距離は、平面座標と中心座標のユークリッド距離。 五次元座標は、平面座標の最近傍五次元座標。 メッセージは、「V:」&五次元座標@「V」&「 W:」&五次元座標@「W」&「 X:」&五次元座標@「X」&「 Y:」&五次元座標@「Y」&「 Z:」&五次元座標@「Z」 メッセージと言う。 キャンバス状態復元 ここまで。 #🌼🌼🌼 表示系 🌼🌼🌼 「#d0d0f0」に塗色設定。 [0、0、300、300]に四角描画。 黒色に線色設定。黒色に塗色設定。 打点ボタン=「打点」のボタン作成。 消ボタン=「消去」のボタン作成。 保存ボタン=「保存」のボタン作成。 打点ボタンをクリックした時には、 ボイドで発生。 ここまで。 消ボタンをクリックした時には、 「#d0d0f0」に塗色設定。 [0、0、300、300]に四角描画。 ここまで。 保存ボタンをクリックした時には 描画ダウンロード。 ここまで。
プログラムを実行
⭐ sphiarno🕷️88ver. 作
タイトル:
近傍点を探索するプログラム3(おまけ?)
ライセンス:
未指定 (未指定/貯蔵庫のみ)
タイプ:
wnako
タグ:
-
利用バージョン:
3.3.57
作成日時:
2022/07/02 13:31
公開の投稿
⭐
ログイン
して★を付けよう!
Twitterへ投稿
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
通報数:
0
通報って何?