原创 算法系列之十三:橢圓的生成算法 .

       橢圓和直線、圓一樣,是圖形學領域中的一種常見圖元,橢圓的生成算法(光柵轉換算法)也是圖形學軟件中最常見的生成算法之一。在平面解析幾何中

原创 DirectX3D畫線接口ID3DXLine

  原文地址:http://blog.csdn.net/rabbit729/article/details/6583871 使用DrawPrimitive()繪製的線沒法控制其線性和繪製虛線,爲此DirectX3D提供了ID3DXLi

原创 算法系列之十四:狼、羊、菜和農夫過河問題 .

題目描述:農夫需要把狼、羊、菜和自己運到河對岸去,只有農夫能夠划船,而且船比較小,除農夫之外每次只能運一種東西,還有一個棘手問題,就是如果沒有農夫看着,羊會偷喫菜,狼會喫羊。請考慮一種方法,讓農夫能夠安全地安排這些東西和他自己過河。  

原创 Bezier曲線的原理 及 二次Bezier曲線的實現 .

Bezier曲線的原理 Bezier曲線是應用於二維圖形的曲線。曲線由頂點和控制點組成,通過改變控制點座標可以改變曲線的形狀。   一次Bezier曲線公式: 一次Bezier曲線是由P0至P1的連續點,描述的一條線段   二次Bez

原创 算法系列之十二:多邊形區域填充算法--掃描線填充算法(有序邊表法) .

二、掃描線算法(Scan-Line Filling)         掃描線算法適合對矢量圖形進行區域填充,只需要直到多邊形區域的幾何位置,不需要指定種子點,適合計算機自動進行圖形處理的場合使用,比如電腦遊戲和三維CAD軟件的渲染等等。

原创 算法系列之十二:多邊形區域填充算法--幾種邊標誌填充算法 .

四、邊界標誌填充算法         在光柵顯示平面上,多邊形是封閉的,它是用某一邊界色圍成的一個閉合區域,填充是逐行進行的,即用掃描線逐行對多邊形求交,在交點對之間填充。邊界標誌填充算法就是在逐行處理時,利用邊界或邊界顏色作爲標誌來進行

原创 A*尋路 -- 算法優化

基本思路:   1二叉堆 2用version代替close open列表 3用精簡的估計公式 4提前運算 5代碼本身的優化。   這個尋路算法基本還沒找到as3寫的能超過他的。     Java代碼   package 

原创 A*尋路 -- 更加真實 的路徑(一)

地址:http://chaimzane.iteye.com/blog/1629039 對於A*尋路算法,可能是遊戲開發者討論最多的話題之一,很多遊戲都會用到它來實現遊戲角色的尋路。那麼我這篇帖子的價值何在呢?先來看看傳統A*算法存在的問題

原创 直線裁剪算法

此算法 就是Cyrus-Beck裁剪算法 1.判斷dx,dy是否爲零作相應的簡單處理,並返回 2.下面通過例子說明第2步的原理,現在先給出原理如果P1P2與裁剪區域有交點,那麼P1P2與裁剪區域存在交集,使得交集中的任一元素t同時滿足下

原创 WPF獲取想對於父控件的子控件座標

方法一: //_stackPanel爲子元素,_grid爲父元素 Point point = _stackPanel.TranslatePoint(new Point(0, 0), (UIElement)_grid);  

原创 A*尋路 -- 弗洛伊德(Floyd)算法

轉:http://www.itweb2.com/article/system/317.htm   弗洛伊德(Floyd)算法過程: 1、用D[v][w]記錄每一對頂點的最短距離。 2、依次掃描每一個點,並以其爲基點再遍歷所有每一對頂點D[

原创 XNA中文顯示學習

學習XNA一段時間了,但是中文還是不能顯示,感覺上XNA就象個嬰兒一樣脆弱,然後就仔細的去找了一遍關於中文顯示的範例,開始說的是即時編譯的方法,就是用xml編譯需要的字庫,然後顯示,費時費力,看來沒多少選擇,所以我也沒看這種方法,偶然翻看

原创 算法系列之十二:多邊形區域填充算法--掃描線種子填充算法 .

1.3掃描線種子填充算法         1.1和1.2節介紹的兩種種子填充算法的優點是非常簡單,缺點是使用了遞歸算法,這不但需要大量棧空間來存儲相鄰的點,而且效率不高。爲了減少算法中的遞歸調用,節省棧空間的使用,人們提出了很多改進算法,

原创 使用c#打開文件夾及選中文件

引用:using System.Diagnostics; 打開文件夾: System.Diagnostics.Process.Start(FilePath); 打開文件夾中某個文件: System.Diagnostics.Process.

原创 算法系列之十二:多邊形區域填充算法--改進的掃描線填充算法 .

三、改進的掃描線填充算法         掃描線填充算法的原理和實現都很簡單,但是因爲要同時維護“活動邊表(AET)”和“新邊表(NET)”,對存儲空間的要求比較高。這兩張表的部分內容是重複的,而且“新邊表”在很多情況下都是一張稀疏表,如