欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種面向3D打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法及系統(tǒng)與流程

文檔序號(hào):11499412閱讀:472來(lái)源:國(guó)知局
一種面向3D打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法及系統(tǒng)與流程

本發(fā)明屬于3d打印領(lǐng)域,尤其涉及一種面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法及系統(tǒng)。



背景技術(shù):

3d打印,又稱(chēng)增材制造(additivemanufacturing,am),是一種以數(shù)字模型文件為基礎(chǔ),采用材料逐層累加的方式制造實(shí)體的技術(shù)。3d打印在定制化幾何設(shè)計(jì)與處理上具有天然的優(yōu)勢(shì),在醫(yī)療、教育、娛樂(lè)、時(shí)尚等領(lǐng)域的應(yīng)用越來(lái)越廣泛,對(duì)模型進(jìn)行實(shí)例化制造也變得更加便捷,同時(shí)其優(yōu)化問(wèn)題也開(kāi)始引起研究人員的注意。

為了節(jié)省打印材料以及打印時(shí)間,通常都會(huì)改變模型的內(nèi)部填充結(jié)構(gòu),對(duì)模型進(jìn)行形變或者在對(duì)其進(jìn)行切割后分塊打印,以降低其對(duì)支撐結(jié)構(gòu)的需求。所以我們希望生成的多層旋轉(zhuǎn)體能夠在較為壓縮的空間上進(jìn)行打印,并且可以一體打印無(wú)需后期組裝。

簡(jiǎn)單多邊形是一類(lèi)常見(jiàn)的,由簡(jiǎn)單閉折線所圍成的多邊形。對(duì)于任意的一個(gè)對(duì)稱(chēng)的簡(jiǎn)單多邊形,可以很容易的通過(guò)偏移的方式對(duì)它進(jìn)行分層,產(chǎn)生一個(gè)三維多層旋轉(zhuǎn)體。這種方法雖然高效,但是同時(shí)也存在著一些局限性:(1)如果直接使用偏移的方法進(jìn)行分層,那么多邊形的形狀信息會(huì)隨著分層不斷的進(jìn)行偏移而被破壞;(2)為了保留形狀信息,考慮直接使用縮放的方式來(lái)進(jìn)行分層。在靜態(tài)的情況下,直接縮放可以滿足用戶的要求,而當(dāng)每個(gè)分層繞軸進(jìn)行旋轉(zhuǎn)運(yùn)動(dòng)時(shí)就可能發(fā)生層與層之間的碰撞,從而影響到整個(gè)結(jié)構(gòu)旋轉(zhuǎn)的自由度。

綜上所述,現(xiàn)有的面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法可以做到分層,但是沒(méi)有考慮到旋轉(zhuǎn)時(shí)的碰撞問(wèn)題。因此,亟需找到一種由任意的簡(jiǎn)單多邊形生成三維旋轉(zhuǎn)體的方法,此旋轉(zhuǎn)體的每一層在旋轉(zhuǎn)時(shí)不會(huì)與其它層發(fā)生碰撞,并且此三維旋轉(zhuǎn)體可以在壓縮空間上一體打印無(wú)需后期組裝。



技術(shù)實(shí)現(xiàn)要素:

為了解決現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法,本發(fā)明的方法提出根據(jù)給定任意簡(jiǎn)單多邊形生成多層旋轉(zhuǎn)體的方法,旋轉(zhuǎn)體各個(gè)層可以自由旋轉(zhuǎn)而不會(huì)發(fā)生碰撞。

本發(fā)明的一種面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法,包括:

步驟(1):初始化當(dāng)前分層為相鄰?fù)鈱?,以?dāng)前分層中掃掠面多邊形面積最小為優(yōu)化目標(biāo),查找當(dāng)前分層中的最優(yōu)對(duì)稱(chēng)軸;

步驟(2):根據(jù)旋轉(zhuǎn)角度來(lái)優(yōu)化當(dāng)前分層的位置和縮放比例,得到當(dāng)前分層的相連內(nèi)層;

步驟(3):將得到的當(dāng)前分層的相連內(nèi)層作為外層,迭代執(zhí)行步驟(1)-步驟(2),直到當(dāng)前分層的面積小于一個(gè)定值,得到給定多邊形的所有分層;

步驟(4):將給定多邊形的所有分層的數(shù)據(jù)生成三維模塊,進(jìn)而輸入至3d打印機(jī)而得到多層旋轉(zhuǎn)體。

進(jìn)一步的,所述步驟(1)中查找當(dāng)前分層中的最優(yōu)對(duì)稱(chēng)軸的具體過(guò)程為:

步驟(1-1):每個(gè)分層在繞對(duì)稱(chēng)軸旋轉(zhuǎn)時(shí),會(huì)產(chǎn)生一個(gè)掃掠面,其中,掃掠面多邊形是當(dāng)前分層與其關(guān)于對(duì)稱(chēng)軸的對(duì)稱(chēng)多邊形的并集;

步驟(1-2):選取當(dāng)前分層上兩個(gè)不同的點(diǎn)組成一個(gè)點(diǎn)對(duì),每個(gè)點(diǎn)對(duì)則確定一條軸,遍歷所有點(diǎn)對(duì)找到一條對(duì)稱(chēng)軸使得掃掠面多邊形面積最小。

這樣能夠通過(guò)計(jì)算其內(nèi)部輪廓與內(nèi)部輪廓所對(duì)應(yīng)的旋轉(zhuǎn)軸,使之能夠在上層空間內(nèi)自由旋轉(zhuǎn)而不發(fā)生碰撞。

進(jìn)一步的,在所述步驟(1-1)中,當(dāng)前分層在旋轉(zhuǎn)時(shí)是否會(huì)與相鄰?fù)鈱舆M(jìn)行碰撞取決于掃掠面多邊形與相鄰?fù)鈱邮欠裣嘟弧?/p>

進(jìn)一步的,在所述步驟(1-2)中,不同對(duì)稱(chēng)軸產(chǎn)生不同的掃掠多邊形。

進(jìn)一步的,所述步驟(2)中根據(jù)旋轉(zhuǎn)角度來(lái)優(yōu)化當(dāng)前分層的位置和縮放比例,得到當(dāng)前分層的相連內(nèi)層的具體過(guò)程為:

步驟(2-1):求掃掠面多邊形的最小有向包圍盒(orientedboundingbox,obb);

步驟(2-2):通過(guò)旋轉(zhuǎn),平移和縮放變換找到相鄰?fù)鈱觾?nèi)最大的矩形,此矩形的長(zhǎng)寬比與步驟(2-1)中所求最小有向包圍盒的長(zhǎng)寬比一致;

步驟(2-3):根據(jù)旋轉(zhuǎn)角度,位移和縮放系數(shù)計(jì)算變換矩陣;對(duì)當(dāng)前分層應(yīng)用變換矩陣。

這樣能夠使任一給定的多邊形能夠在上層空間內(nèi)自由旋轉(zhuǎn)而不發(fā)生碰撞,同時(shí)面積最大。

進(jìn)一步的,在所述步驟(4)中,將給定多邊形的所有分層的數(shù)據(jù)生成三維模塊的具體過(guò)程為:

步驟(4-1):根據(jù)每一層的輪廓線生成帶狀結(jié)構(gòu);

步驟(4-2):在帶狀結(jié)構(gòu)上挖空?qǐng)A柱生成t型結(jié)構(gòu),生成三維模型輸出stl格式的文件。

本發(fā)明還提供了一種面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成系統(tǒng)。

本發(fā)明的一種面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成系統(tǒng),包括:

最優(yōu)對(duì)稱(chēng)軸查找單元,其用于初始化當(dāng)前分層為相鄰?fù)鈱?,以?dāng)前分層中掃掠面多邊形面積最小為優(yōu)化目標(biāo),查找當(dāng)前分層中的最優(yōu)對(duì)稱(chēng)軸;

當(dāng)前分層的相連內(nèi)層獲取模塊,其用于根據(jù)旋轉(zhuǎn)角度來(lái)優(yōu)化當(dāng)前分層的位置和縮放比例,得到當(dāng)前分層的相連內(nèi)層;

給定多邊形的所有分層獲取模塊,其用于將得到的當(dāng)前分層的相連內(nèi)層作為外層,查找最優(yōu)對(duì)稱(chēng)軸并獲取當(dāng)前分成的相連內(nèi)層,直到當(dāng)前分層的面積小于一個(gè)定值,得到給定多邊形的所有分層;

多層旋轉(zhuǎn)體生成模塊,其用于將給定多邊形的所有分層的數(shù)據(jù)生成三維模塊,進(jìn)而輸入至3d打印機(jī)而得到多層旋轉(zhuǎn)體。

進(jìn)一步的,所述最優(yōu)對(duì)稱(chēng)軸查找單元包括:

掃掠面產(chǎn)生模塊,其用于當(dāng)每個(gè)分層在繞對(duì)稱(chēng)軸旋轉(zhuǎn)時(shí),會(huì)產(chǎn)生一個(gè)掃掠面,其中,掃掠面多邊形是當(dāng)前分層與其關(guān)于對(duì)稱(chēng)軸的對(duì)稱(chēng)多邊形的并集;

對(duì)稱(chēng)軸選取模塊,其用于選取當(dāng)前分層上兩個(gè)不同的點(diǎn)組成一個(gè)點(diǎn)對(duì),每個(gè)點(diǎn)對(duì)則確定一條軸,遍歷所有點(diǎn)對(duì)找到一條對(duì)稱(chēng)軸使得掃掠面多邊形面積最小。

進(jìn)一步的,所述當(dāng)前分層的相連內(nèi)層獲取模塊,其包括:

最小有向包圍盒求取模塊,其用于求掃掠面多邊形的最小有向包圍盒;

相鄰?fù)鈱觾?nèi)最大矩形查找模塊,其用于通過(guò)旋轉(zhuǎn),平移和縮放變換找到相鄰?fù)鈱觾?nèi)最大的矩形,此矩形的長(zhǎng)寬比與最小有向包圍盒的長(zhǎng)寬比一致;

變換矩陣計(jì)算模塊,其用于根據(jù)旋轉(zhuǎn)角度,位移和縮放系數(shù)計(jì)算變換矩陣;對(duì)當(dāng)前分層應(yīng)用變換矩陣。

進(jìn)一步的,所述多層旋轉(zhuǎn)體生成模塊包括:

帶狀結(jié)構(gòu)生成模塊,其用于根據(jù)每一層的輪廓線生成帶狀結(jié)構(gòu);

三維模型輸出模塊,其用于在帶狀結(jié)構(gòu)上挖空?qǐng)A柱生成t型結(jié)構(gòu),生成三維模型輸出stl格式的文件。

與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:

(1)本發(fā)明對(duì)于給定的簡(jiǎn)單多邊形,計(jì)算其內(nèi)部輪廓與內(nèi)部輪廓所對(duì)應(yīng)的旋轉(zhuǎn)軸,使之能夠在上層空間內(nèi)自由旋轉(zhuǎn)而不發(fā)生碰撞,同時(shí)面積最大,經(jīng)過(guò)迭代最終在多邊形內(nèi)生成多層輪廓結(jié)構(gòu)。

(2)本發(fā)明生成的模型,可以通過(guò)3d打印一次成型不需要后期組裝;

(3)本發(fā)明生成的模型,可以在壓縮的空間上進(jìn)行打印,提高了3d打印的效率,降低了3d打印的成本。

附圖說(shuō)明

構(gòu)成本申請(qǐng)的一部分的說(shuō)明書(shū)附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,本申請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。

圖1為本發(fā)明的面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法流程圖;

圖2(a)為對(duì)稱(chēng)軸z1對(duì)應(yīng)不同的掃掠面;

圖2(b)為對(duì)稱(chēng)軸z2對(duì)應(yīng)不同的掃掠面;

圖3為點(diǎn)對(duì)間的測(cè)地距離;

圖4(a)為在多邊形的邊界框內(nèi)生成的隨機(jī)點(diǎn)備用;

圖4(b)為選擇中心點(diǎn)的過(guò)程;

圖4(c)為優(yōu)化位置的結(jié)果;

圖5(a)為帶狀結(jié)構(gòu)的示意圖;

圖5(b)為t型結(jié)構(gòu)的示意圖;

圖6為生成與對(duì)稱(chēng)軸垂直的線段過(guò)程;

圖7(a)為旋轉(zhuǎn)結(jié)構(gòu)連接的兩層模型;

圖7(b)為旋轉(zhuǎn)結(jié)構(gòu)連接的兩層模型的局部放大模型;

圖8是本發(fā)明面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成系統(tǒng)的結(jié)構(gòu)示意圖;

圖9是最優(yōu)對(duì)稱(chēng)軸查找單元的結(jié)構(gòu)示意圖;

圖10是當(dāng)前分層的相連內(nèi)層獲取模塊的結(jié)構(gòu)示意圖;

圖11是多層旋轉(zhuǎn)體生成模塊的結(jié)構(gòu)示意圖。

具體實(shí)施方式

應(yīng)該指出,以下詳細(xì)說(shuō)明都是例示性的,旨在對(duì)本申請(qǐng)?zhí)峁┻M(jìn)一步的說(shuō)明。除非另有指明,本文使用的所有技術(shù)和科學(xué)術(shù)語(yǔ)具有與本申請(qǐng)所屬技術(shù)領(lǐng)域的普通技術(shù)人員通常理解的相同含義。

需要注意的是,這里所使用的術(shù)語(yǔ)僅是為了描述具體實(shí)施方式,而非意圖限制根據(jù)本申請(qǐng)的示例性實(shí)施方式。如在這里所使用的,除非上下文另外明確指出,否則單數(shù)形式也意圖包括復(fù)數(shù)形式,此外,還應(yīng)當(dāng)理解的是,當(dāng)在本說(shuō)明書(shū)中使用術(shù)語(yǔ)“包含”和/或“包括”時(shí),其指明存在特征、步驟、操作、器件、組件和/或它們的組合。

如圖1所示,本發(fā)明的面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成方法,包括:

步驟(1):初始化當(dāng)前分層為相鄰?fù)鈱?,以?dāng)前分層中掃掠面多邊形面積最小為優(yōu)化目標(biāo),查找當(dāng)前分層中的最優(yōu)對(duì)稱(chēng)軸。

其中,初始化當(dāng)前分層p1為相鄰?fù)鈱觩。每一層都是相似的簡(jiǎn)單多邊形;

具體地,所述步驟(1)中查找當(dāng)前分層中的最優(yōu)對(duì)稱(chēng)軸的具體過(guò)程為:

步驟(1-1):每個(gè)分層在繞對(duì)稱(chēng)軸旋轉(zhuǎn)時(shí),會(huì)產(chǎn)生一個(gè)掃掠面,相鄰分層在旋轉(zhuǎn)時(shí)是否會(huì)與分層p1進(jìn)行碰撞取決于掃掠面多邊形q與分層p1是否相交。掃掠面多邊形q是當(dāng)前分層p1關(guān)于旋轉(zhuǎn)軸z的對(duì)稱(chēng)多邊形p1′與p1的并集;

步驟(1-2):找到一條對(duì)稱(chēng)軸z使得掃掠面多邊形q的面積最小。p1周長(zhǎng)為lp,選取p1上兩個(gè)不同的點(diǎn)組成一個(gè)點(diǎn)對(duì),每個(gè)點(diǎn)對(duì)可以確定一條軸。如圖2中,不同軸的選擇會(huì)產(chǎn)生不同的掃掠多邊形q。遍歷所有的點(diǎn)對(duì),可以找到一個(gè)面積最小的q。與此q對(duì)應(yīng)的軸z即為所求。

其中,對(duì)于步驟(1-2),對(duì)點(diǎn)對(duì)進(jìn)行篩選從而減少不必要的計(jì)算。通過(guò)約束點(diǎn)對(duì)間測(cè)地距離的范圍來(lái)對(duì)旋轉(zhuǎn)軸進(jìn)行篩選,我們規(guī)定下界為上界為

如圖3所示,z3點(diǎn)對(duì)間的距離為g3,z4點(diǎn)對(duì)間的距離為g4,g3在范圍內(nèi)保留,g4不在范圍內(nèi)所以被剔除。

這樣能夠通過(guò)計(jì)算其內(nèi)部輪廓與內(nèi)部輪廓所對(duì)應(yīng)的旋轉(zhuǎn)軸,使之能夠在上層空間內(nèi)自由旋轉(zhuǎn)而不發(fā)生碰撞。

步驟(2):根據(jù)旋轉(zhuǎn)角度來(lái)優(yōu)化當(dāng)前分層的位置和縮放比例,得到當(dāng)前分層的相連內(nèi)層;

具體地,根據(jù)旋轉(zhuǎn)角度來(lái)優(yōu)化當(dāng)前分層的位置和縮放比例,得到當(dāng)前分層的相連內(nèi)層的具體包括以下步驟:

步驟(2-1):求掃掠面多邊形的最小有向包圍盒;在求得q和軸z之后,接下來(lái)就要在p中找到最大的q′,q′=k·o·q。k為縮放系數(shù),o為位置信息。我們把問(wèn)題“求多邊形p內(nèi)最大多邊形q”簡(jiǎn)化,首先求多邊形q的最小有向包圍盒r,然后求p中最大的r′=k·o·r。把問(wèn)題轉(zhuǎn)化為:求多邊形p內(nèi)最大r′。

求得q的最小有向包圍盒r,包圍盒長(zhǎng)寬比為ratio,半長(zhǎng)軸ry相對(duì)于水平面的夾角為α。接下來(lái)就要求多邊形p內(nèi)最大r′;

步驟(2-2):通過(guò)旋轉(zhuǎn),平移和縮放變換找到相鄰?fù)鈱觾?nèi)最大的矩形r′,此矩形的長(zhǎng)寬比與步驟(2-1)中所求包圍盒的長(zhǎng)寬比一致。為了簡(jiǎn)化計(jì)算,對(duì)輸入p進(jìn)行一些預(yù)處理。需要對(duì)p上的點(diǎn)做一個(gè)簡(jiǎn)化,減少點(diǎn)的個(gè)數(shù)進(jìn)而減少計(jì)算量。如圖4(a),在多邊形的邊界框內(nèi)生成100個(gè)隨機(jī)點(diǎn)備用。

首先選擇方向θ,設(shè)長(zhǎng)寬比為ratio的測(cè)試矩形r2的長(zhǎng)邊初始狀態(tài)為水平。旋轉(zhuǎn)角θ的范圍為[-90,90°]。每次計(jì)算偏轉(zhuǎn)1°。

如圖4(b),選擇中心點(diǎn)c。在預(yù)處理部分,我們?cè)趐的內(nèi)部隨機(jī)生成了100個(gè)點(diǎn)。依次選取每個(gè)點(diǎn)作為矩形r2的中心點(diǎn)。過(guò)當(dāng)前中心點(diǎn)引兩條相互垂直的線段lx,ly。其中矩形長(zhǎng)邊ly與水平線的夾角為當(dāng)前的旋轉(zhuǎn)角度θ。在lx,ly上各自均勻地取3個(gè)補(bǔ)償點(diǎn)作為中心點(diǎn)進(jìn)行檢測(cè),補(bǔ)償點(diǎn)可能會(huì)產(chǎn)生更好的效果。計(jì)算ly與p輪廓的交點(diǎn)a,b。然后取中心點(diǎn)到a,b兩個(gè)交點(diǎn)中距離較小的值dy。那么2dy就是當(dāng)前中心點(diǎn)和旋轉(zhuǎn)角度上最大可能的長(zhǎng)度。在ly上的補(bǔ)償點(diǎn)c1,c2,c3與中心點(diǎn)使用同樣的方式計(jì)算。同理,lx上的補(bǔ)償點(diǎn)使用寬度來(lái)計(jì)算和表示。

