日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

有效边表填充算法

發布時間:2023/12/13 综合教程 36 生活家
生活随笔 收集整理的這篇文章主要介紹了 有效边表填充算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基本思想:

用水平掃描線從上到下(或從下到上)掃描由多條首尾相連的線段構成的多邊形,每根掃描線

與多邊形的某些邊產生一系列的交點。將這些交點按照x坐標排序,將排序后的點兩兩配對,作

為線段的兩個端點,以所填的顏色畫水平直線。

步驟

1.求交,計算掃描線與多邊形的交點。

2.交點排序,對第1步得到的交點按照x從小到大排序

3.顏色填充,對排序后的交點兩兩組成一個水平線段,以畫線段的方式進行顏色填充。

4.完成多邊形掃描,就結束算法,否則,繼續1

有效邊

多邊形與當前掃描線相交的邊成為有效邊(active edge)。在處理一條掃描線時僅對有效邊進行

求交運算,避免與多邊形所有邊求交,提高效率。

x ymax 1/k next

桶表與邊表

有效邊給出了掃描線與有效邊交點的計算方法,但沒有給出新邊出現的位置坐標。為了確定在

哪條掃描線上加入了新邊,就需要構造一個邊表(edge table ET),用以存放掃描線上多邊形各

條邊出現的信息。水平邊本身就是掃描線在建立邊表時可以不予考慮。

桶表與邊表的表示法

桶表是按照掃描線順序管理邊出現的一個數據結構。首先,構造一個縱向掃描線鏈表,鏈表的

長度為多邊形所占有的最大掃描線數,鏈表的每個節點稱為桶(bucket),對應多邊形覆蓋的每一

條掃描線。

將每條邊的信息鏈加入該邊最小y坐標對應的桶處。

對每一條掃描線,如果新增多條邊,按照x|ymin 坐標遞增的順序存放在一個鏈表中,若x|ymin 相等,

則按照1/k遞增,就形成邊表。

x|ymin ymax 1/k

next

總結

以上是生活随笔為你收集整理的有效边表填充算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。