Monday, April 30, 2007
空間判斷小問題(一)
最近同事的工作上出現了一個小小的問題與主管討論,這是一個關於空間的判定問題,簡單的說就是:今天有一個圖形上面充滿了許多的區域,也就是說一個有許多polygon的圖形,當使用者用滑鼠點選螢幕的一個位置的時候,程式必須決定使用者選取了哪一個位置而做出相對應的反應。這樣的問題在graph裡面算是一個簡單的小問題,當然也可以不用graph的方式解決,後來同事似乎用顏色判別來解決(每一區用一個顏色代表),但是當我們必須使每一區域都一樣的顏色或是顏色會改變時,就得真正的去面對空間的問題.....繼續閱讀
Wednesday, April 11, 2007
Google notebook
Thursday, March 22, 2007
AGG: Anti-Grain Geometry
最近在學習AGG這個2D圖形library,覺得他真的很棒
反鋸齒的展示2D圖形在向量圖中的表現關係到整體感覺
AGG在這個方面表現的十分出色
AGG是一個用C++來實作的library,他用了大量的template來作泛型化設計
因此它的使用十分具有彈性
在跨平台上面他也是很棒
幾乎所有的code都是跨平台的
惟一與平台有關的是在OS event與drawing上面
因此他利用了一個類別稱為platform_support來處理與OS相關的
在platform_support裏面的platform_specific他只宣告它是一個類別
所有跟OS相關的資料結構妳可以宣告在這個類別中
因此將AGG放進目前不支援的drwaing library是非常簡單的
AGG目前有X11、SDL、Mac與win32的支援
我實作了DirectFB的支援,還挺容易的
AGG自己有一套control系統,現在已經有一些基本的control
譬如check box與slide-bar等等的控制元件
在字型顯示方面,他有提供freetype的支援
因此在文字顯示也不是問題
我試過utf-8的中文顯示很棒
但是在轉換unicode碼的部份妳要自己實作
不過這部份並不困難就是
結合AGG+DirectFB+SVG
或許可以有一些有趣的project可以玩玩歐
反鋸齒的展示2D圖形在向量圖中的表現關係到整體感覺
AGG在這個方面表現的十分出色
AGG是一個用C++來實作的library,他用了大量的template來作泛型化設計
因此它的使用十分具有彈性
在跨平台上面他也是很棒
幾乎所有的code都是跨平台的
惟一與平台有關的是在OS event與drawing上面
因此他利用了一個類別稱為platform_support來處理與OS相關的
在platform_support裏面的platform_specific他只宣告它是一個類別
所有跟OS相關的資料結構妳可以宣告在這個類別中
因此將AGG放進目前不支援的drwaing library是非常簡單的
AGG目前有X11、SDL、Mac與win32的支援
我實作了DirectFB的支援,還挺容易的
AGG自己有一套control系統,現在已經有一些基本的control
譬如check box與slide-bar等等的控制元件
在字型顯示方面,他有提供freetype的支援
因此在文字顯示也不是問題
我試過utf-8的中文顯示很棒
但是在轉換unicode碼的部份妳要自己實作
不過這部份並不困難就是
結合AGG+DirectFB+SVG
或許可以有一些有趣的project可以玩玩歐
Wednesday, March 14, 2007
淺談OpenSER(三)
在整個openser.cfg中最重要的大概就是你怎麼處理route裏面的規則,這裡給你做一個簡單的示範。
通常一開始會先檢查SIP message是否是合法的,因此我們對SIP message的forward header與message長度作檢查.......繼續閱讀
Thursday, March 01, 2007
淺談OpenSER(二)
如果妳打開openser.cfg這個檔案,第1眼印象妳可能會以為它是一個script檔案,其實這樣說也沒有不對,但是之前說過這個script其實是lex的輸入文檔,因此妳必須滿足它的字彙規則,讓我們先簡單看一下這個檔案。
這個設定OpenSER的動作檔案簡單可以分成4個部份,分別如下......繼續閱讀
Subscribe to:
Comments (Atom)