如圖4(c),給定z,c,找到最大長(zhǎng)度dmax,同時(shí)滿足矩形位于多邊形內(nèi)。記錄當(dāng)前求得的最大長(zhǎng)度的一半為dmax,當(dāng)前中心點(diǎn)或者其補(bǔ)償點(diǎn)作為矩形的中心。首先判斷當(dāng)前中心點(diǎn)及其補(bǔ)償點(diǎn)的dx是否小于當(dāng)前求得的最大長(zhǎng)度dmax,如果當(dāng)前點(diǎn)的dx大于dmax,判斷當(dāng)前寬度為長(zhǎng)度為2dy,中心點(diǎn)為c(或者c1,c2,c3)的矩形是否在p的內(nèi)部,如果是則更新dmax;否則縮小dy再次判斷,直到dy縮小到dmax,或者當(dāng)前矩形在p的內(nèi)部。經(jīng)過(guò)12次迭代,算法最終找到一個(gè)旋轉(zhuǎn)角度為θ,中心為c,寬度為2dmax的矩形。求得位置o;

步驟(2-3):在步驟(2-2)為了計(jì)算方便,統(tǒng)一從長(zhǎng)軸水平角度為0°開(kāi)始,而r是存在初始角度α的。真實(shí)的旋轉(zhuǎn)角度應(yīng)為旋轉(zhuǎn)角度θ-α。得到位置o,旋轉(zhuǎn)角度θ-α和縮放系數(shù)k之后計(jì)算出變換矩陣,對(duì)當(dāng)前分層p1應(yīng)用變換矩陣。

步驟(3):將得到的當(dāng)前分層的相連內(nèi)層作為外層,迭代執(zhí)行步驟(1)-步驟(2),直到當(dāng)前分層的面積小于一個(gè)定值,得到給定多邊形的所有分層。

步驟(4):將給定多邊形的所有分層的數(shù)據(jù)生成三維模塊,進(jìn)而輸入至3d打印機(jī)而得到多層旋轉(zhuǎn)體。

該步驟的具體包括以下步驟:

步驟(4-1):讀入并處理輸入數(shù)據(jù)。

如圖6,對(duì)于每一層輪廓對(duì)應(yīng)的求出外圈與li-1,li的交點(diǎn)以及內(nèi)圈與li-1,li的交點(diǎn)按上述生成垂直的線段的過(guò)程處理使得處的線段與旋轉(zhuǎn)軸垂直。

步驟(4-2):根據(jù)處理之后的數(shù)據(jù)生成三維模型。

首先生成如圖5(a)的帶狀模型。根據(jù)更新之后的每一層的輪廓對(duì)應(yīng)的內(nèi)外圈的點(diǎn)以及模型的高度可以確定一個(gè)第i層的帶狀模型。然后挖空?qǐng)A柱,如圖7(a),對(duì)于最外層,根據(jù)構(gòu)造一個(gè)帶狀型;對(duì)于最里層,根據(jù)構(gòu)造帶狀模型;對(duì)于倒數(shù)第二層,根據(jù)構(gòu)造一個(gè)帶狀模型并挖掉對(duì)應(yīng)的四個(gè)圓柱;對(duì)于其他層,根據(jù)構(gòu)造一個(gè)帶狀模型并挖掉對(duì)應(yīng)的兩個(gè)圓柱垂直。如圖7(a),生成如圖5(b)的t型結(jié)構(gòu)。對(duì)于除最內(nèi)層之外的其他層,根據(jù)構(gòu)造兩個(gè)t型結(jié)構(gòu)。對(duì)于最內(nèi)層根據(jù)構(gòu)造兩個(gè)t型結(jié)構(gòu)。

最后:返回生成的三維模型并打印得到三維多層旋轉(zhuǎn)體。

圖8是本發(fā)明的面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成系統(tǒng)的結(jié)構(gòu)示意圖。

如圖8所示,本發(fā)明的一種面向3d打印的簡(jiǎn)單多邊形多層旋轉(zhuǎn)體生成系統(tǒng),包括:

(1)最優(yōu)對(duì)稱(chēng)軸查找單元,其用于初始化當(dāng)前分層為相鄰?fù)鈱?,以?dāng)前分層中掃掠面多邊形面積最小為優(yōu)化目標(biāo),查找當(dāng)前分層中的最優(yōu)對(duì)稱(chēng)軸。

其中,如圖9所示,所述最優(yōu)對(duì)稱(chēng)軸查找單元包括:

