コミュニティアイコン プチコン 非公式コミュニティ トピック

アバター
初心者 ◆ULvuffpmw1rp
2018/7/29 21:45
質問
曲線の関数の求め方 求む‼‼
曲線を表示する関数を試行錯誤していたら出来てしまいました。本来はどの様にして式を求めるのでしょうか?ちなみに高一です。関数・式などの、数学の単語の使い方を間違っていたらすいません。そこら辺分かんないんです。゚(゚´ω`゚)゚。
キー 1KB4N2NE

コメント

アバター
初心者 2018/7/29 21:48 ◆ULvuffpmw1rp
&#8252は「!x3」のフォントです。紛らわしいの打ち込んですいません。
アバター
ゲストさん 2018/7/29 22:43 ◆tmDvjeLbemdx
数学側から見ると
y=xの二乗+ax+b
という曲線が書かれているようです。
曲線を書きたいと思って曲線が表示されたのなら成功ですね。
本来ならx=0の線とy=0の線がどこにあるか?(方眼紙を画面のどこに貼り付けよっかなーっていうイメージ)と、
一つの目盛りがいくつにあたるのかを心の中だけでも決めておいて、
点があるはずの所に点が表示されていれば成功ということでしょう。
アバター
初心者 2018/7/30 7:20 ◆ULvuffpmw1rp
すいません!詳しく話します。
どんな曲線を求めたいかというと、
グラフ上で
領域?は
0小なりイコールy小なりイコール高さ
x=0のときy=高さ になり、
x=-曲線の真横の長さ/2のときy=0
x=曲線の真横の長さ/2のときy=0
というy=axx+bの曲線の関数の求め方です。
アバター
こういち 2018/7/30 7:37 ◆ou0jbJnEJ0Kb
つまり曲線から
Y=axx+b
のaとbを求めたいということですか?
となると
h=高さ
l=長さ
とすると
x=0:y=hより
b=h
y=0:x=+-l/2より
a=-h/ll
っていう感じだと思います。
アバター
こういち 2018/7/30 8:01 ◆ou0jbJnEJ0Kb
別解
二次関数(y=axx+bx+c)を平方完成と呼ばれる方法を使って変形すると
y=a(x-p)(x-p)+q
という式になります。
この式の(p,q)が曲線の先端の座標なので、
p=0:q=hを代入してさっきみたいに3つの点を代入して方程式を解けば、a=-h/llが出ます。
アバター
ツララ 2018/7/31 7:41 ◆ArUdBYOYME1V
詳しい説明から察するに放物線ですね?
最終的にはスプライトを放物線状に動かしたくて、SPOFSの引数にする座標の数値を試しに求めてみたいってとこです?
添付画面のプログラムから計算の元になる数値は
XとYが起点となる座標で、Hが放物線の頂点までのY値の幅で、X1が着地点のX座標ですね
ここで、FORループのカウンタ変数を経過時間だと分りやすくするためにTとでもしますか
XXはループ中に変化しない値なのでループ外で計算しておいてW=X1-Xとすると
Sはループ中で変化するY座標の値で
FOR T=0 TO W
 S=(W*W/4-W*T+T*T)/(W*W/(4*H))-H
 GPSET X+T,Y+S
NEXT
ここでSを求める式の部分を展開して約分して省ける部分を省略すると
S=(T*T/W-4*H*T)/W
う〜ん、肝の部分は S=T*T/W-4*H*T っぽいですね
ループの終わりでTがWになると S=W-4*H*W →W(1-4H) なので
これだとHが1/4じゃないとSが0にならないですな

こういちさんの別解をプログラムに落とし込むと
W=X1-X:A=4*H/W/W
FOR T=0 TO W
 S=A*T*(T-W)
 GPSET X+T,Y+S
NEXT
って感じですかね

あと画面写真を添付出来て一画面に収まる内容なら、別に公開キー要らないと思いますよ(打ち込みが面倒な人には有り難いですけど、面倒くさがってると何時まで経っても慣れないので個人的には手打ち推奨派の意見)
アバター
初心者 2018/7/31 9:00 ◆ULvuffpmw1rp
おお!ありがとうございます!なんか求め方が分かりました!皆さん詳しい説明ありがとうございましたm(_ _)m
これでもやもやが解消しました!
アバター
ゲストさん 2018/7/31 23:25 ◆tmDvjeLbemdx
どういたしまして。ちなみにグラフ表示の参考としては、
load"sys/ex8techdemo"
した後
@TESTTAN
で検索(検索結果2個のうちの2個目)したあたりがよいと思います。

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -