• 締切済み

バウンスするボールをHTMLで再現

遊びを兼ねた勉強でで 「バウンスするボールをHTMLで再現」してみようかなぁとか思ってます。 自由落下+跳ね返り係数 で 全体のボールの位置を決める関数は作れそうですが、 ボールが地面部分にあたった時のグニャって楕円形になる様はどのように計算したらよいのでしょう? なにか参考になるものありましたら教えて下さい。 ※javascriptのカテゴリーじゃなく自然科学のカテゴリーになるのか???

みんなの回答

  • b0a0a
  • ベストアンサー率49% (156/313)
回答No.1

上下左右の壁だけならバネに見立てることでまだ簡単に再現できそうですが、 角に入った時など、あらゆる凹みを考慮するのなら別のアプローチの方がいいと思います。 具体的には、1つの物体を沢山の小さな物体が粘着しているものとしてシミュレートします。

muuming2001
質問者

お礼

ありがとうございます。 対象は左右と下のbody枠だけにするので、 バネとして処理したいと思います。 今ちょうどバネの位置エネルギーとか調べてました!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ボールのバウンド高さを

    ボールのバウンド高さを 求める場合について教えてください。 条件は以下の内容となります。 1:落下開始高さHは常に一定で、垂直自然落下。 2:1回目にバウンドした時点、2回目にバウンドした時点   (バウンド間)の時間を計測し、その値より1回目のバウンド高さを算出したい。 3:反発係数は決まったものがある。 4:ボールの重量は一定 以上の条件で算出可能でしょうか? ご教示願います。 <m(__)m>

  • 力学の問題なんですが...助けてください。

    次の問いの途中式を含めた解き方と答えを教えてください。 問、ボールを地上h=6[m]の高さから自由落下させたとき、地面と衝突した後1.5[m]の高さまで跳ね上がった。以下の問いに答えよ。下向きに初速v(0)=18[m/s]を与えて落下させた。地面と物体間の反発係数をe=0.6とした時、 (1),ボールと地面との間の反発係数を求めよ。 (2),地面と衝突した後に跳ね上がる高さを2.5[m]にするためには、ボールに与える下向きの初速v(0) をいくつにすればよいか求めよ。 よろしくお願いします。

  • 物理

    お忙しいところすみません!! 学校の授業でどうしても分からない問題があるのできました。 問題 バスケットボールのドリブルで、1mの高さでドリブルを続ける ために必要な力は? ただし、ボールの質量:0.3kg 跳ね返り係数:e=0.9とする。 跳ね返り高さ:0.81m 跳ね返りによって、生じる損失エネルギー ΔE=(1/2)mv2乗-(1/2)mv´2乗  =(1/2)mv2乗-(1/2)(ev)2乗=(1/2)mv2乗(1-e2乗) ここで、v=4.4s9m/s(1mからの高さから床まで落下させたときのボールの衝突速度)とすれば、ΔE=0.559[J]である。 この損失エネルギーを、手からの力でカバーして跳ね返り高さを1mにするわけである。 求めた損失エネルギー:0.294 例)手を押す距離を20cm(0.2m)とすれば、Δt=0.18[s]程度で、ボールの加速度はα=12.55[m/s2乗]である。これを力に換算すると、 F=3.76[N]である。 という問題です。 どなたか分かるかた教えてください。 お願いしますm(__)m

  • 物理の問題で

    以下の物理の問題について質問です。 問題 1メートルの高さから小球を自由落下させたところ、何回か跳ね返った。1回目に跳ね返った後の最高点の高さをh1、2回目に跳ね返った後の最高点の高さをh2とするとき、h1-h2の値を求めなさい。ただし、地面と小球の跳ね返り係数を0.9とし、空気の抵抗はないものとする。 解説の途中に、位置エネルギーは高さに比例するので、1回の衝突で最高点の高さは0.81倍になる。と載っていましたが、なぜそのようになるのでしょうか?0.81倍という数字がどうして出てくるのか教えてください。

  • ゴルフボールの弾道式について

    ゴルフ雑誌「飛ばしの科学」(廣済堂出版 増田正美著)に弾道方程式は下記とありますが良く理解できないところがあります。積分の手順等を教えていただけないでしょうか。 運動方程式は 水平方向 mx“=1/2*Cd*π*a^2*ρ*V^2 ・・・(1) 直方向 my“= m*g+(2*π*a^2*ρ*V*V0*sin(θ))*k  ・・・(2)   (1)から 1/v-1/V0 =β*t ・・(3)   水平方向の飛距離 S=1/β*ln(1+β*V0*t)・・・(4)  (2) から 垂直方向の高さ h=1/2*g*t^2+(k*g/γ+V0*sin(θ))*t-k*g/γ*(1-e^(-γ*t)) ・・・(5)  ここで m:ボールの重量  a:ボールの半径 ρ:空気密度 Cd:空気抵抗係数  V:水平方向速度 g:重力加速度  V0:水平方向初速度 θ:ロフト角  k:浮力係数  ln:自然対数 e:自然対数の底  γは 水平方向の速度の近似式 V = V0*e^(-γ*t)・・・(6)で表せるもの 私の質問:(1)~(4)までは理解できるのですが(2)を積分して(5)を出す手順が分かりません。 また、(6)はどのようにして作った式なのかもわかりません。  以上2点を教えて頂けないでしょうか。

  • 問題が解けないので教えていただきたいです

    問題は、質量がM,mのボール、A,Bがある。(m<M)。それらのボールを連続して高さhから落下させる。ボール同士および地面との反発係数はe=1とする。 1)衝突直後質量MのボールAが床面上に衝突し、質量mのボールBだけが上昇するためのMとmの関係を示せ。 →この問題は、ボールAの衝突直後の速度は√2ghになるのはわかるんですが。運動量保存の式に当てはめても、どう関係を示したらいいかわかりません。 2)その時質量mのボールBがえる速さと上昇距離はいくらか。 →1)が分からないのでこれはわからんと投げました。 こんな僕ですが、どうか解説していただける方がいらっしゃいましたら、教えていただきたいです。

  • 庭での洗車 カーシャンプー等洗剤は地面に吸い込ませてもいいもの?

    自宅の庭で洗車をしたいのですが、カーシャンプーなどの洗剤は地面に吸収させて良いものでしょうか? 我が家はコンクリなどうっておらず、水はそのまま地面に吸収されていきます。 化学的なものを自然にぶちまける行為はなかなか抵抗があります。 井戸水を生活用水としているため、なお心配です。 地表から吸収された水は地下水になるまでに砂などでろ過されるときいたことがあるのですが、このろ過機能は合成洗剤のような科学的なものもろ過できるのでしょうか? カテゴリで迷いましたが、車のことということでここで質問します。 もし適当なカテゴリがございましたらお教え願います。

  • 競技用のバウンスボールの購入

    下記URLでルール紹介されているバウンスボールという競技用のボールを入手したいのですが、楽天やアマゾン等の通販サイトでバウンスボールで検索しても違うサイズばかりで競技用のサイズのボールが見つかりません。 http://www.city.atsugi.kanagawa.jp/shiminbenri/kosodatekyoiku/sports/new/p000976_d/fil/0057_022299_bb.pdf サイズは直径25センチ、90グラムです。 このボールを販売しているサイトがありましたらURLのご紹介をお願い致します。

  • ボルトの落下防止対策品を探しています。

    ボルトの落下防止対策品を探しています。 カテゴリーが科学でよいのか不明瞭ですが質問させてください。 頻度はそれほど高くないのですが、取り外しのあるボルトで、作業中にボルトを床面に落とすわけに行かないため、はずしたボルトが落ちない対策を検討しています。 なるべく工具も使わずに済ませたいです。 理想は ・ちょうボルトにボールチェーンやナイロンバンド等を取り付ける ・ボルト穴の近くに端部を固定しておく ・取り外し作業時に万一落っことしても、ぶら下がって床まで落ちない。 そのようなものがあれば理想です。 なければちょうボルトに小さいフックのようなものをくっつけて、そこにチェーンを取り付けることを考えていますが、市販品で似たようなものが安く手に入ればと思い質問させていただきました。 キャットウォーク上の機器の点検口取付ボルト等で需要はありそうなのですが、どなたかご存じないでしょうか?

  • AS3.0で地面にバウンドするように落下させたい

    浩太と申します。 FLASHQ&Aで紹介されたNo.904↓ http://hfm-kenchan.com/Lesson/contents/index.htm ※No.904を、クリックして頂ければと思います。 を、AS3.0で対応したいのですが、どうしてもうまくいきません。 ↓ように、記述してみましたが、stopせずに、永遠とバウンドしたままとなってしまいます。 どうかご教授下さい。 addEventListener(Event.ENTER_FRAME, onEnterframe); stop(); function onEnterframe(event:Event):void { //初期Y座標配置幅 var yPos = 300; //初期速度 var spd = 5; //重力 var g = 2.5; //跳ね返り係数 var k = 0.9; //空気抵抗 var t = 0.99; //地面のY座標値 var base = 250; var dy = Math.floor(Math.random()*190); ball.y = dy; base = base-stage.stageHeight/2; spd = spd*t+g; dy += spd; if (dy >= base) { dy = base; spd = -spd*k;  } }

    • ベストアンサー
    • Flash
このQ&Aのポイント
  • 無線LAN子機WDC-300SU2Sは、Windows 10用として販売されていますが、Linux OSでも使用することができますか?もし使用できない場合、Linux用の同種の子機は市販されているのでしょうか?
  • 無線LAN子機WDC-300SU2Sは、Windows 10で使用するために作られたものですが、Linux OSでも使えるか疑問です。もし使用できない場合、Linux用の同じような子機は市販されているのでしょうか?
  • 無線LAN子機WDC-300SU2Sは、Windows 10用として販売されていますが、Linux OSでも利用できるでしょうか?もし利用できない場合、Linux用の同じような子機は市販されているのでしょうか?
回答を見る