20080511~
13と7と11の倍数の論理積は13と7と11の積の倍数である。
和ァ・・・
昨日の「任意軸伸縮行列」をExcelに実装して遊んでみましょう。 とりあえず、伸び縮みさせたい立方体を、a,b,c列に作ってみます。 a,b,c列をそれぞれ、x,y,z軸の値とします。 右をプラスのx、上をプラスのy、奥をプラスのzと定義しますので 順番に、手前面、奥面、下面、上面、左面、右面となります。 これらのベクトルに伸縮のための変換行列 を作用させたいので この図の赤枠内のように、行列を作ります。 a=1、b=c=0、H=2を例にします。つまり、x軸方向に2倍する伸縮です。 a,b,cのそれぞれのすぐ下の行には、実数何を入れてもいいのですが、 さらにその下の行では単位ベクトルのa,b,cになります。 そのために、a,b,cの右下で、√(a^2+b^2+c^2)をやっています。 厳密には、sqrt(sumsq(aからc))という計算をして、 a,b,cの2行下で 規格化前のa,b,c/[sqrt{sumsq(aからc)}] を、複合参照を用いて計算しています。 本来ならこの式 のように、列ベクトルに左から変換行列を掛け算するべきなのですが、 Excelの仕様の都合で 行ベクトルに右から変換行列を掛け算しています。 そうやってできたベクトルたちはこの図の赤枠の中のようになります。 変換前の左のベクトルと比べると、変数xの「1」だけが「2」に変わっていることがわかるかと思います ビューアとして、この次に遠近法のための計算を行います。 変数zに5という下駄をプラスしてzが負数になるのを回避し、 適当なズーム倍率A=1を用いて 横軸にAx/z、縦軸にAy/zを計算してグラフにプロットします。 このようになります。 右が伸縮変換前、左が変換後になります。 横つまりx軸方向に2倍に伸びていることがわかるかと思います。 同様に、x,y,z軸方向に、-2.5倍から+2.5倍までの伸縮を、gifにしたのが下の図です。 自分のやり方では たとえば空いているセル A3セルとかにnow()-today()を入れます。0から1までの、時刻のシリアル値をただの数値にした値が表現されます。 A4セルに動かす速さ70000とかを入れて A5セルでA3×A4を行います。 それから、Hと書かれたD3セルの隣のE3セルに =3*sin(A5) といった式を入力して、動かして テキトーなキャプチャソフトで、連写してます。 次に、 v=(a,b,c)=(1,1,0)/|v|(xy平面内での伸縮) v=(a,b,c)=(0,1,1)/|v|(yz平面内での伸縮) v=(a,b,c)=(1,0,1)/|v|(zx平面内での伸縮) v=(a,b,c)=(1,1,1)/|v|(一般化伸縮) の場合をプロットして動かしてみます。 sqrt{sumsq(aからc)}が1以外になって、2行目の単位ベクトルが1行目の値と違ってきているのがわかるかと思います。 PR ![]() ![]() |
カレンダー
カテゴリー
最新CM
[12/30 buy steroids credit card]
[09/26 Rositawok]
[03/24 hydraTep]
[03/18 Thomaniveigo]
[03/17 Robertaverm]
最新記事
(01/01)
(03/19)
(03/18)
(03/18)
(02/23)
(02/14)
(02/12)
(01/03)
(09/23)
(09/23)
(02/11)
(05/30)
(05/28)
(05/28)
(05/27)
最新TB
プロフィール
HN:
量子きのこ
年齢:
44
HP:
性別:
男性
誕生日:
1981/04/04
職業:
WinDOS.N臣T
趣味:
妄想・計算・測定・アニメ
自己紹介:
日記タイトルの頭についてるアルファベットは日記の番号です
26進数を右から読みます 例:H→7番目、XP→15(P)×26+23(X)=413番目。 A=0とする仕様につき一番右の桁はAにできませんのでご了承くださいズコー
ブログ内検索
アーカイブ
最古記事
(05/11)
(05/11)
(05/13)
(05/13)
(05/13)
(05/13)
(05/13)
(05/13)
(05/14)
(05/14)
(05/14)
(05/14)
(05/16)
(05/16)
(05/16)
アクセス解析
|