集合運算,是數學(xué)科學(xué)中常用的詞語(yǔ),是一種非常有效的構造形體的方法,可以直觀(guān)的減少運算難度。

中文名

集合運算

適用

正則集與正則集合運算算子

釋義

一種非常有效的構造形體的方法

應用領(lǐng)域

數學(xué)科學(xué)

概念

集合運算是實(shí)體造型系統中非常重要的模塊,也是一種非常有效的構造形體的方法。從一維幾何元素到三維幾何元素,人們針對不同的情況和應用要求,提出了不少集合運算算法。

在早期的造型系統中,處理的對象是正則形體,因此定義了正則形體集合運算,來(lái)保證正則形體在集合運算下是封閉的。在非正則形體造型中,參與集合運算的形體可以是體、面、邊、點(diǎn),運算的結果也是這些形體,這就要求集合運算算法中能統一處理這些不同維數的形體,因此需要引入非正則形體運算。

1、正則集與正則集合運算算子

Tilove根據點(diǎn)集拓撲學(xué)的原理,給出了正則集的定義。認為正則的幾何形體是由其內部點(diǎn)的閉包構成,即由內部點(diǎn)和邊界兩部分組成。對于幾何造型中的形體,規定正則形體是三維歐氏空間中的正則集合,因此可以將正則幾何形體描述如下:

主要類(lèi)型

設G是三維歐氏空間R3中的一個(gè)有界區域,且G=bG∪iG,其中bG是G的n-1維邊界,iG是G的內部。G的補空間cG稱(chēng)為G的外部,此時(shí)正則形體G需滿(mǎn)足:

1)bG將iG和cG分為兩個(gè)互不連通的子空間;

2)bG中的任意一點(diǎn)可以使iG和bG連通;

3)bG中任一點(diǎn)存在切平面,其法矢指向cG子空間

4)bG是二維流形。

對于正則形體集合,可以定義正則集合算子。設是集合運算算子(交、并或差),如果R3中任意兩個(gè)正則形體A、B作集合運算:

R=AB

運算結果R仍是R3中的正則形體,則稱(chēng)為正則集合算子,正則并、正則交、正則差分別記為∪*,∩*、-*。

分類(lèi)

幾何造型中的集合運算實(shí)質(zhì)上是對集合中的成員進(jìn)行分類(lèi)的問(wèn)題,Tilove給出了集合成員分類(lèi)問(wèn)題的定義及判定方法。

Tilove對分類(lèi)問(wèn)題的定義為:設S為待分類(lèi)元素組成的集合,G為一正則集合,則S相對于G的成員分類(lèi)函數為:

C(S,G)={S in G,S out G,S on G}, (3-2-1)

其中,

S in G=S∩iG,

S out G=S∩cG,

S on G=S∩bG,

如果S是形體的表面,G是一正則形體,則定義S相對于G的分類(lèi)函數時(shí),需考慮S的法向量。記-S為S的反向面。形體表面S上一點(diǎn)P相對于外側的法向量為NP(S),相反方向的法向量為- NP(S),則(3-2-1)式中S on G可分為兩種情況:

S on G ={S shared(bG),S shared(-bG)},

其中,

S shared(bG)={P|P∈S,P∈bG,NP(S)=NP(bG)},

S shared(-bG)={P|P∈S,P∈bG,NP(S)=-NP(bG)}。

于是,S相對于G的分類(lèi)函數C(S,G)可寫(xiě)為:

C(S,G)={S in G,S out G,S shared(bG),S shared(-bG)}。

由此,正則集合運算定義的形體邊界可表達為:

b(A∪B)={bA out B,bB out A,bA shared(bB)},

b(A∩B)={bA in B,bB in A,bA shared(bB)},

b(A-B)={bA out B,-(bB in A),bA shared(-bB)}。

3.集合運算算法

正則集合運算與非正則形體運算的區別在于增加了正則化處理步驟。下面,我們給出一個(gè)非正則形體的集合運算算法。

假定參與集合運算的形體為A和B,運算的結果形體C=AB,其中集合運算符為通常的集合運算并、交、差(è 、? 、- )。

對于一個(gè)非正則形體L,可以將其分解為L(cháng)=L3èL2èL1èL0,其中L3為R3中的正則閉集之并,存在面表、邊表、點(diǎn)表等拓撲元素。L2是懸面集,存在邊表和點(diǎn)表。L1是懸邊集,只有端點(diǎn)。L0是孤立點(diǎn)集。

集合運算整個(gè)算法包括了以下幾部分:

