原创 計算機圖形學學習筆記(5.3):非規則形體

非規則形體通常採用分形幾何和粒子系統來表示。 分形幾何 分形,具有以非整數維形式充填空間的形態特徵。通常被定義爲“一個粗糙戒零碎的幾何形狀,可以分成數個 部分,且每一部分都(至少近似地)是整體縮小後的形狀”,即具有自相似的性質。 分形(F

原创 計算機圖形學學習筆記(5.2):規則形體的表示

實體模型的三類表示: 邊界表示(Boundary Representation, B-reps),即用一組曲面(含平面)來描 述物體,這些曲面將物體分爲內部和外部。邊界表示具體又包括多邊形表面模型和掃 描表示兩種。 構造實體幾何表示(C

原创 計算機圖形學學習筆記(5.1)幾何造型與樣條

幾何造型技術 兩類對象: 規則對象是指能用歐氏幾何進行描述的形體,如點、直線、曲線、平面、曲面或實 體等。 不規則對象是指丌能用歐氏幾何加以描述的對象,如山、水、樹、草、雲、煙等自然界豐富多彩的對象。 規則對象的造型又稱爲幾何造型。在幾何

原创 計算機圖形學學習筆記(4.4):圖元與反走樣

圖元屬性 基本圖元屬性: 點: 顏色、大小(像素方塊) 直線:顏色、線寬、線型 附加技能:畫筆、筆刷等特殊效果 線寬 - 斜率絕對值<1 交替的在單寬度路徑上下繪製像素 顯示的線寬根據,實際線寬和斜率計算 線帽 - 減少端點的影響 折線轉

原创 C++矩陣運算庫推薦

矩陣運算再很多數學算法中經常用到,不懂矩陣,就不算真正理解現代數學。大量現代高級算法都需要用到矩陣運算,根據之前的工作,順便做了個調查,做一些相關的推薦吧。 Armadillo:C++下的Matlab替代品 地址:http://arma.

原创 手把手教你如何使用Poco TCPServer框架

1 TCPServer 框架概述 POCO C++開發庫的特點是非常適合寫後臺處理程序,側重於互聯網時代的網絡應用程序,效率也很高。前臺界面程序使用Qt框架庫,非常好,兩個庫相輔相成,可解決項目上的大部分問題. POCO 庫提供TCPSe

原创 計算機圖形學學習筆記(4.3):多邊形掃描轉換與區域填充

多邊形掃描轉換 多邊形的掃描轉換和區域填充這個問題是怎麼樣在離散的像素集上表示一個連續的二維圖形? 多邊形有兩種重要的表示方法:頂點表示和點陣表示。 頂點表示 頂點表示是用多邊形的頂點序列來表示多邊形。 優點:這種表示直觀、幾何意義強。

原创 一文看懂3種揹包問題

前言 前面在動態規劃詳解一文種講解了幾個動態規劃的基本問題。最近在工作中碰到了揹包問題,寫了一下基於動態規劃的算法,決定寫一篇文章總結一下。 3種揹包問題的比較 揹包問題:有N種物品和一個容量爲b的揹包,第i種物品的重量爲,價值爲,如何選

原创 兩個多邊形之間的切線算法,最通俗易懂的講解

兩個多邊形之間的切線算法 前言 之前的文章中討論了點到多邊形的切線,這裏繼續討論兩個分離的多邊形之間的切線問題。與點到多邊形的切線相似,只是略微複雜。因爲: 必須以同樣的方式考慮兩個多邊形的頂點,因此算法複雜度必然增加; 對於兩個多邊形之

原创 VS下 L 和 _T() 指令

1.L指令 字符串前面加 L 表示該字符串是Unicode 字符串,可以將ANSI字符串轉換成 Unicode 字符串,就是每個字符佔兩個字節。 strlen("abc") = 3; strlen(L"abc") = 6;   2.T()

原创 計算機圖形學學習筆記(4.2)畫圓與橢圓

一般採用八分法畫圓,由於圓的對稱性,只需計算出八分之一圓弧的像素點即可。如下圖: 最直接的想法是:利用簡單函數方程,直接離散計算: 或者利用極座標方程,直接離散計算,如下圖:   聯想到直線中點Bresenham畫法(參考:Bres

原创 點到多邊形的切線

前言 切線的構造屬於計算幾何中的基礎問題。存在高效的算法可以計算凸集的切線。對於凹集,其切線與對應凸集的切線相同,所以也能高效計算。因此,我們這裏僅僅討論凸多邊形的切線。 尋找切線的算法與尋找極值點的算法(凸多邊形的極值點)類似。通過運用

原创 凸多邊形的極值點

前言 在計算幾何中,我們經常需要尋找一個2D多邊形(Polygon)的極值點。例如通過x\y的極值點,我們可以定義一個多邊形的包圍盒。更一般的情況下,我們可能會需要尋找一個多邊形在任意方向上的極值點。對於n個點的點集,很容易找到一個O(n

原创 《計算機圖形學》學習筆記(三):可編程渲染管線

3.可編程渲染管線 3.1 渲染管線的發展歷程 1.圖形編程的發展               早期的圖形編程:調用硬件供貨商提供的函數庫(用來繪製圖元及其屬性的函數庫不存在 圖形標準的產生:硬件供貨商提供標準圖形數據庫,使得能夠在設備無

原创 《計算機圖形學》學習筆記(二):認識圖形系統

2. 認識圖形系統 計算機圖形系統的組成 從計算機圖形系統的功能看組成(如下圖): 按軟硬件構成如下圖: 圖形硬件的發展 圖形輸入設備的發展 第一階段:控制開關、穿孔紙 第二階段:鍵盤 第三階段:二維定位設備,如鼠標、光筆、圖形輸入板