專利名稱:邊界數(shù)據(jù)的內(nèi)外判定方法及其程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及判定是二維或三維邊界面的內(nèi)側(cè)還是外側(cè)的邊界數(shù)據(jù)的內(nèi)外判定方法及其程序。
背景技術(shù):
在研究開發(fā)、技術(shù)開發(fā)的現(xiàn)場(chǎng),利用CAD(Computer AidedDesign計(jì)算機(jī)輔助設(shè)計(jì))、CAM(Computer Aided Manufacturing計(jì)算機(jī)輔助制造)、CAE(Computer Aided Engineering計(jì)算機(jī)輔助工程)、CAT(Computer Aided Testing計(jì)算機(jī)輔助測(cè)試)等仿真分別作為設(shè)計(jì)、加工、解析、試驗(yàn)的仿真手段。
并且作為連續(xù)性的仿真的C-Simulation(CoorporativeSimulation協(xié)同仿真)、考慮了加工過程的A-CAM(Advanced CAM高級(jí)CAM)、能達(dá)到很高精度的D-fabrication(Deterministicfabrication確定性制造)也不斷普及。
在上述現(xiàn)有的仿真手段中,對(duì)象物的邊界面有著重要的意義,譬如,用邊界來表現(xiàn)對(duì)象物,邊界面的內(nèi)部被處理成一致,這樣的處理廣泛地進(jìn)行著。在這樣的情況下,判定是二維或三維的邊界面的內(nèi)側(cè)還是外側(cè)的內(nèi)外判定法就變得非常必要。
在現(xiàn)有的內(nèi)外判定法中,公知的有(1)光線交叉法、(2)運(yùn)用邊界尋跡的區(qū)域成長(zhǎng)(擴(kuò)張)法、(3)在圖像處理中的光柵尋跡、(4)多方向?qū)ほE、(5)Curless方法,(6)利用八叉樹的Szelisk法及Pulli法、特開平8-153214號(hào)和特開平9-81783號(hào)等。
(1)的區(qū)域成長(zhǎng)(擴(kuò)張)法(Ray crossings method射線交叉法)是用在有輸入邊界面的情況下從某一點(diǎn)發(fā)出的光線(半直線)與邊界的交點(diǎn)是奇數(shù)還是偶數(shù),如果是偶數(shù)則判別光線的視點(diǎn)在物體的外部,若是奇數(shù)則判別在物體的內(nèi)部。相關(guān)的區(qū)域成長(zhǎng)(擴(kuò)張)法,例如公開在“Computational geometry in C second edition”(J.O’Rourke,p.246,Cambridge University Press,1998.)中。
區(qū)域成長(zhǎng)(擴(kuò)張)法有如下的問題不適用于在光線偶爾與邊界相接觸時(shí),為成為重根本應(yīng)有2個(gè)的交點(diǎn)變?yōu)?個(gè)的情況,也不適用于當(dāng)邊界信息不完備(在通過CAD數(shù)據(jù)等從不同的軟件讀入時(shí)由于表現(xiàn)方法的不同或數(shù)值誤差的原因而導(dǎo)致數(shù)據(jù)缺失)的情況。
(2)在只提供邊界信息的圖像處理中所用到邊界尋跡的區(qū)域成長(zhǎng)(擴(kuò)張)法,公開在如“數(shù)字圖像處理”(Rosenfeld & Kak,長(zhǎng)尾譯,近代科學(xué)社,pp.353~357)中,存在著由于處理涉及到全體而速度變慢,以及如果表面信息不完備則內(nèi)外判定也不能正確進(jìn)行等問題。
(3)在圖像處理中的光柵尋跡,公開在同一個(gè)“數(shù)字圖像處理”,p.343中,雖然是一邊沿X軸等坐標(biāo)軸進(jìn)行單元掃描一邊對(duì)邊界及邊界所夾的區(qū)域進(jìn)行尋跡的方法。但也仍然在將有不完備(沒形成閉曲面)的邊界信息作為量子化的圖像時(shí)不能正確進(jìn)行內(nèi)外判定。
(4)作為避免上述的方法,雖然有多方向?qū)ほE(同p.332)法但效率低。
(5)在逆向工程(從測(cè)定點(diǎn)群再構(gòu)筑表面信息的方法)領(lǐng)域中的Curless方法是利用相對(duì)于有規(guī)則的排列的測(cè)定點(diǎn)和測(cè)定對(duì)象的多個(gè)攝像機(jī)方向等外部信息,用整個(gè)場(chǎng)定義基于距離的負(fù)函數(shù),再次構(gòu)筑表面信息的穩(wěn)固的方法,公開在“A volumetric method for buildingcomplex models form range images.”(在B.Curless and M.Levoy,In Proceedings of SIGGRAPH’96,pages 303-312,August 1996)中。
但是,Curless方法是必須要進(jìn)行所有單元的距離場(chǎng)計(jì)算的,這就存在數(shù)據(jù)量和計(jì)算時(shí)間的缺陷。同時(shí)也存在著在比單元尺寸薄的構(gòu)造和銳角面中不能準(zhǔn)確計(jì)算距離函數(shù)等精度上的問題。這些在內(nèi)外判定中都會(huì)導(dǎo)致誤判斷。
(6)使用八叉樹的Szeliski的方法(R.Szeliski.”Rapid octreeconstruction from image sequences.”)及Pulli方法(“Robustmeshes from multiple range maps.”K.Pulli,T.Duchamp,H.Hoppe,J.McDonald,L.hapiro,W.Stuetzle.Proceedings of International Conference on Recent Advances in3-D Digital Imaging and Modeling,May 1997,pages 205-211.)都是把取得的幾個(gè)對(duì)象的范圍數(shù)據(jù)(距離數(shù)據(jù))與將空間用八叉樹分割成單元的關(guān)系分為內(nèi)部、外部、邊界三類,再構(gòu)建邊界的方法。在這些方法中由于在各單元中要應(yīng)用投影(projection)操作,所以處理復(fù)雜繁瑣,花費(fèi)時(shí)間,進(jìn)而有投影操作中的計(jì)算不穩(wěn)定的問題。
特開平8-153214號(hào)的“三維正交格子數(shù)據(jù)的生成方法”是進(jìn)行表面格子和空間體素的區(qū)別之后進(jìn)行反轉(zhuǎn)生成表面格子的方法,但只能對(duì)應(yīng)兩種媒質(zhì),對(duì)三種以上的多媒質(zhì)的應(yīng)用就比較困難或者不能進(jìn)行。
特開平9-81783號(hào)的“有限要素模型處理系統(tǒng)及其方法”是對(duì)判定對(duì)象的分割要素的面積、與將該分割要素的各邊的結(jié)點(diǎn)和判定對(duì)象的結(jié)點(diǎn)作為頂點(diǎn)的各三角形面積之和是否一致進(jìn)行判定的方法。但此方法不適用于邊界信息不完備的情況。
發(fā)明內(nèi)容
本發(fā)明是為了解決上述問題而發(fā)明的。即本發(fā)明的目的是提供一種如下所述的內(nèi)外判定方法及其程序?qū)τ谶吔缧畔⒌牟煌陚溥m應(yīng)性強(qiáng),即便在邊界信息不完備的情況下也能進(jìn)行內(nèi)外判定,處理時(shí)間短且速度快,對(duì)計(jì)算機(jī)的安裝容易,很少會(huì)將不同的空間分類為一個(gè)空間,并對(duì)于多重空間也可適用。
通過本發(fā)明,可以提供以包含輸入由對(duì)象物的邊界數(shù)據(jù)構(gòu)成的外部數(shù)據(jù)(12)的外部數(shù)據(jù)輸入步驟(A)、將上述外部數(shù)據(jù)分割成邊界平面正交的長(zhǎng)方體單元(13)的單元分割步驟(B)、將分割后的各單元區(qū)分為包含邊界數(shù)據(jù)的邊界單元(13a)和不包含邊界數(shù)據(jù)的非邊界單元(13b)的單元區(qū)分步驟(C)、以及將上述非邊界單元(13b)區(qū)分為被邊界單元(13a)分隔的多個(gè)空間的空間區(qū)分步驟(D)為特征的邊界數(shù)據(jù)的內(nèi)外判定方法。
通過本發(fā)明,提供了一種用于利用計(jì)算機(jī)來實(shí)施下述步驟的邊界數(shù)據(jù)的內(nèi)外判定程序輸入由對(duì)象物的邊界數(shù)據(jù)構(gòu)成的外部數(shù)據(jù)(12)的外部數(shù)據(jù)輸入步驟(A)、將上述外部數(shù)據(jù)分割成邊界平面正交的長(zhǎng)方體單元(13)的單元分割步驟(B)、將分割后的各單元區(qū)分為包含邊界數(shù)據(jù)的邊界單元(13a)和不包含邊界數(shù)據(jù)的非邊界單元(13b)的單元區(qū)分步驟(C)、以及將上述非邊界單元(13b)區(qū)分為被邊界單元(13a)分隔的多個(gè)空間的空間區(qū)分步驟(D)。
由于根據(jù)上述本發(fā)明的方法及其程序,可以在單元分割步驟(B)中把所有的外部數(shù)據(jù)(12)分割成邊界平面正交的長(zhǎng)方體單元(13),并在單元區(qū)分步驟(C)中將分割后的各單元區(qū)分為邊界單元(13a)和非邊界單元(13b),所以外部數(shù)據(jù)(12)即使假設(shè)有邊界信息的不完備,也一定可以區(qū)分邊界單元(13a)或非邊界單元(13b)。
而且由于長(zhǎng)方體單元(13)比原來的邊界數(shù)據(jù)大,所以通過將只含有邊界數(shù)據(jù)的一部分(譬如一點(diǎn))的單元作為邊界單元(13a),邊界單元(13a)就必定包含邊界數(shù)據(jù)。而且即便在數(shù)據(jù)缺失等邊界信息不完備時(shí),只要其缺失的大小比非邊界單元(13b)的大小要小,邊界單元(13a)也必含有具有缺失的邊界數(shù)據(jù)。
所以本發(fā)明的方法及其程序?qū)τ谶吔缧畔⒌牟煌陚溥m應(yīng)性強(qiáng),即便是在邊界信息不完備時(shí),也能進(jìn)行內(nèi)外判定。根據(jù)本發(fā)明的優(yōu)選的實(shí)施方式,上述空間區(qū)分步驟(D)由對(duì)空間號(hào)碼k進(jìn)行初始設(shè)定的初始設(shè)定步驟(D1)、將上述長(zhǎng)方體單元(13)全部按順序掃描并付與空間號(hào)碼k標(biāo)號(hào)的標(biāo)號(hào)付與步驟(D2)、以及重新付上付與的空間號(hào)碼k標(biāo)號(hào)的標(biāo)號(hào)修正步驟(D3)組成,該標(biāo)號(hào)付與步驟(D2)由前一個(gè)單元與掃描中的單元是非邊界單元(13b)時(shí)對(duì)掃描單元付與和前一個(gè)單元同樣的空間號(hào)碼k標(biāo)號(hào)的步驟(E1)、當(dāng)掃描單元是邊界單元(13a)時(shí),對(duì)掃描單元付與邊界單元的空間號(hào)碼的步驟(E2)、以及當(dāng)前一個(gè)單元是邊界單元(13a)且掃描單元是非邊界單元(13b)時(shí)將空間號(hào)碼k更新為k+1并且對(duì)掃描單元付與更新后的空間號(hào)碼k的步驟(E3)組成,標(biāo)號(hào)修正步驟(D3)由對(duì)鄰接的單元的空間號(hào)碼進(jìn)行比較的步驟(F1)、以及重新付上與最小空間號(hào)碼鄰接的所有單元的空間號(hào)碼k的步驟(F2)組成。
根據(jù)此方法,通過對(duì)長(zhǎng)方體單元(13)全部分別只進(jìn)行一次標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3),就能夠?qū)⑺械姆沁吔鐔卧?13b)區(qū)分成由邊界單元(13a)分隔的多個(gè)空間。
因此,即便在單元數(shù)n很大的情況下,處理時(shí)間只是0(n)的量級(jí)(與n成比例),可以進(jìn)行高速處理。
而且計(jì)算順序簡(jiǎn)單、程序化、對(duì)計(jì)算機(jī)的安裝也容易。
并且,由于被邊界單元(13a)分隔開來的多個(gè)空間里付與著不同的空間號(hào)碼k,所以不會(huì)將不同的空間分類為一個(gè)空間,對(duì)于多重空間也可以適用。
此外,優(yōu)選的是,在上述單元分割步驟(B)中,利用八叉樹分割進(jìn)行再分割,直至得到可以再構(gòu)筑構(gòu)成在外部數(shù)據(jù)中含有長(zhǎng)方體單元(13)的邊界面的邊界形狀要素的充足的切斷點(diǎn)為止。并且,上述單元分割步驟(B)中優(yōu)選將體素?cái)?shù)據(jù)分割為在相同大小的長(zhǎng)方體單元(13)中進(jìn)行分割。
在單元分割步驟(B)中,通過進(jìn)行八叉樹分割,就可以應(yīng)用于V-CAD數(shù)據(jù)。而且,通過進(jìn)行等分割,就可以處理通常的體素?cái)?shù)據(jù)。
上述標(biāo)號(hào)付與步驟(D2),通過對(duì)X、Y、Z三個(gè)方向依次進(jìn)行重復(fù)或遞歸性處理,對(duì)所有上述長(zhǎng)方體單元(13)按順序進(jìn)行掃描。
通過在體素?cái)?shù)據(jù)的情況下,對(duì)X、Y、Z三個(gè)方向依次進(jìn)行重復(fù)處理,在V-CAD數(shù)據(jù)的情況下,進(jìn)行遞歸性處理,就可以依次不漏地對(duì)所有長(zhǎng)方體單元(13)進(jìn)行掃描。
上述標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3)優(yōu)選依次對(duì)每個(gè)掃描單元進(jìn)行,或者在對(duì)所有的單元進(jìn)行了標(biāo)號(hào)付與步驟(D2)后,再進(jìn)行標(biāo)號(hào)修正步驟(D3)。
通過對(duì)每個(gè)掃描單元依次進(jìn)行標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3),就能夠隨時(shí)將鄰接的所有單元的空間號(hào)碼k重新付與成最小的空間號(hào)碼,能夠使空間號(hào)碼k的最大值變小。
并且通過在對(duì)所有單元進(jìn)行了標(biāo)號(hào)付與步驟(D2)后,再進(jìn)行標(biāo)號(hào)修正步驟(D3),就能夠使標(biāo)號(hào)修正的次數(shù)減少。
本發(fā)明的其他目的及益處,根據(jù)參照附圖所作的以下說明就可以明確了。
圖1是本發(fā)明邊界數(shù)據(jù)的內(nèi)外判定方法的流程圖。
圖2是圖1空間區(qū)分步驟(D)的流程圖。
圖3是二維中的標(biāo)號(hào)付與步驟(D2)的示意圖。
圖4是三維中的標(biāo)號(hào)付與步驟(D2)的示意圖。
圖5A、B、C是表示包含邊界數(shù)據(jù)的單元的各部分的中間色調(diào)圖像。
圖6是在顯示器上顯示的輸入數(shù)據(jù)的中間色調(diào)圖像。
圖7是在顯示器上顯示了變換了輸入數(shù)據(jù)的單元和邊界數(shù)據(jù)的中間色調(diào)圖像。
圖8是在顯示器上顯示了用細(xì)線圈起的單元和邊界數(shù)據(jù)的中間色調(diào)圖像。
圖9是在顯示器上顯示了邊界數(shù)據(jù)的缺失部分的中間色調(diào)圖像。
圖10是在圖9的整體圖上加上切斷點(diǎn)后在顯示器上進(jìn)行顯示的中間色調(diào)圖像。
圖11是在顯示器上顯示了有橫孔的與圖10同樣的其他截面的中間色調(diào)圖像。
具體實(shí)施例方式
以下參照附圖來說明本發(fā)明的優(yōu)選實(shí)施方式。
本發(fā)明的發(fā)明人等首先是以發(fā)明“綜合了形狀與物體性質(zhì)的實(shí)體數(shù)據(jù)的存儲(chǔ)方法”來申請(qǐng)專利的(日本國(guó)專利申請(qǐng)2001-025023)。該方法涉及下述實(shí)體數(shù)據(jù)的存儲(chǔ)方法可以用小的存儲(chǔ)容量來存儲(chǔ)綜合了形狀與物體性質(zhì)的實(shí)體數(shù)據(jù),這樣,能夠?qū)ξ矬w的形狀、構(gòu)造、物體性質(zhì)信息、歷史進(jìn)行一元化管理,能夠用相同的數(shù)據(jù)對(duì)與從設(shè)計(jì)開始到加工、組裝、測(cè)試、評(píng)估等一連串工序相關(guān)的數(shù)據(jù)進(jìn)行管理,能將CAD和仿真操作一元化。將此方法的數(shù)據(jù)被稱為“V-CAD數(shù)據(jù)”,將使用了該數(shù)據(jù)的設(shè)計(jì)或仿真仿真稱為“體積CAD(Volume CAD)”或“V-CAD”。
本發(fā)明的邊界數(shù)據(jù)內(nèi)外判定法特別適用于V-CAD數(shù)據(jù),但不限定于此,普通的體素?cái)?shù)據(jù)也同樣適用。
首先對(duì)本發(fā)明中的術(shù)語進(jìn)行說明。
當(dāng)有作為輸入的邊界(表面)數(shù)據(jù)時(shí),把分割體素或八叉樹的八分儀等三維空間的長(zhǎng)方體的表面及其內(nèi)部的區(qū)域稱為“單元(cell)”,對(duì)單元來說將保持表面信息情況下的單元稱作“邊界單元(boundarycell)”,將不具有表面信息的單元稱作“非邊界單元(non-boundarycell)”(在日本國(guó)專利申請(qǐng)2001-025023中稱為“內(nèi)部單元”(innercell))。
使作為對(duì)象的三維空間具有有限的擴(kuò)展度(“體積世界(VolumeWorld)”,或簡(jiǎn)單地稱為“世界”)。世界由邊界單元和非邊界單元2種中的某一種無間隙且單元內(nèi)部的擴(kuò)展度不重復(fù)地覆蓋(胞腔復(fù)形(cell complex))。
換言之,邊界單元在構(gòu)成單元的單元內(nèi)部以及作為單元邊界的面、棱、頂點(diǎn)的某處具有與輸入邊界數(shù)據(jù)的交點(diǎn),除此以外的則都是非邊界單元。鄰接的單元之間不論其種類如何只共有單元邊界。將具有二維流形來作為邊界的充滿了三維內(nèi)部的物質(zhì)稱作“空間”。當(dāng)各空間互不相連時(shí),就認(rèn)為是不同空間。因此指定用由閉曲面所表現(xiàn)的邊界(表面)圍成的部分(點(diǎn)集合),作為在現(xiàn)實(shí)世界里限定同種材質(zhì)物質(zhì)的單位進(jìn)行應(yīng)用。相反,用來區(qū)別不同空間的邊界被稱為“邊界(boundary同數(shù)學(xué)中使用的邊界定義相同)”,或稱為“表面”。
圖1是本發(fā)明的邊界數(shù)據(jù)內(nèi)外判定方法的流程圖。如圖所示,本發(fā)明的方法由外部數(shù)據(jù)輸入步驟(A)、單元分割步驟(B)、單元區(qū)分步驟(C)、以及空間區(qū)分步驟(D)組成。
在外部數(shù)據(jù)輸入步驟(A)中,將由通過外部數(shù)據(jù)取得步驟S1取得的對(duì)象物1的邊部數(shù)據(jù)構(gòu)成的外部數(shù)據(jù)12輸入到存儲(chǔ)了本發(fā)明方法的計(jì)算機(jī)等中。在單元分割步驟(B)中,將邊部數(shù)據(jù)12分割為邊界平面正交的長(zhǎng)方體單元13中。長(zhǎng)方體單元13除了長(zhǎng)方體單元外,也可以是正方體單元。
在單元區(qū)分步驟(C)中,將分割后的各單元區(qū)分為含邊界數(shù)據(jù)的邊界單元13a和不含邊界數(shù)據(jù)的非邊界單元13b。在空間區(qū)分步驟(D)中,將非邊界單元13b區(qū)分為由邊界單元13a分隔的多個(gè)空間。
當(dāng)對(duì)V-CAD數(shù)據(jù)使用本發(fā)明的方法時(shí),在單元分割步驟(B)中通過八叉樹分割進(jìn)行再分割,直至得到能夠再構(gòu)筑構(gòu)成在外部數(shù)據(jù)中含有長(zhǎng)方體單元13的邊界面的邊界形狀要素為止。
并且,在應(yīng)用于普通體素?cái)?shù)據(jù)的情況下,在單元分割步驟(B)中,分割成同一大小的長(zhǎng)方體單元13。
圖2是圖1的空間區(qū)分步驟(D)的流程圖。如圖所示,空間區(qū)分步驟(D)由初始設(shè)定步驟(D1)、標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3)組成。
在初始設(shè)定步驟(D1)中,對(duì)空間號(hào)碼k進(jìn)行初始設(shè)定(k=1)。在標(biāo)號(hào)付與步驟(D2)中,依次掃描全部長(zhǎng)方體單元13并付與空間號(hào)碼k標(biāo)號(hào)。在標(biāo)號(hào)修正步驟(D3)中,重新付上付與的空間號(hào)碼k標(biāo)號(hào)。
當(dāng)標(biāo)號(hào)付與步驟(D2)應(yīng)用于普通的體素?cái)?shù)據(jù)時(shí),對(duì)X、Y、Z三個(gè)方向按順序進(jìn)行重復(fù)操作。此外,當(dāng)應(yīng)用于V-CAD數(shù)據(jù)時(shí),通過遞歸性處理對(duì)所有長(zhǎng)方體單元13進(jìn)行掃描。
在圖2中,標(biāo)號(hào)付與步驟(D2)由步驟(E1)、步驟(E2)和步驟(E3)組成。
在步驟(E1)中,當(dāng)前一個(gè)單元與掃描中的單元是非邊界單元13b時(shí),對(duì)掃描單元付與同前一單元相同的空間號(hào)碼k標(biāo)號(hào)。在步驟(E2)中,當(dāng)掃描單元是邊界單元13a時(shí),對(duì)掃描單元付與邊界單元的空間號(hào)碼標(biāo)號(hào)。在步驟(E3)中,當(dāng)前一單元是邊界單元13a且掃描單元是非邊界單元13b時(shí),將空間號(hào)碼k更新為k+1,并且對(duì)掃描單元付與更新后的空間號(hào)碼k標(biāo)號(hào)。
而且,在圖2中,標(biāo)號(hào)修正步驟(D3)由比較鄰接的單元的空間號(hào)碼的步驟(F1)、以及重新付上與其最小的空間號(hào)碼鄰接的所有單元空間號(hào)碼k的步驟(F2)組成。
另外,標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3)可以依次對(duì)每個(gè)掃描單元進(jìn)行,或者,也可以在對(duì)所有的單元進(jìn)行了標(biāo)號(hào)付與步驟(D2)后,再進(jìn)行標(biāo)號(hào)修正步驟(D3)。
圖3是二維中的標(biāo)號(hào)付與步驟(D2)的示意圖。圖4是三維中的標(biāo)號(hào)付與步驟(D2)的示意圖。參照?qǐng)D3和圖4,對(duì)本發(fā)明的方法進(jìn)行更詳細(xì)的說明。
作為輸入數(shù)據(jù),必須有對(duì)空間的邊界信息和世界進(jìn)行分割的最小分解能。邊界信息允許對(duì)變換或計(jì)算結(jié)果有部分信息缺失的情況。
從外部輸入的外部數(shù)據(jù)12是由表示多面體的多邊形數(shù)據(jù)、用于有限要素法的四面體或六面體要素、以及用于三維CAD或CG工具的曲面數(shù)據(jù)、或用部分平面或曲面構(gòu)成其他立體的表面的信息來表現(xiàn)的數(shù)據(jù)。
外部數(shù)據(jù)12是除這些數(shù)據(jù)之外,也可以是利用V-CAD自有的接口通過人為的輸入直接做成的數(shù)據(jù),或者(2)測(cè)定器、傳感器、數(shù)字轉(zhuǎn)換器等表面的數(shù)字轉(zhuǎn)換數(shù)據(jù),或CT掃描、MRI、及一般用于體數(shù)據(jù)繪制法的體素?cái)?shù)據(jù)等具有內(nèi)部信息的體積數(shù)據(jù)。
輸出數(shù)據(jù)是由每個(gè)空間中付與了不同標(biāo)號(hào)的2維流形的邊界和最小空間分解能以上的大小的單元構(gòu)成的V-CAD數(shù)據(jù)。此處的V-CAD數(shù)據(jù)具有用直接含有邊界的單元(邊界單元)和不含邊界的單元(非邊界單元)所填充的全空間。
在圖2中“標(biāo)號(hào)”作為用于區(qū)別空間的號(hào)碼(空間號(hào)碼)而被應(yīng)用。并且,在單元區(qū)分步驟(C)中預(yù)先判定單元的種類(邊界單元或內(nèi)部單元)。這就可以簡(jiǎn)單判定每個(gè)單元的內(nèi)部(包含單元邊界)與作為輸入的邊界信息是否存在交集。
(1)在初始設(shè)定步驟(D1)中設(shè)定k=1。
(2)定義世界,以使體積世界的基準(zhǔn)點(diǎn)必須是非邊界單元,指定空間k,而且,基準(zhǔn)點(diǎn)最好是在圖5A、B、C的頂點(diǎn)LDB(最左下方前側(cè))。
(3)以下,在體素版中,通過分別對(duì)X、Y、Z3個(gè)方向一圈圈(按順序重復(fù))處理來對(duì)全部單元進(jìn)行掃描。用八叉樹的時(shí)候,通過遞歸性處理(有層次地變深)也能依次掃描所有單元。
圖3中,掃描方向用箭頭表示,邊界單元13a用陰影表示,各單元的空間號(hào)碼k在單元內(nèi)部表示。此外,在圖4中,離開單元的間隔進(jìn)行表示,掃描完畢的單元以符號(hào)S,掃描中的單元(掃描單元)以符號(hào)P表示。
(4)在步驟(E1)中,如果有從已付有標(biāo)號(hào)的鄰接的單元中有非邊界單元13b,則設(shè)置為與其同樣的空間號(hào)碼k,直至該單元成為邊界單元為止。
在步驟(E2)中,在邊界單元中設(shè)置空間0(表示邊界的標(biāo)號(hào))。
在步驟(E3)中,當(dāng)非邊界單元再次到來時(shí),將k更新為k+1,設(shè)置新的空間k。在圖3中,表示了對(duì)各邊界單元13a設(shè)置空間號(hào)碼0,對(duì)各非邊界單元13b設(shè)置空間號(hào)碼k、k+1、k+2、k+3的狀態(tài)。
(5)當(dāng)對(duì)每個(gè)掃描單元依次進(jìn)行標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3)時(shí),在從已付與標(biāo)號(hào)的鄰接的單元中有具有與掃描中的非邊界單元不同的標(biāo)號(hào)的單元(使號(hào)碼為j)后,就逐級(jí)將現(xiàn)在的空間號(hào)碼重新付與為j。當(dāng)鄰接的單元為體素版時(shí),可知在圖5A、B、C中的L側(cè)有9個(gè),D側(cè)有3個(gè),以及B側(cè)有1個(gè)共計(jì)13個(gè)(26個(gè)鄰接的一半)。
在圖3的例子中將空間號(hào)碼k、k+1、k+2、k+3做最小化重新付與編號(hào)。
(6)以下重復(fù)(3)~(5)操作直至最后處理。(或?qū)F(xiàn)在的j和k作為一組追加到不正確的列表中)(7)當(dāng)在對(duì)所有的單元進(jìn)行了標(biāo)號(hào)付與步驟(D2)后進(jìn)行標(biāo)號(hào)修正步驟(D3)時(shí),先掃描全體,如有包含在列表中所列的空間號(hào)碼組合中的單元時(shí),就修正為號(hào)碼小的(空間號(hào)碼的壓縮)。
上述本發(fā)明的方法是在單元單位的處理中先只在內(nèi)部單元中將所有頂點(diǎn)、棱、面鄰接來搜索的范圍作為同一空間的方法,根據(jù)邊界單元只要沒有被完全包圍就成為同一空間。因此,有以下的特征。
(1)由于與區(qū)域成長(zhǎng)法的內(nèi)外判定相比,可做局部處理,所以此法適應(yīng)性更強(qiáng),由于與使用邊界信息(surface)的光線交叉法相比,可以在邊界信息不完備的情況下進(jìn)行內(nèi)外判定,所以此法適應(yīng)性更強(qiáng)。
(2)比運(yùn)用圖像處理的邊界追蹤的區(qū)域成長(zhǎng)法運(yùn)算速度快(當(dāng)單元數(shù)為n時(shí)處理時(shí)間是0(n)的量級(jí))。
(3)安裝簡(jiǎn)單。
(4)更加安全(不會(huì)弄混不同的空間而分類為一個(gè)空間)。
(5)因?yàn)槔镁植啃畔⒊砷L(zhǎng)至被邊界單元包圍為止,所以也可以應(yīng)用于多空間(多重空間)(邊界單元非流形式連接)。
下面說明本發(fā)明的實(shí)施例。圖6至圖11表示了雖然作為邊界表現(xiàn)來說是非常復(fù)雜的課題,而且也是在立體模型中不適合變換、數(shù)值誤差大的課題,但是通過本方法可以很好地適應(yīng)性強(qiáng)地處理內(nèi)外判定。
圖6是輸入數(shù)據(jù)的圖像,用立體模型表示汽車緩沖器的沖壓模具。
圖7表示對(duì)圖6的輸入數(shù)據(jù)進(jìn)行變換后的單元與邊界數(shù)據(jù)。
圖8是圖7的局部放大圖,同時(shí)表示了用細(xì)線圈起的單元和邊界數(shù)據(jù)。
圖9是圖7的某截面圖,橢圓部分是邊界數(shù)據(jù)的缺失部分。從該圖可知即便有與單元大小相近的較大數(shù)據(jù)缺失時(shí),也可識(shí)別出邊界單元。
圖10是在圖9的全體圖中追加了切斷點(diǎn)的圖,可知在本發(fā)明中,通過在單元區(qū)分步驟(C)預(yù)先設(shè)定含有輸入數(shù)據(jù)與單元的棱的切斷點(diǎn)的邊界單元,使其他單元(非邊界單元13b)優(yōu)先付與標(biāo)號(hào),就可以適應(yīng)性更強(qiáng)地對(duì)內(nèi)外判定進(jìn)行處理。
圖11是與圖10同樣的別的截面,表示了即便有橫孔且非連接也可適應(yīng)性強(qiáng)地進(jìn)行處理。
根據(jù)上述本發(fā)明的方法,由于在單元分割步驟(B)中將所有的外部數(shù)據(jù)12分割成邊界平面正交的長(zhǎng)方體單元13,且在單元區(qū)分步驟(C)中將分割后的各單元區(qū)分為邊界單元13a和非邊界單元13b,所以外部數(shù)據(jù)12即使在邊界信息不完備的情況下,也必能被區(qū)分為邊界單元13a或是非邊界單元13b。
另外,由于長(zhǎng)方體單元13比原邊界數(shù)據(jù)大,所以通過使只含有邊界數(shù)據(jù)的一部分(譬如1點(diǎn))的單元作為邊界單元13a,那么在邊界單元13a中就必含有邊界數(shù)據(jù)。進(jìn)而,即便有數(shù)據(jù)缺失等邊界數(shù)據(jù)不完備的情況,只要其缺失的大小比非邊界單元13b小,那么含有缺失的邊界數(shù)據(jù)也必含在邊界單元13a中。
因此,本發(fā)明的方法及其程序具有下述優(yōu)良的效果對(duì)于邊界信息不完備適應(yīng)性強(qiáng),即使邊界信息不完備也能進(jìn)行內(nèi)外判定,處理時(shí)間短而迅速,向計(jì)算機(jī)的安裝容易,很少會(huì)將不同的空間分類成一個(gè)空間,也可應(yīng)用于多重空間等。
另外,雖然通過幾個(gè)優(yōu)選的實(shí)施例對(duì)本發(fā)明進(jìn)行了說明,但可以理解的是包含在本發(fā)明中的權(quán)利范圍并不局限于這些實(shí)例。相反的,本發(fā)明的權(quán)利范圍包括包含在附加的權(quán)利要求中的所有改良、修正以及對(duì)等物。
權(quán)利要求
1.一種邊界數(shù)據(jù)的內(nèi)外判定方法,其特征在于,具有輸入由對(duì)象物的邊界數(shù)據(jù)構(gòu)成的外部數(shù)據(jù)(12)的外部數(shù)據(jù)輸入步驟(A);將上述外部數(shù)據(jù)分割成邊界平面正交的長(zhǎng)方體單元(13)的單元分割步驟(B);將分割后的各單元區(qū)分為包含邊界數(shù)據(jù)的邊界單元(13a)和不包含邊界數(shù)據(jù)的非邊界單元(13b)的單元區(qū)分步驟(C);以及將上述非邊界單元(13b)區(qū)分為被邊界單元(13a)分隔開的多個(gè)空間的空間區(qū)分步驟(D)。
2.如權(quán)利要求1所述的邊界數(shù)據(jù)的內(nèi)外判定方法,其特征在于,上述空間區(qū)分步驟(D)由對(duì)空間號(hào)碼k進(jìn)行初始設(shè)定的初始設(shè)定步驟(D1)、將上述長(zhǎng)方體單元(13)全部按順序掃描并付與空間號(hào)碼k標(biāo)號(hào)的標(biāo)號(hào)付與步驟(D2)、以及重新付上付與的空間號(hào)碼k標(biāo)號(hào)的標(biāo)號(hào)修正步驟(D3)組成,該標(biāo)號(hào)付與步驟(D2)由當(dāng)前一個(gè)單元與掃描中的單元是非邊界單元(13b)時(shí)對(duì)掃描單元付與和前一個(gè)單元同樣的空間號(hào)碼k標(biāo)號(hào)的步驟(E1)、當(dāng)掃描單元是邊界單元(13a)時(shí)對(duì)掃描單元付與邊界單元的空間號(hào)碼標(biāo)號(hào)的步驟(E2)、以及當(dāng)前一個(gè)單元是邊界單元(13a)且掃描單元是非邊界單元(13b)時(shí)將空間號(hào)碼k更新為k+1并且對(duì)掃描單元付與更新后的空間號(hào)碼k標(biāo)號(hào)的步驟(E3)組成,標(biāo)號(hào)修正步驟(D3)由對(duì)鄰接的單元的空間號(hào)碼進(jìn)行比較的步驟(F1)、以及重新付上與其最小的空間號(hào)碼鄰接的所有單元的空間號(hào)碼k的步驟(F2)組成。
3.如權(quán)利要求1所述的邊界數(shù)據(jù)的內(nèi)外判定方法,其特征在于,在上述單元分割步驟(B)中,利用八叉樹分割進(jìn)行再分割,直至得到可以再構(gòu)筑構(gòu)成在外部數(shù)據(jù)中含有長(zhǎng)方體單元(13)的邊界面的邊界形狀要素的充足的切斷點(diǎn)為止。
4.如權(quán)利要求1所述的邊界數(shù)據(jù)的內(nèi)外判定方法,其特征在于,在上述單元分割步驟(B)中,將體素?cái)?shù)據(jù)分割成同樣大小的長(zhǎng)方體單元(13)。
5.如權(quán)利要求2所述的邊界數(shù)據(jù)的內(nèi)外判定方法,其特征在于,上述標(biāo)號(hào)付與步驟(D2)對(duì)X、Y、Z三個(gè)方向依次進(jìn)行反復(fù)或遞歸性處理,對(duì)所有上述長(zhǎng)方體單元(13)按順序進(jìn)行掃描。
6.如權(quán)利要求2所述的邊界數(shù)據(jù)的內(nèi)外判定方法,其特征在于,上述標(biāo)號(hào)付與步驟(D2)和標(biāo)號(hào)修正步驟(D3)依次對(duì)每個(gè)掃描單元進(jìn)行,或者在對(duì)所有的單元進(jìn)行了標(biāo)號(hào)付與步驟(D2)后,再進(jìn)行標(biāo)號(hào)修正步驟(D3)。
7.一種邊界數(shù)據(jù)的內(nèi)外判定程序,其用于使用計(jì)算機(jī)來實(shí)施下述步驟輸入由對(duì)象物的邊界數(shù)據(jù)構(gòu)成的外部數(shù)據(jù)(12)的外部數(shù)據(jù)輸入步驟(A);將上述外部數(shù)據(jù)分割成邊界平面正交的長(zhǎng)方體單元(13)的單元分割步驟(B);將分割后的各單元區(qū)分為包含邊界數(shù)據(jù)的邊界單元(13a)和不包含邊界數(shù)據(jù)的非邊界單元(13b)的單元區(qū)分步驟(C);以及將上述非邊界單元(13b)區(qū)分為被邊界單元(13a)分隔的多個(gè)空間的空間區(qū)分步驟(D)。
全文摘要
本發(fā)明的邊界數(shù)據(jù)的內(nèi)外判定方法包括輸入由對(duì)象物(1)的邊界數(shù)據(jù)構(gòu)成的外部數(shù)據(jù)(12)的外部數(shù)據(jù)輸入步驟(A);將外部數(shù)據(jù)分割成邊界平面正交的長(zhǎng)方體單元(13)的單元分割步驟(B);將分割后的各單元區(qū)分為包含邊界數(shù)據(jù)的邊界單元(13a)和不包含邊界數(shù)據(jù)的非邊界單元(13b)的單元區(qū)分步驟(C);以及將非邊界單元(13b)區(qū)分為被邊界單元(13b)分隔的多個(gè)空間的空間區(qū)分步驟(D)。
文檔編號(hào)G06T7/60GK1643526SQ0380741
公開日2005年7月20日 申請(qǐng)日期2003年5月15日 優(yōu)先權(quán)日2002年5月17日
發(fā)明者加瀨究 申請(qǐng)人:獨(dú)立行政法人理化學(xué)研究所