半邊表

半邊表是一種比較流行的數據結構,它以指針的形式保存格線的拓撲關係。

基本介紹

  • 中文名:半邊表
  • 外文名:Half the table
  • 類型:計算機
  • 屬於:幾何
簡介,結構表示,

簡介

圖1半邊表表示的格線實例圖1半邊表表示的格線實例
圖1是半邊表的是個例子。半邊表是由頂點,半邊以及面組成。頂點表示格線中的實際點,在圖中用黃點表示。其中半邊可視為一條有向邊,封閉的格線中的一條邊由2條方向相反的半邊組成,在圖中用藍色有向邊表示。整個格線的鄰接關係主要靠半邊間的關係來表示。對於每條半邊,用next指針來記錄同個面上的下一條邊,圖中表示為順時針方向的下一條邊;用pair指針來記錄相鄰面的相鄰關係,這樣一條實際邊上的2條半邊互為pair關係,圖中紫色箭頭表示了pair指針。表示了鄰接關係後,每條半邊再記錄它的起始點以及所在的面,每個點記錄它射出的半邊,每個面記錄屬於它的任意一條半邊,我們就可以完全記錄格線的結構並對它進行操作了。

結構表示

半邊表3種結構表示如下:
struct HE_edge
{
HE_vert* vert; //該邊的起始點指針
HE_edge* pair; //該邊的相對半邊指針
HE_face* face; //該邊所在的面指針
HE_edge* next;//該邊所在面順時針方向的下一條半邊的指針
};
struct HE_vert
{
float x;
float y;
float z;
HE_edge* edge; //以該點為起始點的半邊的指針
}
struct HE_face
{
HE_edge* edge; //該面中任意一條半邊的指針
}

相關詞條

熱門詞條

聯絡我們