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

            SoRoMan

            人若無名,便可專心練劍.

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              12 隨筆 :: 1 文章 :: 41 評論 :: 0 Trackbacks

            思考:計算機圖形學中的左上像素填充約定(top-left filling convention for filling geometry):

            我們知道目前顯示器顯示的原理,光柵化顯示最小的單元是pixel(或者說精度為piexl),一個pixel所占的區域一般是個正方形,顯示器上的畫面就由一個或多個這樣的小方格組成。如果以每個小方格為一個單元來制定屏幕坐標的話,問題就來了,因為方格本身有大小,不是一個嚴格意義上的"點"。

            問題來源:屏幕坐標點的選取以及像素方格本身的大小
            如果以方格中心點為基準制定坐標點(即對于任意一整數坐標點p(x,y),p必為某個像素方格的中心),以一個方格為跨度來制定屏幕坐標系的話。如圖,屏幕上3X3的方格組成一個正方形的畫面,如果按照方格中心點為基準制定坐標點,其區域屏幕坐標為(0,0,2,2)(注意:0,1,2都位于方格中心,其中,左上角坐標為(0,0),右下角坐標為(2,2)),而按照數學運算,其上下跨距就是2-0 = 2 pixels,左右跨距2-0 = 2 pixels,即總共包含2X2=4個方格.而實際畫面中的跨距是3X3,即共包含9個方格(從最左上端到最右下端),問題來了,前后矛盾了。左上像素填充約定可以解決這個問題。

            問題解決:左上像素填充約定
            還是舉剛才的例子,如果給定左上角坐標為(0,0),右下角坐標為(2,2)的矩形區域,叫顯示設備去繪制的話,按照左上像素填充約定,在屏幕上填充的像素點將是:(0,0),(0,1),(1,0),(1,0)這個2X2區域,而非圖中所示的3X3區域。反過來說圖中所示的3X3區域要用坐標表示的話應該是(0,0,3,3)。簡單來說,在左上像素填充約定下,要填充(x1,y1,x2,y2)(x1,y1,x2,y2為整數)的矩形,實際填充的區域會是(x1-0.5,y1-0.5,x2-0.5,y2-0.5),這個區域的左上角像素坐標為(x1,y1),右下角像素坐標為(x2-1,y2-1),即實際的填充區域會向左和向上各偏移0.5個像素。故稱左上像素填充約定。

            0? 1? 2
            ?? 0 口口口
            ?? 1 口口口
            ?? 2 口口口

            D3D, GDI, OpenGL等圖形庫使用左上填充約定的,如果接觸過這些圖形庫,你可能會知道這個約定。還記得畫一個全屏幕的矩形吧:DrawRectangle(0, 0, Screen_Width-1, Screen_Height-1)。

            想法一:想到別的填充約定,比如右上,左下,右下等,這些不知道有哪些系統使用。

            想法二:如果以像素方格的左上角為基準制定坐標點(即對于任意一整數坐標點p(x,y),p必為某個像素方格的左上角),情況怎么樣?這時,給定(0,0,2,2),則填充時可以還會遇到一樣的問題,填充(0,0),(0,1),(1,0),(1,0),(2,0),(2,1),(0,2),(1,2),(2,2),最后還是包含了3X3= 9個像素。

            想法三:
            to be continued...

            posted on 2006-07-26 16:48 SoRoMan 閱讀(282) 評論(0)  編輯 收藏 引用
            亚洲精品乱码久久久久久蜜桃| 久久se精品一区精品二区| 久久久久国产精品嫩草影院| 精品综合久久久久久88小说| 日产久久强奸免费的看| 亚洲精品乱码久久久久久| 69国产成人综合久久精品| 91精品无码久久久久久五月天| 欧美粉嫩小泬久久久久久久| 7777久久久国产精品消防器材| 国产精品一区二区久久| 久久久久久毛片免费看| 色婷婷综合久久久久中文| 久久国产乱子伦精品免费午夜| 狠狠色婷婷久久综合频道日韩| 久久99精品国产| 久久精品中文无码资源站| 欧美激情精品久久久久久久九九九| 日韩精品久久久久久久电影蜜臀| 久久久久久久久久久免费精品| 91久久精一区二区三区大全| 日韩欧美亚洲综合久久影院Ds| 亚洲乱码中文字幕久久孕妇黑人| 国产一久久香蕉国产线看观看| 久久国产成人午夜aⅴ影院| 岛国搬运www久久| 麻豆国内精品久久久久久| 91视频国产91久久久| 久久久久亚洲AV综合波多野结衣| 亚洲精品乱码久久久久久按摩 | 久久精品aⅴ无码中文字字幕不卡| 午夜精品久久久久久毛片| 久久国产精品一区| 国产精品久久波多野结衣| 中文字幕精品无码久久久久久3D日动漫 | 热re99久久精品国产99热| 久久久久久国产精品无码下载 | 久久久精品人妻无码专区不卡| 久久精品国产亚洲精品2020| 亚洲午夜久久久| 色综合久久最新中文字幕|