(1)求交:參與運算的一個(gè)形體的各拓撲元素求交,求交的順序采用低維元素向高維元素進(jìn)行。用求交結果產(chǎn)生的新元素(維數低于參與求交的元素)對求交元素進(jìn)行劃分,形成一些子元素。這種經(jīng)過(guò)求交步驟之后,每一形體產(chǎn)生的子拓撲元素的整體相對于另一形體有外部、內部、邊界上的分類(lèi)關(guān)系。

2)成環(huán):由求交得到的交線(xiàn)將原形體的面進(jìn)行分割,形成一些新的面環(huán)。再加上原形體的懸邊、懸點(diǎn)經(jīng)求交后得到的各子拓撲元素,形成一拓撲元素生成集。

(3)分類(lèi):對形成的拓撲元素生成集中的每一拓撲元素,取其上的一個(gè)代表點(diǎn),根據點(diǎn)/體分類(lèi)的原則,決定該點(diǎn)相對于另一形體的位置關(guān)系,同時(shí)考慮該點(diǎn)代表的拓撲元素的類(lèi)型(即其維數),來(lái)決定該拓撲元素相對于另一形體的分類(lèi)關(guān)系。

(4)取舍:根據拓撲元素的類(lèi)型及其相對另一形體的分類(lèi)關(guān)系,按照集合運算的運算符要求,要決定拓撲元素是保留還是舍去;保留的拓撲元素形成一個(gè)保留集。

(5)合并:對保留集中同類(lèi)型可合并的拓撲元素進(jìn)行合并,包括面環(huán)的合并和邊的合并。

(6)拼接:以拓撲元素的共享邊界作為其連接標志,按照從高維到低維的順序,收集分類(lèi)后保留的拓撲元素,形成結果形體的邊界表示數據結構。

集合的運算

主條目:并集

兩個(gè)集合可以相"加"。A和B的

并集

是將A和B的元素放到一起構成的新集合。

定義

給定集合A,B,定義運算∪如下:

A∪B稱(chēng)為A和B的

并集

。

示例

  • {1, 2}∪{紅色, 白色} = {1, 2, 紅色, 白色}{1, 2, 綠色}∪{紅色, 白色, 綠色} = {1, 2, 紅色, 白色, 綠色}{1, 2}∪{1, 2} = {1, 2}

基本性質(zhì)

作為集合間的二元運算,∪運算具有以下性質(zhì)。

交換律:

結合律:

冪等

幺元

是∪運算的幺元)。交

主條目:交集

一個(gè)新的集合也可以通過(guò)兩個(gè)集合"共"有的元素來(lái)構造。A和B的

交集

,寫(xiě)作A∩B,是既屬于A(yíng)的、又屬于B的所有元素組成的集合。

,則A和B稱(chēng)作

不相交

。

定義

給定集合A,B,定義運算∩如下:

交集

稱(chēng)為A和B的

交集

。

基本性質(zhì)

作為集合間的二元運算,∩運算具有以下性質(zhì)。

  • 交換律

  • 結合律

  • 冪等律

空集合

是∩運算的空集合)。

其它性質(zhì)還有:

示例

{1, 2}∩{紅色, 白色} =

{1, 2, 綠色}∩{紅色, 白色, 綠色} = {綠色}

{1, 2}∩{1, 2} = {1, 2}

主條目:差集

兩個(gè)集合也可以相"減"。A在B中的相對補集,寫(xiě)作B?A,是屬于B的、但不屬于A(yíng)的所有元素組成的集合。

在特定情況下,所討論的所有集合是一個(gè)給定的全集U的子集。這樣,U?A稱(chēng)作A的絕對補集,或簡(jiǎn)稱(chēng)補集(余集),寫(xiě)作A′或CUA。

補集可以看作兩個(gè)集合相減,有時(shí)也稱(chēng)作

差集

。

定義

給定集合A,B,定義運算-如下:

A-B稱(chēng)為B對于A(yíng)的

差集

,

相對補集

或相對余集。

在上下文確定了

全集

U時(shí),對于U的某個(gè)子集A,一般稱(chēng)U - A為A(對于U)的

補集

余集

,通常記為

,也有記為

的。

基本性質(zhì)

作為集合間的二元運算,- 運算有如下基本性質(zhì):

右幺元

:?集合A,

(

是 - 運算的右幺元)。

左零元

:?集合A,

(

是 - 運算的左零元)。

示例

{1, 2}?{紅色, 白色} = {1, 2}

{1, 2, 綠色}?{紅色, 白色, 綠色} = {1, 2}

{1, 2}?{1, 2} =

若U是整數集,則奇數的補集是偶數

對稱(chēng)差

主條目:對稱(chēng)差

定義

給定集合A,B,定義

對稱(chēng)差

運算△如下:

基本性質(zhì)

作為集合間的二元運算,△運算具有如下基本性質(zhì):

交換律

結合律

幺元

是△運算的幺元)。

逆元