• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            腳踏實地

            心 勿噪

            關于向量的叉乘操作

            在三維中常常需要重算正交的基向量組,
            由于叉乘操作是有序的. 一般來說 : UxV不等于VxU, 
            所有往往記不住到底是哪個左向量乘哪個右向量求出
            第三個向量,由于吃了一些虧所以做了總結.
            i,j,k三個基向量, 如果你使用的圖形引擎Z往屏幕外面,
            右手邊X和上方向Y規定為正方向的一組正交向量,如果
            你使用的模型的基向量組和它相同,那么放心用.
            ixj=k, kxi=j, jxk=i 
            但是你可能不總是那么幸運.也許你打算使用Z往屏幕里面,
            右手邊X和上方向Y規定為正方向的一組正交向量,這時你就
            需要改變叉乘方式了
            jxi=k, ixk=j, kxj=i 
            也就是統統反過來使用就可以了.
            但是如果你想使用Z往屏幕里面,右手邊X和下方向Y規定
            為正方向的一組正交向量時這時你又需要怎么弄呢?
            其實還是:
            ixj=k, kxi=j, jxk=i 
            如果你想使用Z往屏幕里面,左手邊X和下方向Y規定
            為正方向的一組正交向量時這時你又需要怎么弄呢?
            這時又是:
            jxi=k, ixk=j, kxj=i 
            也是統統反過來使用.
            這時怎么得到得結論?
            其實就是通過計算得到的
            以下都假設x右為正方向,y上為正方向,z往屏幕外為正方向設備的環境
            測試.

            var vec3 = glMatrix.vec3;
            console.log("-------------------->z軸往屏幕里為正的坐標系");
            var u = vec3.fromValues(1,0,0)
            var v = vec3.fromValues(0,1,0)
            var w = vec3.fromValues(0,0,-1)

            console.log(vec3.cross(vec3.create(), w,v));
            console.log(vec3.cross(vec3.create(), u,w));
            console.log(vec3.cross(vec3.create(), v,u));
            console.log("-------------------->y軸向下為正的坐標系");
            var u = vec3.fromValues(1,0,0)
            var v = vec3.fromValues(0,-1,0)
            var w = vec3.fromValues(0,0,1)

            console.log(vec3.cross(vec3.create(), w,v));
            console.log(vec3.cross(vec3.create(), u,w));
            console.log(vec3.cross(vec3.create(), v,u));
            console.log("-------------------->x軸向左為正的坐標系");
            var u = vec3.fromValues(-1,0,0)
            var v = vec3.fromValues(0,1,0)
            var w = vec3.fromValues(0,0,1)

            console.log(vec3.cross(vec3.create(), w,v));
            console.log(vec3.cross(vec3.create(), u,w));
            console.log(vec3.cross(vec3.create(), v,u));
            console.log("-------------------->全部反為正坐標系");
            var u = vec3.fromValues(-1,0,0)
            var v = vec3.fromValues(0,-1,0)
            var w = vec3.fromValues(0,0,-1)
            console.log(vec3.cross(vec3.create(), w,v));
            console.log(vec3.cross(vec3.create(), u,w));
            console.log(vec3.cross(vec3.create(), v,u));

            以上都能得到正確的向量組

            console.log("-------------------->z軸往屏幕外為正坐標系");
            var u = vec3.fromValues(1,0,0)
            var v = vec3.fromValues(0,1,0)
            var w = vec3.fromValues(0,0,1)
            console.log(vec3.cross(vec3.create(), v,w));
            console.log(vec3.cross(vec3.create(), w,u));
            console.log(vec3.cross(vec3.create(), u,v));
            console.log("-------------------->任意兩個是為負數的坐標系");
            var u = vec3.fromValues(-1,0,0)
            var v = vec3.fromValues(0,1,0)
            var w = vec3.fromValues(0,0,-1)
            console.log(vec3.cross(vec3.create(), v,w));
            console.log(vec3.cross(vec3.create(), w,u));
            console.log(vec3.cross(vec3.create(), u,v));

            以上也都能得到正確的向量組.
            結論就是如果偶數相反就正常使用,如果是奇數相反就
            用反過來用.

            posted on 2019-11-03 23:34 LSH 閱讀(793) 評論(0)  編輯 收藏 引用

            久久精品成人国产午夜| 99久久精品免费| 久久天天躁狠狠躁夜夜avapp| 久久99亚洲网美利坚合众国| 久久99久久99小草精品免视看| 精品综合久久久久久88小说 | 久久久久se色偷偷亚洲精品av| 亚洲色欲久久久综合网东京热| 日韩AV无码久久一区二区| 国产成人综合久久久久久| 久久天天躁狠狠躁夜夜avapp| 亚洲狠狠综合久久| 久久人人爽人人爽人人片AV麻烦 | 久久亚洲色一区二区三区| 久久精品人成免费| 天堂无码久久综合东京热| 99久久免费只有精品国产| 亚洲国产精品成人久久| 久久免费大片| 国产午夜电影久久| 国产精品欧美久久久天天影视| 久久综合九色综合网站| 久久久精品国产亚洲成人满18免费网站| 亚洲综合伊人久久大杳蕉| 久久精品久久久久观看99水蜜桃| 九九久久精品无码专区| 久久99国产精品久久| 久久久亚洲欧洲日产国码aⅴ| 九九精品久久久久久噜噜| 亚洲另类欧美综合久久图片区| 狠狠色丁香婷婷综合久久来来去 | 久久久久18| 亚洲乱码日产精品a级毛片久久| 国产精品久久久天天影视香蕉 | 久久国产精品免费一区二区三区| 99久久人妻无码精品系列蜜桃| 欧美成人免费观看久久| 中文字幕无码久久精品青草| 香蕉aa三级久久毛片| 欧美黑人激情性久久| 亚洲精品乱码久久久久久按摩 |