• <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>

            腳踏實地

            心 勿噪

            please simplify me (again…)

            http://www.iquilezles.org/blog/?p=2848

            Yet another example of code simplification that people don’t seem to want to do. It must be the 5th ot 6th time I ask people to do this change when programming a point-to-line distance computation: please, replace this ugly
            float sdLine( vec2 a, vec2 b, vec2 p )
            {
                vec2 ba = b - a;
                vec2 pa = p - a;
                float dist = (ba.x*pa.y - ba.y*pa.x) / distance(a, b);
                if( dot(a-b,p-b) < 0.0 ) 
                    return distance(b, p);
                if( dot(b-a,p-a) < 0.0 ) 
                    return distance(a, p);
                return abs(dist);
            }
            by the much more beautiful:
            float sdLine( vec2 a, vec2 b, vec2 p )
            {
                vec2 pa = p - a;
                vec2 ba = b - a;
                float h = clamp( dot(pa,ba)/dot(ba,ba), 0.0, 1.0 );
                return length( pa - ba*h );
            }
            Do it for the karma or something.  

            posted on 2015-01-05 14:04 LSH 閱讀(290) 評論(0)  編輯 收藏 引用

            996久久国产精品线观看| 久久综合综合久久狠狠狠97色88| 99久久人妻无码精品系列| 午夜天堂av天堂久久久| 国产精品9999久久久久| 九九99精品久久久久久| 麻豆精品久久久久久久99蜜桃| 91麻豆精品国产91久久久久久 | 久久综合视频网| 久久这里的只有是精品23| 亚洲女久久久噜噜噜熟女| 国内精品久久久久久野外| 亚洲国产婷婷香蕉久久久久久| 久久久久亚洲AV成人网人人网站| 久久无码人妻精品一区二区三区| 久久久亚洲欧洲日产国码是AV| 亚洲色婷婷综合久久| 久久av高潮av无码av喷吹| 99久久国语露脸精品国产| 久久伊人色| 日韩亚洲欧美久久久www综合网| 国产精品日韩欧美久久综合| 中文字幕久久久久人妻| 久久国产精品偷99| 精品精品国产自在久久高清| 日韩一区二区三区视频久久| 国产精品久久自在自线观看| 伊人久久大香线蕉综合Av| 久久久无码精品亚洲日韩京东传媒| 国产精品成人99久久久久91gav| 久久精品人妻一区二区三区| 久久精品国产亚洲网站| 色综合久久久久久久久五月| 久久久精品久久久久影院| 欧美久久一级内射wwwwww.| 久久99热精品| 久久久久亚洲av无码专区| 久久精品夜色噜噜亚洲A∨| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 偷偷做久久久久网站| 性做久久久久久久久浪潮|