掃掠面產(chǎn)生模塊,其用于當(dāng)每個(gè)分層在繞對(duì)稱(chēng)軸旋轉(zhuǎn)時(shí),會(huì)產(chǎn)生一個(gè)掃掠面,其中,掃掠面多邊形是當(dāng)前分層與其關(guān)于對(duì)稱(chēng)軸的對(duì)稱(chēng)多邊形的并集;

對(duì)稱(chēng)軸選取模塊,其用于選取當(dāng)前分層上兩個(gè)不同的點(diǎn)組成一個(gè)點(diǎn)對(duì),每個(gè)點(diǎn)對(duì)則確定一條軸,遍歷所有點(diǎn)對(duì)找到一條對(duì)稱(chēng)軸使得掃掠面多邊形面積最小。

(2)當(dāng)前分層的相連內(nèi)層獲取模塊,其用于根據(jù)旋轉(zhuǎn)角度來(lái)優(yōu)化當(dāng)前分層的位置和縮放比例,得到當(dāng)前分層的相連內(nèi)層。

其中,如圖10所示,所述當(dāng)前分層的相連內(nèi)層獲取模塊,包括:

最小有向包圍盒求取模塊,其用于求掃掠面多邊形的最小有向包圍盒;

相鄰?fù)鈱觾?nèi)最大矩形查找模塊,其用于通過(guò)旋轉(zhuǎn),平移和縮放變換找到相鄰?fù)鈱觾?nèi)最大的矩形,此矩形的長(zhǎng)寬比與最小有向包圍盒的長(zhǎng)寬比一致;

變換矩陣計(jì)算模塊,其用于根據(jù)旋轉(zhuǎn)角度,位移和縮放系數(shù)計(jì)算變換矩陣;對(duì)當(dāng)前分層應(yīng)用變換矩陣。

(3)給定多邊形的所有分層獲取模塊,其用于將得到的當(dāng)前分層的相連內(nèi)層作為外層,查找最優(yōu)對(duì)稱(chēng)軸并獲取當(dāng)前分層的相連內(nèi)層,直到當(dāng)前分層的面積小于一個(gè)定值,得到給定多邊形的所有分層。

(4)多層旋轉(zhuǎn)體生成模塊,其用于將給定多邊形的所有分層的數(shù)據(jù)生成三維模塊,進(jìn)而輸入至3d打印機(jī)而得到多層旋轉(zhuǎn)體。

其中,如圖11所示,所述多層旋轉(zhuǎn)體生成模塊包括:

帶狀結(jié)構(gòu)生成模塊,其用于根據(jù)每一層的輪廓線生成帶狀結(jié)構(gòu);

三維模型輸出模塊,其用于在帶狀結(jié)構(gòu)上挖空?qǐng)A柱生成t型結(jié)構(gòu),生成三維模型輸出stl格式的文件。

本發(fā)明對(duì)于給定的簡(jiǎn)單多邊形,計(jì)算其內(nèi)部輪廓與內(nèi)部輪廓所對(duì)應(yīng)的旋轉(zhuǎn)軸,使之能夠在上層空間內(nèi)自由旋轉(zhuǎn)而不發(fā)生碰撞,同時(shí)面積最大,經(jīng)過(guò)迭代最終在多邊形內(nèi)生成多層輪廓結(jié)構(gòu)。

本發(fā)明生成的模型,可以通過(guò)3d打印一次成型不需要后期組裝;

本發(fā)明生成的模型,可以在壓縮的空間上進(jìn)行打印,提高了3d打印的效率,降低了3d打印的成本。

上述雖然結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行了描述,但并非對(duì)本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動(dòng)即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以?xún)?nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
黄冈市| 芜湖县| 安岳县| 内丘县| 清水河县| 丘北县| 浪卡子县| 嘉禾县| 麻江县| 遵义县| 彰化县| 木兰县| 朝阳县| 麦盖提县| 合作市| 张家界市| 大埔县| 呼伦贝尔市| 友谊县| 蕉岭县| 潮州市| 阳曲县| 浑源县| 丽水市| 儋州市| 古浪县| 航空| 忻州市| 清徐县| 昌吉市| 呼和浩特市| 泰兴市| 定兴县| 宣威市| 三门峡市| 庆安县| 丰城市| 行唐县| 闽清县| 林州市| 宿迁市|