• ベストアンサー

DHTML で Y回転とX回転を同時に行う、いわゆる3D回転のような方

DHTML で Y回転とX回転を同時に行う、いわゆる3D回転のような方法を御存知の方、おりませんか?

noname#258072
noname#258072
  • HTML
  • 回答数5
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.5

 3D計算してるわけじゃないけど、2次元計算して楕円軌道上で画像を 動かせば、それっぽく見えるので、HTML5の<canvas>要素を使って 「ellipse_canvas.js」ってのを作ってみました。 IEはIE9でないと<canvas>要素が無いので、替わりに「Explorercanvas」 http://code.google.com/p/explorercanvas/ を使ってます。↑からexcanvas.jsをダウンロードして下さい。 HTMLマークアップは下のようにします。 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Ellipse Slide Canvas By HTML5</title> <style type="text/css"> </style> <!--[if IE]><script type="text/javascript" src="/jslib/excanvas.js"></script><![endif]--> <script type="text/javascript" src="/jslib/ellipse_canvas.js"></script> </head> <body> <h2 style="text-align:center">Ellipse Slide Canvas By HTML5 or IE(excanvas.js)</h2> <div id="slide1"> <div></div> <div> <a href="/image/azu.jpg"><img src="/image/s_azu.jpg" alt="azu"></a> <a href="/image/mio.jpg"><img src="/image/s_mio.jpg" alt="mio"></a> <a href="/image/yui.jpg"><img src="/image/s_yui.jpg" alt="yui"></a> <a href="/image/mugi.jpg"><img src="/image/s_mugi.jpg" alt="mugi"></a> <a href="/image/ritu.jpg"><img src="/image/s_ritu.jpg" alt="ritu"></a> </div> </div> <script type="text/javascript"> var my_slide_1 = new ellipse_canvas(document.getElementById("slide1")); my_slide_1.ellipseSlide(100,100,200,1,1); </script> </body> </html> 使い方は、ページロード後に、まずスライドセットの<div>要素を var my_slide_1 = new ellipse_canvas(スライドセットの<div>要素,幅,高さ); でインスタンスします。canvassの幅と高さは省略出来ます。省略すると自動 調整されます。 そして、 my_slide_1.ellipseSlide(interval,img_w,img_h,opacity,zoubun,a,b); で、描画開始です。  intervalは描画間隔(ミリ秒)  img_w,img_hは画像の描画サイズの幅、高さ  opacityは描画画像の透過度(省略値:1.0)  zoubunは描画角度増分度(省略すると自動計算)  aは描画起動長軸半径(省略するとcanvassの幅の半分)  bは描画起動短軸半径(省略するとcanvassの高さの半分) です。 ※画像をクリックすると、本画像(リンク先)に遷移します。 ※描画中にブラウザーのサイズを変更しても追随します。 出来たばかりなので、不具合があってもご容赦を

noname#258072
質問者

お礼

ありがとうございます。試してみます。

その他の回答 (4)

回答No.4

すみません、訂正です。 X軸、Y軸、Z軸をそれぞれX方向、Y方向、Z方向に置き換えて下さい。

noname#258072
質問者

お礼

どうもありがとうございます。DLして試してみます。

回答No.3

DHTMLってMicrosoft社が定義しているDHTMLのことでいいですか? X軸とY軸はmatrixを使えば可能です。 http://msdn.microsoft.com/en-us/library/ms533014(v=vs.85).aspx Z軸についてですが、リサイズとflipを組み合わせることでそれっぽく見せることが出来ると思います。 http://msdn.microsoft.com/en-us/library/ms532992(v=VS.85).aspx http://msdn.microsoft.com/en-us/library/ms532994(v=VS.85).aspx (flipは、BasicImageのmirrorとrotateの組み合わせです。 リサイズはstyle.widthとstyle.heightを変更することでできます。) HTMLもDHTMLも完全な3Dではありませんので、仮想空間を作って、、、と言うようなことはできません。 VRML(Web3D)なら完全な3Dですが、ブラウザがサポートしておらず(昔はNetscapeやIEがサポートしていたのですが、IEはサポートも止めたようです)、プラグインをインストールする必要があります。 360度全方位から撮影した写真やイラストを何枚も用意して、srcを変更することで、回転させているように見せることは可能です。 (ショッピングサイトなどで、商品を回転させるような物があると思います)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

3D回転なら、Z回転も同時に行う必要がありませんか?

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

なにを回転させるのでしょうか?

noname#258072
質問者

補足

すみません、言葉不足でした。図を回転させることを考えてます。

関連するQ&A

  • ∫∫D 1/{(x+y)^2+1}dxdy D={x≧0,y≧0,x+

    ∫∫D 1/{(x+y)^2+1}dxdy D={x≧0,y≧0,x+y≦0} この2重積分が解けなくて困っています。 方針として、部分分数分解を目指し、 t^2=(x+y)^2 としてt^4+2t^2+1-2t=(t^2+1)^2-2t^2 さらに、因数分解する方法で解けるのか? それとも、∫1/(x^2+1)dx=arctan|x|+cを利用するのか? いくつか考えては見ましたが、解けませんでした。 どなたか、解き方がわかる方、解答及びそのポイントを教えていただけないでしょうか? よろしくお願いします。

  • D={(x,y)|0≦x≦1,x≦y≦1}

    D={(x,y)|0≦x≦1,x≦y≦1} ∬[D](e^y)^2dxdy 初歩的な問題なんですがこれ答えは(e/2)-(1/2)であってますか?どなたか頼みます。

  • ∫∫【D】2x|y|dxdy, D={x^2+y^2≦1,x^2+y^2≦2x}

    ∫∫【D】2x|y|dxdy, D={x^2+y^2≦1,x^2+y^2≦2x} という重積分について質問です。∫∫【D】2x|y|dxdyと∫∫【D】2xydxdyってどう違いますか? この場合では、領域がx軸に関して対称だから、前者の場合も後者の場合もたまたま答えが同じになるけれど、理屈としては、y座標が負になっている部分をx軸に関して折り曲げた結果として、図形がx軸に関して対称だったために、y座標が正の部分を2倍することになったと考えればよいのでしょうか? 言葉が下手で、伝わりにくい文章ですみません。

  • x=x(t),y=y(t)の時のd^3y/dx^3は[x'^4y"'-x'^3x"'y'-3x'^3y"+3x'^2x"^2y']/x'^7?

    x=x(t),y=y(t)の時のd^3y/dx^3を求めています。 x':=dx/dt,y':=dy/dtと置くと d^3y/dx^3=d/dx(d^2y/dx^2) =(1/x')d/dt((x'y"-x"y')/x'^3) (∵d^2y/dx^2=(x'y"-x"y')/x'3) =(1/x')([{d/dt(x'y"-x"y')}x'^3-(x'y"-x"y')d/dt(x'^3)]/x'^6) =(1/x')([{d/dt(x'y")-d/dt(x"y')}x'^3-(x'y"-x"y')・3x"x'^2]/x'^6) =(1/x')([{(x"y"+x'y"')-(x"'y'+x"y")}x'^3-3x'^3y"+3x'^2x"^2y']/x'^6) =[{(x"y"+x'y"')-(x"'y'+x"y")}x'^3-3x'^3y"+3x'^2x"^2y']/x'^7 =[x'^3x"y"+x'^4y"'-x'^3x"'y'-x'^3x"y"-3x'^3y"+3x'^2x"^2y']/x'^7 =[x'^4y"'-x'^3x"'y'-3x'^3y"+3x'^2x"^2y']/x'^7 となったのですがこれで正しいでしょうか?

  • d/dx y(x)=y(x)/x

    d/dx y(x)=y(x)/xの解き方を教えてください u=x/y(x)として d/dx y(x)=y(x)/x =1/uと置くことは知っているのですがこの先が分かりません

  • <x+y=1 xy=1 を同時に満たすx,y>

    <x+y=1 xy=1 を同時に満たすx,y>  タイトルの通りです。一見単純のように見えますが答えがわかりません。よろしくお願いします。

  • D={(x,y)|0≦x≦1,0≦y≦x}とする。

    D={(x,y)|0≦x≦1,0≦y≦x}とする。 ∬{(4x^2)-(y^2)}^1/2dxdyを求めよ。 但し、d/dt[t/2{(4a^2)-t^2}^(1/2)+(2a^2)sin^-1(t/2a)]={(4a^2)-t^2}^1/2 答えに逆関数は残ってしまいますか? 一応答えも載せて頂けるとありがたいです。

  • X-Y平面の領域D={(x,y)|0≦x≦1,x-1≦y≦x+1}を、

    X-Y平面の領域D={(x,y)|0≦x≦1,x-1≦y≦x+1}を、x/y=u,y=vとして、U-V平面での領域で表したいのですが、どうにもできません。誰か教えてください。

  • ∫∫D 1/{(x+y)^4+1}dxdy D={x≧0,y≧0,x+

    ∫∫D 1/{(x+y)^4+1}dxdy D={x≧0,y≧0,x+y≦1} 前回質問したものですが、若干誤植がありました。改めて、 この2重積分が解けなくて困っています。 アドバイスいただいたようにヤコビアンで変数変換し解くことを考えましたが、 累次積分ができないのか、置換積分が出来なくて解けないのか、途中で解けなくなりました。 途中式、 ∫∫E 1/{s^4+1}|j|dtds=∫dt∫E 1/{s^4+1} ds s^4+1=k として、k'=4s^3 =∫dt∫E (1/4s^3)×{4s^3/(s^4+1)} ds 無理ですね^^; いくつか考えては見ましたが、解けませんでした。 どなたか、解き方がわかる方、解答及びそのポイントを教えていただけないでしょうか? よろしくお願いします。

  • y=x^4-x^2 をx軸の周りに一回転してできる

    y=x^4-x^2 をx軸の周りに一回転してできる図形の体積をおしえてください!

専門家に質問してみよう