背景技術(shù):
通過(guò)增材制造工藝生成的三維物體可以以逐層的方式來(lái)形成。在增材制造的一個(gè)示例中,通過(guò)使構(gòu)造材料層的部分固化,在打印裝置中生成物體。在示例中,構(gòu)造材料可以是粉末、流體或片材的形式。預(yù)期的固化和/或物理屬性可以通過(guò)將試劑打印到構(gòu)造材料層上來(lái)實(shí)現(xiàn)。可以將能量施加到該層,并且可以在冷卻時(shí)使在其上施加有試劑的構(gòu)造材料聚結(jié)并固化。在其他示例中,化學(xué)粘合劑可被用于使構(gòu)造材料固化。在其他示例中,可以通過(guò)使用擠出塑料或者噴涂材料作為固化以形成物體的構(gòu)造材料,來(lái)生成三維物體。
生成三維物體的一些打印工藝使用根據(jù)三維物體的模型而生成的控制數(shù)據(jù)。該控制數(shù)據(jù)例如可以對(duì)將試劑施加到構(gòu)造材料的位置、或可以放置構(gòu)造材料自身的位置及將要放置的數(shù)量進(jìn)行指定。
附圖說(shuō)明
為了更完整的理解,現(xiàn)將參考以下結(jié)合附圖而進(jìn)行的描述,其中:
圖1是生成三維半色調(diào)閾值矩陣的方法的示例的流程圖;
圖2是生成三維半色調(diào)閾值矩陣的方法的示例的流程圖;
圖3是用于生成用于產(chǎn)生三維物體的控制數(shù)據(jù)的處理裝置的示例的簡(jiǎn)化示意圖;
圖4是生成子結(jié)構(gòu)模型的示例的示意圖;以及
圖5是用于生成用于產(chǎn)生三維物體的控制數(shù)據(jù)的方法的示例。
具體實(shí)施方式
本文描述的一些示例提供用于生成可被用以產(chǎn)生三維物體的控制數(shù)據(jù)的裝置和方法。一些示例允許對(duì)具有各種指定的物體屬性的任意三維內(nèi)容進(jìn)行處理并將其用于生成三維物體。這些物體屬性可以包括:外觀屬性(顏色、透明度、光澤度等)、電導(dǎo)率、密度、孔隙度和/或諸如強(qiáng)度等機(jī)械屬性。
在本文的一些示例中,三維空間以“體素”即三維像素為特征,其中每個(gè)體素占據(jù)離散體積。在對(duì)三維物體進(jìn)行數(shù)據(jù)建模時(shí),給定位置處的體素可以具有至少一個(gè)特征。例如,它可以為空、或者可以具有特定的顏色、或可以表示特定的材料或特定的物體屬性等。體素可以具有任何形狀,并且可以具有相同或不同的形狀或尺寸??梢允褂闷渌c測(cè)定體積有關(guān)的描述。在其他示例中,三維空間可以被表征為至少一個(gè)點(diǎn),例如,采用諸如[x,y,z]三維笛卡爾([xyz])坐標(biāo)系等坐標(biāo)系統(tǒng)或者極坐標(biāo)系統(tǒng)。例如,物體表面可以以鑲嵌平坦表面(tessellatingflatsurface)(例如三角形)的形式來(lái)描述,通過(guò)對(duì)該三角形的角部(其可以被稱(chēng)為頂點(diǎn))進(jìn)行限定來(lái)實(shí)現(xiàn)。對(duì)角部進(jìn)行限定也有效指定了邊以及(在一個(gè)示例中)三角形的面。這允許物體的形狀近似,從而節(jié)約地使用計(jì)算機(jī)的內(nèi)存空間。數(shù)據(jù)例如可以是計(jì)算機(jī)輔助設(shè)計(jì)(cad)程序的輸出或三維物體的一些其他的數(shù)字表達(dá)。
在一些示例中,對(duì)表示三維物體的數(shù)據(jù)進(jìn)行處理,以生成將被用于生成物體的控制數(shù)據(jù)。
在一些示例中,打印材料覆蓋表示對(duì)打印材料數(shù)據(jù)進(jìn)行定義,例如,對(duì)打印材料(例如,將被沉積到構(gòu)造材料層上的試劑或者在一些示例中的構(gòu)造材料自身)的數(shù)量、以及若恰當(dāng)則對(duì)打印材料的組合進(jìn)行詳細(xì)設(shè)計(jì)。在一些示例中,這可以被規(guī)定為比例體積覆蓋率(proportionalvolumecoverage)(例如,構(gòu)造材料層的區(qū)域的x%應(yīng)該具有施加于其上的試劑y)。這種打印材料可以與諸如例如顏色、透明度、柔韌性、彈性、剛度、表面粗糙度、孔隙度、導(dǎo)電性、層間強(qiáng)度、密度等的物體屬性相關(guān)、或者被選擇以提供諸如例如顏色、透明度、柔韌性、彈性、剛度、表面粗糙度、孔隙度、導(dǎo)電性、層間強(qiáng)度、密度等的物體屬性。
可以使用半色調(diào)(halftoning)技術(shù)來(lái)確定如控制數(shù)據(jù)中所指定的每種打印材料(例如,試劑的一滴)應(yīng)被施加的實(shí)際位置。
例如,物體模型數(shù)據(jù)內(nèi)的一組體素可以具有相關(guān)聯(lián)的打印材料覆蓋表示,該打印材料覆蓋表示包括一組材料體積覆蓋率矢量。在一個(gè)簡(jiǎn)單的情況下,這樣的矢量可以表明三維空間的給定區(qū)域的x%應(yīng)具有施加于其上的特定試劑,而(100-x)%應(yīng)不用試劑。隨后,打印材料覆蓋表示可以提供用于“半色調(diào)”處理的輸入,以生成可由增材制造系統(tǒng)用來(lái)產(chǎn)生三維物體的控制數(shù)據(jù)。例如,可以確定,為了產(chǎn)生特定的物體屬性,構(gòu)造材料層(或?qū)拥囊徊糠?的25%應(yīng)具有施加于其上的試劑。半色調(diào)處理例如通過(guò)對(duì)每個(gè)位置與在半色調(diào)閾值矩陣中提供的閾值進(jìn)行比較,來(lái)確定試劑滴落在哪里,以便提供25%的覆蓋率。
在一些示例中,用于表示三維結(jié)構(gòu)或物體的數(shù)據(jù)被“柵格化”,即被轉(zhuǎn)換為一系列的離散位置。經(jīng)柵格化的數(shù)據(jù)可以處于三維打印裝置的可打印分辨率下,控制數(shù)據(jù)可以被提供至該3d打印裝置。
在一些示例中,生成控制數(shù)據(jù),使得根據(jù)該數(shù)據(jù)生成的物體具有子結(jié)構(gòu)。例如,該物體可旨在具有開(kāi)放的網(wǎng)格狀結(jié)構(gòu),這可以使其較輕和/或耐沖擊和/或減少材料的使用量。術(shù)語(yǔ)“子結(jié)構(gòu)”被用于與物體模型的形狀和形式區(qū)分開(kāi)。
圖1是用于生成三維半色調(diào)閾值矩陣的方法的示例。這樣的矩陣可被用于生成具有子結(jié)構(gòu)的物體。
在塊102中,接收用于表示三維材料結(jié)構(gòu)的晶格模型。該模型可以例如表示網(wǎng)格狀或晶格狀的結(jié)構(gòu)。模型可以表示諸如由空間填充多面體或棱柱體(因此可以形成規(guī)則結(jié)構(gòu))形成的網(wǎng)格或三維晶格等的連續(xù)的規(guī)則結(jié)構(gòu)、或不規(guī)則(例如,分支狀或靜脈狀)結(jié)構(gòu)。
在一些示例中,模型可以是顯式的、完全定義的三維模型,例如被定義為矢量對(duì)象。在其他示例中,模型可以在數(shù)學(xué)或算法基礎(chǔ)上定義,例如作為計(jì)算機(jī)可讀指令,當(dāng)其被執(zhí)行時(shí)可以構(gòu)造或生成該模型的表示。
在該示例中,模型具有一致的維度,例如由尺寸一致的多面體形成,或者如果為不規(guī)則結(jié)構(gòu),則包括一致的平均間距或基于一致的參數(shù)而生成,等等。
在塊104中,生成基于晶格模型(即保留一致的基本維度)的子結(jié)構(gòu)模型,使得用于形成子結(jié)構(gòu)的材料的材料分布旨在多樣化(即,子結(jié)構(gòu)模型指定可變的材料分布)。
例如,晶格可被用于提供子結(jié)構(gòu)模型的中間軸(“骨架”)。然而,通過(guò)改變用于形成晶格的結(jié)構(gòu)元素的厚度,可以改變子結(jié)構(gòu)模型中的材料分布。在特定的示例中,立方晶格可以在其體積內(nèi)包括相同尺寸的立方晶胞,但是確定子結(jié)構(gòu)模型包括:改變將用于在其體積的至少一部分內(nèi)構(gòu)造晶格的棒狀結(jié)構(gòu)元素的厚度。在另一示例中,可以基于晶格晶胞的維度來(lái)定義子結(jié)構(gòu),但是材料結(jié)構(gòu)可以包括開(kāi)放晶胞和/或閉合晶胞的組合。因此,閉合晶胞將導(dǎo)致額外的構(gòu)造材料被用于在其區(qū)域中形成材料結(jié)構(gòu)。在一些示例中,可以填充至少一個(gè)閉合晶胞。在一些示例中,填充的晶胞可以選擇性地以固化的或未經(jīng)處理的構(gòu)造材料(在一些示例中可以為粉末)來(lái)填充,這在該材料結(jié)構(gòu)的該區(qū)域中將再次導(dǎo)致額外的構(gòu)造材料。在其他示例中,晶胞可以用不同的材料來(lái)填充,該不同的材料例如可以作為物體生成工藝的一部分被引入到晶胞中(這可以是逐層生成的一部分,或者通過(guò)后處理的方式來(lái)實(shí)現(xiàn))。在一些示例中,在子結(jié)構(gòu)模型中,填充材料的晶胞可以針對(duì)晶胞或物體的區(qū)域來(lái)指定。
在塊106中,用半色調(diào)閾值數(shù)據(jù)來(lái)填充子結(jié)構(gòu)模型(即,在子結(jié)構(gòu)模型中的、存在結(jié)構(gòu)的每個(gè)位置),以提供三維半色調(diào)閾值矩陣。該半色調(diào)閾值矩陣可以被適用于生成用于使用增材制造打印裝置來(lái)制造三維物體的控制數(shù)據(jù),例如使得所生成的物體具有由子結(jié)構(gòu)模型指定的子結(jié)構(gòu)。
圖2示出生成三維半色調(diào)閾值矩陣的方法的第二示例。在塊202中,接收到用于指示將要生成的物體的信息。該信息例如可以包括尺寸、形狀、輪廓和分辨率信息中的任何一個(gè)。在塊204中,接收到晶格模型。在一些示例中,這可以如以上關(guān)于塊102所描述的那樣。在該示例中,晶格模型包括對(duì)晶格形式(例如,立方晶格、三角晶格、分支狀或靜脈狀晶格等)的指示。
在該示例中,在塊206中,根據(jù)用于指示將要生成的物體的信息來(lái)縮放晶格模型。這允許生成適當(dāng)尺寸的晶格模型。這還可以建立子結(jié)構(gòu)的基本維度。
在一些示例中,縮放晶格模型可以包括:平鋪(tiling)或復(fù)制晶格的基本“種子”元素。在其他示例中,縮放晶格模型可以包括:對(duì)晶格模型或其基本元素自身進(jìn)行縮放:例如,如果模型由立方晶胞組成,則可以根據(jù)該信息來(lái)設(shè)置立方體的大小??s放可以包括:與將要生成的物體的總體尺寸相匹配(例如,使得物體和材料結(jié)構(gòu)為大致相同尺寸或者可以由相同尺寸的體素陣列來(lái)描述)。在其他示例中,縮放可以包括:與物體的部分尺寸相匹配以具有子結(jié)構(gòu)(即,不同的晶格模型可以被用于所生成的物體的不同部分)??s放可以包括:考慮將要生成的物體的最小特征的大小,并且確保這樣的細(xì)節(jié)可以由適當(dāng)尺度的材料結(jié)構(gòu)來(lái)體現(xiàn)。縮放還可以包括:考慮針對(duì)將要生成的物體所指定的屬性,例如在特定體積中的材料的量,以確保物體具有指定的強(qiáng)度。在其他示例中,模型可以由用戶自由地或任意地縮放。
縮放可以自動(dòng)地或使用用戶輸入來(lái)進(jìn)行。在一些示例中,可以以多個(gè)分辨率/比例(例如,使用不同大小的立方體作為基本元素)來(lái)定義特定的晶格模型結(jié)構(gòu)(例如,規(guī)則的立方晶格),從而縮放三維材料結(jié)構(gòu)包括:選擇預(yù)定義的結(jié)構(gòu)中的一個(gè)。
在塊208中,對(duì)取決于物體的材料分布的至少一個(gè)屬性進(jìn)行識(shí)別。這可以被定義在用于指示將要生成的物體的信息中,或者可以根據(jù)用戶輸入來(lái)定義。這些屬性可以包括:重量、質(zhì)心、密度、強(qiáng)度、彈性行為等。
在塊210中,為了提供指定的屬性或多個(gè)屬性,對(duì)由子結(jié)構(gòu)模型指定的材料分布進(jìn)行確定。例如,可以對(duì)材料進(jìn)行分布,以將質(zhì)心放置在指定位置、或使得物體為預(yù)定重量或密度、或具有變化密度的區(qū)域、或提供一定的彈性或回彈性等。例如這可以包括:對(duì)模型的區(qū)域中的至少一個(gè)結(jié)構(gòu)元素的厚度進(jìn)行指定、子結(jié)構(gòu)模型的區(qū)域中的至少一部分或全部地封閉的晶胞的規(guī)范、至少一個(gè)晶胞是填充的晶胞的規(guī)范等中的任意一個(gè)或任意組合。
隨后生成基于(縮放的)晶格模型的子結(jié)構(gòu)模型的柵格化表示(塊212),例如作為與子結(jié)構(gòu)模型中的位置相對(duì)應(yīng)的數(shù)值的陣列。在一些示例中,該表達(dá)可以包括多個(gè)平面,每個(gè)平面被柵格化為離散位置。如以上所概括的,如果晶格模型包括相對(duì)較大比例的未占用空間或空白空間,則每個(gè)平面可以是部分地或者在一些示例中為稀疏地填充的數(shù)值陣列。在一些示例中,該陣列是二進(jìn)制的:結(jié)構(gòu)存在于或者不存在于某個(gè)位置。在一些示例中,陣列可以是多個(gè)二進(jìn)制位圖的形式,每個(gè)二進(jìn)制位圖表示材料結(jié)構(gòu)的平面。
在塊214中,接收到半色調(diào)閾值數(shù)據(jù)。在一個(gè)示例中,該數(shù)據(jù)可以作為半色調(diào)閾值矩陣接收。在一個(gè)示例中,閾值矩陣可以包括與三維子結(jié)構(gòu)模型自身相同的維度(即,為三維閾值矩陣)。在其他示例中,閾值數(shù)據(jù)可以以不同的形式(例如,可以使用更大的閾值矩陣中的部分)來(lái)供應(yīng)、或者可以根據(jù)存儲(chǔ)的計(jì)算機(jī)可讀指令來(lái)生成、等等。
在該示例中,半色調(diào)數(shù)據(jù)包括閾值陣列。在一個(gè)示例中,閾值用于執(zhí)行半色調(diào)操作,該半色調(diào)操作將閾值矩陣的值與用于指示打印材料(例如試劑(多個(gè)試劑)或試劑組合)的概率分布的值(例如表示為mvoc(材料體積覆蓋率)矢量)進(jìn)行比較。這將根據(jù)閾值來(lái)選擇單個(gè)的“狀態(tài)”(可能的材料或材料組合中的一個(gè))。
打印材料覆蓋率可以在物體內(nèi)部發(fā)生變化,并且在構(gòu)建半色調(diào)閾值數(shù)據(jù)的時(shí)候可以對(duì)該種變化加以考慮。例如,本來(lái)具有“連續(xù)色調(diào)”閾值的閾值矩陣(或多個(gè)矩陣)可以被格式化以具有局部變異性。在一些示例中,打印材料覆蓋率可以在平面之間發(fā)生變化。
在塊216中,用半色調(diào)閾值來(lái)填充材料結(jié)構(gòu)的存在子結(jié)構(gòu)模型的每個(gè)位置。在子結(jié)構(gòu)模型已經(jīng)被柵格化為一系列陣列的示例中,該系列因此而提供(如果視為堆棧)三維半色調(diào)閾值矩陣,該三維半色調(diào)閾值矩陣攜帶子結(jié)構(gòu)模型的結(jié)構(gòu):由于矩陣在表征結(jié)構(gòu)的位置之外的所有位置中為空,所以無(wú)論針對(duì)該位置指定的打印材料覆蓋率如何,應(yīng)用該矩陣都將導(dǎo)致在該空位置處不使用打印材料。該閾值矩陣可以被應(yīng)用于物體模型數(shù)據(jù),以生成用于產(chǎn)生三維物體的控制數(shù)據(jù)(塊218)。
半色調(diào)閾值可以根據(jù)諸如空隙和群集矩陣、誤差擴(kuò)散技術(shù)、基于抖動(dòng)的技術(shù)、am-屏幕、群集點(diǎn)型圖案等半色調(diào)技術(shù)來(lái)確定。在其他示例中,不是提供三維矩陣并使用它來(lái)填充子結(jié)構(gòu)模型,而是可以使用例如根據(jù)這些技術(shù)之一而確定的半色調(diào)數(shù)據(jù),來(lái)直接填充子結(jié)構(gòu)模型。
圖3示出可以被用于生成用于產(chǎn)生三維物體的控制數(shù)據(jù)的處理裝置300的示例。該示例中的裝置300包括:接口302、圖像處理器304、映射模塊306、半色調(diào)發(fā)生器308、以及子結(jié)構(gòu)模塊310。
在圖3的示例中,用于表示三維模型物體312的數(shù)據(jù)包括:物體模型數(shù)據(jù)316以及物體屬性數(shù)據(jù)318。物體模型數(shù)據(jù)316可以對(duì)模型物體312的至少一部分的三維模型進(jìn)行定義。在圖3中,物體312是簡(jiǎn)單的立方體,但是將會(huì)理解,物體可以具有其他更為復(fù)雜的形式。模型物體312可以對(duì)三維坐標(biāo)系統(tǒng)中的物體的全部或部分的形狀和范圍(例如,物體的實(shí)心部分)進(jìn)行定義。物體模型數(shù)據(jù)316例如可以通過(guò)計(jì)算機(jī)輔助設(shè)計(jì)(cad)應(yīng)用來(lái)生成。物體屬性數(shù)據(jù)318對(duì)將要生成的三維物體的至少一個(gè)物體屬性進(jìn)行定義。在一種情況下,物體屬性數(shù)據(jù)318可以包括:針對(duì)將要生成的物體的至少一部分的顏色、柔性、彈性、剛度、表面粗糙度、孔隙度、層間強(qiáng)度、密度、導(dǎo)電性等中的任何一個(gè)或任意組合。物體屬性數(shù)據(jù)318例如可以針對(duì)將要生成的物體的整體來(lái)定義(例如,全局屬性數(shù)據(jù))、或者針對(duì)將要生成的物體的一個(gè)或多個(gè)部分來(lái)定義(例如,局部屬性數(shù)據(jù))。物體屬性數(shù)據(jù)318還可以被用于針對(duì)物體的一部分或多個(gè)部分來(lái)定義多個(gè)物體屬性。
處理裝置300生成控制數(shù)據(jù)314,當(dāng)該控制數(shù)據(jù)314被用于生成三維物體時(shí),將基于輸入物體數(shù)據(jù)316、318外加子結(jié)構(gòu)模塊310中指定的結(jié)構(gòu)來(lái)生成物體。
更詳細(xì)而言,接口302接收用于表示三維模型物體312的數(shù)據(jù)316、318。在一些示例中,接口302可以將物體模型數(shù)據(jù)316和物體屬性數(shù)據(jù)318作為單個(gè)文件來(lái)接收;在其他示例中,接口302可以將物體模型數(shù)據(jù)316和/或物體屬性數(shù)據(jù)318的部分作為多個(gè)數(shù)據(jù)對(duì)象來(lái)接收,其中物體模型數(shù)據(jù)316和物體屬性數(shù)據(jù)318分布在多個(gè)相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)中。在一個(gè)示例中,物體模型數(shù)據(jù)316可以包括在三維(本文中也稱(chēng)為[x,y,z])空間中定義的體素。給定的體素可以具有用于指示模型物體312的一部分是否存在于該位置的相關(guān)數(shù)據(jù)。如上所述,物體屬性數(shù)據(jù)318可以包括全局的物體屬性數(shù)據(jù)和局部的物體屬性數(shù)據(jù),例如,如在物體屬性數(shù)據(jù)318中定義的某些物體屬性值可以與用于定義物體的每個(gè)體素相關(guān)聯(lián),和/或,某些物體屬性值可以與一組體素(例如,范圍從單個(gè)體素到與該物體相關(guān)聯(lián)的所有體素)相關(guān)聯(lián)。在一種情況下,用于表示三維物體的數(shù)據(jù)包括三維物體的模型,該三維物體的模型具有在模型內(nèi)的每個(gè)位置(例如,在每個(gè)[x,y,z]坐標(biāo))處指定的至少一個(gè)物體屬性。
在該示例中,圖像處理器304從接口302接收物體模型數(shù)據(jù)316和物體屬性數(shù)據(jù)318。圖像處理器304至少對(duì)物體模型數(shù)據(jù)316進(jìn)行處理,并且生成三維物體的柵格化表示。在示例中,圖像處理器304可以生成隨后被柵格化的三維物體的模型的平行平面的切片。每個(gè)切片可以涉及增材制造系統(tǒng)中的構(gòu)造材料的相應(yīng)層的一部分。在使用三坐標(biāo)的系統(tǒng)(例如使用[x,y,z]坐標(biāo))的三維空間中,這些平行平面可以是z切片、是平行于x軸和y軸(或xy平面)的平面。每個(gè)z切片可以包括具有公共z坐標(biāo)并在x和y維度上延伸的模型的部分。z切片的數(shù)量可以取決于z維度的細(xì)節(jié)的分辨率和/或構(gòu)造材料的層的輸出分辨率。
在該示例中,圖像處理器304輸出多個(gè)二維柵格對(duì)象320,每個(gè)二維柵格對(duì)象320表示在其中定義了模型物體312的三維空間的平面。這些二維柵格對(duì)象中的每一個(gè)二維柵格對(duì)象可以包括諸如位圖等的圖像。
在該示例中,圖像處理器304將至少一個(gè)物體屬性值與柵格對(duì)象中的每個(gè)位置相關(guān)聯(lián)。例如,每個(gè)柵格對(duì)象可以包括在x和y維度上延伸的一組像素;然后可以將每個(gè)像素與至少一個(gè)物體屬性值相關(guān)聯(lián)。在物體屬性中的一個(gè)定義了顏色的情況下,可以在色彩空間中定義顏色,諸如:?jiǎn)紊B續(xù)色調(diào)空間(例如,灰度級(jí));紅色、綠色、藍(lán)色(rgb)色彩空間;國(guó)際照明委員會(huì)(cie)1931xyz色彩空間,其中使用三個(gè)變量('x',′y'和'z'或三色的值)來(lái)對(duì)一顏色進(jìn)行建模;cie1976(l*,a*,b*-cielabor'lab')色彩空間,其中三個(gè)變量表示亮度('l')和相對(duì)的顏色尺寸('a'和'b');或任何其他色彩空間或被導(dǎo)出的色彩空間。這些色彩空間中的顏色值可以包括連續(xù)色調(diào)值,例如預(yù)定義的數(shù)值范圍內(nèi)的值。例如,在簡(jiǎn)單的情況下,rgb顏色值可以包括三個(gè)8比特的值,因此,每個(gè)紅色值、綠色值和藍(lán)色值可以在0至255的范圍內(nèi)。可以隱式地和/或顯式地定義物體屬性,并且物體屬性可以包括尤其以下中的任何一個(gè):靈活性值;彈性值;剛度值;表面粗糙度值;孔隙度值;強(qiáng)度值和密度值。
映射模塊306接收?qǐng)D像處理器304的輸出,并將由圖像處理器304生成的柵格化表示映射到三維物體的打印材料覆蓋表示。在該示例中,映射模塊306接收如上所述的柵格對(duì)象320。這些可以逐個(gè)地(例如以表示物體的上升高度的順序)接收,或作為集合(例如,模型物體的所有切片)接收。在一個(gè)示例中,映射模塊306將物體屬性映射到材料體積覆蓋率(mvoc)矢量。在一些示例中,映射模塊306可以從接口302直接地接收物體模型數(shù)據(jù)316和物體屬性數(shù)據(jù)318。
mvoc矢量可以具有多個(gè)值,其中每個(gè)值針對(duì)三維物體的層中的可尋址位置中的每種打印材料或打印材料的每種組合定義一個(gè)比例。例如,在具有兩種可用的打印材料(例如,試劑)m1和m2的增材制造系統(tǒng)中,其中每種打印材料可以獨(dú)立地沉積在三維物體的層的可尋址區(qū)域中,在給定的mvoc矢量中可以存在22(即,四個(gè))比例:沒(méi)有m2時(shí)針對(duì)m1的第一比例;沒(méi)有m1時(shí)針對(duì)m2的第二比例;針對(duì)m1和m2過(guò)度沉積(即,組合)時(shí)的第三比例(例如,m2沉積在m1上,或者反之亦然);以及針對(duì)不存在m1和m2時(shí)的第四比例。在這種情況下,mvoc矢量可以是:[m1,m2,m1m2,z]、或者具有示例值[0.2,0.2,0.5,0.1],即,在z切片中給定的[x,y]位置處,沒(méi)有m2時(shí)的20%的m1,沒(méi)有m1時(shí)的20%的m2,50%的m1和m2,以及10%的空。由于每個(gè)值都是一個(gè)比例,并且值集合表示可用的材料組合,所以每個(gè)矢量中的值的集合總和為1或100%。
例如,在試劑被著色的情況下,可以隨后確定mvoc矢量以生成選擇試劑組合,該選擇試劑組合用于生成與所供應(yīng)的物體屬性(例如,所供應(yīng)的rgb值)之間的匹配。例如可以將針對(duì)打印材料覆蓋表示的映射存儲(chǔ)在查找表中。
半色調(diào)模塊308和子結(jié)構(gòu)模塊310或直接且獨(dú)立地、或組合地對(duì)打印材料覆蓋表示(例如包括至少一個(gè)mvoc矢量)進(jìn)行操作,從而通過(guò)半色調(diào)模塊308對(duì)子結(jié)構(gòu)進(jìn)行填充,以提供半色調(diào)閾值矩陣。
子結(jié)構(gòu)模塊310的材料結(jié)構(gòu)可以基于任何晶格結(jié)構(gòu),諸如常規(guī)的三維晶格(例如,基于任何空間填充多面體(諸如立方體和八面體等)的、基于蜂窩的結(jié)構(gòu))、空間填充的多面體、或生物模擬的形式(例如靜脈或分支狀的設(shè)計(jì))等。這些晶格類(lèi)型中的每一種類(lèi)型可以被稱(chēng)為晶格模型。在一些示例中,晶格模型可以通過(guò)具有例如在矢量域中描述其整體幾何形狀的輸入三維模型來(lái)明確地定義、和/或使用cad程序來(lái)設(shè)計(jì)。在圖3的示例中,子結(jié)構(gòu)以提供晶格模型322的堆疊立方體網(wǎng)格為基礎(chǔ)。在其他示例中,晶格模型的結(jié)構(gòu)可以例如基于規(guī)則晶格、填充空間多面體或分形體來(lái)隱式地或解析地定義、或者另外根據(jù)機(jī)器可讀指令來(lái)生成。在一些示例中,子結(jié)構(gòu)模型可以由可平鋪(tile-able)元素形成,使得結(jié)構(gòu)(例如立方體結(jié)構(gòu)、或八面體結(jié)構(gòu)、或分支狀元素)在形成子結(jié)構(gòu)模型的過(guò)程中可以被重復(fù)。可以使用這樣的可平鋪元素作為種子來(lái)提供將要生成的物體的子結(jié)構(gòu)。在一些示例中,子結(jié)構(gòu)模塊310可以將諸如立方體或其他形狀等的基本元素或種子平鋪。
在一些示例中,子結(jié)構(gòu)模塊310可以改變基本單元或種子的尺寸。這可以確保物體的特征,例如更精細(xì)的特征可以被體現(xiàn)在所生成的物體中。子結(jié)構(gòu)模塊310可以有效地復(fù)制或平鋪用于表示多個(gè)立方體或立方體網(wǎng)格的數(shù)據(jù),直到晶格模型322占據(jù)與模型物體312相同的體積為止。在其他示例中,可以復(fù)制和平鋪其他的形狀或形式以形成晶格模型322,或者晶格結(jié)構(gòu)可以例如通過(guò)空間填充多面體作為一個(gè)整體例如填充預(yù)定體積來(lái)“生長(zhǎng)”,該預(yù)定體積可以與模型物體312的體積相同。
另外,在子結(jié)構(gòu)模型的至少一個(gè)區(qū)域中,雖然由晶格模型322所指定的子結(jié)構(gòu)的基本維度(在該示例中,晶格模型322中的立方體的邊的長(zhǎng)度)保持不變,但是子結(jié)構(gòu)模型中的材料分布旨在發(fā)生變化。這例如可以包括:對(duì)晶格的區(qū)域中的至少一個(gè)結(jié)構(gòu)元素的厚度進(jìn)行指定、子結(jié)構(gòu)模型的區(qū)域中的至少一部分或者完全地封閉的晶胞的規(guī)范、至少一個(gè)晶胞可以包括填充的晶胞的規(guī)范等中的任意一個(gè)或任意組合。
圖4示出了這一點(diǎn)的表示。晶格模型322由子結(jié)構(gòu)模塊310操作以生成子結(jié)構(gòu)模型402。子結(jié)構(gòu)模型402具有可變的材料分布。
在該示例中,在子結(jié)構(gòu)模型402的區(qū)域404中,與它的其他區(qū)域相比,結(jié)構(gòu)元素(在該示例中,為構(gòu)成晶格的條形)的厚度變厚。在其他示例中,元素的一部分可以被增厚或減小。此外,晶格的一個(gè)晶胞406是閉合的,使得其包括六個(gè)實(shí)心壁。也可以指定該晶胞406被填充,并且若如此,則可以指定特定的填充材料。這可以例如包括未經(jīng)處理的構(gòu)造材料、或?qū)⒁锰囟ǖ脑噭┗蛟噭┙M合進(jìn)行處理的構(gòu)造材料。未經(jīng)處理的構(gòu)造材料可以具有不同的密度來(lái)構(gòu)造材料、和/或?qū)χT如強(qiáng)度和彈性等局部物體屬性產(chǎn)生影響。在其他示例中,可以指定特定的構(gòu)造材料。還指定了固體晶胞壁408,固體晶胞壁408并未完全將晶胞封閉,但會(huì)導(dǎo)致在其區(qū)域中指定額外的材料。
材料分布進(jìn)行指定可以有助于實(shí)現(xiàn)物體的總體重量或平均密度、物體的質(zhì)心位置、和/或諸如強(qiáng)度、彈性、局部密度等的局部屬性。
由于子結(jié)構(gòu)模型下層的晶格具有一致的維度,因此可以以恒定的方式來(lái)指定,例如需要單個(gè)的標(biāo)識(shí)符或矢量描述??勺兊牟牧戏植伎梢辕B加于該晶格上,例如,作為元素寬度、或用于指示填充壁、閉合或填充的晶胞、晶胞填充材料等的特定位置。
此外,由于(至少在該示例中描述的物體的區(qū)域中)維度保持一致,因此確保具有不同材料分布的部分在物理上相容的任務(wù)(例如使得底層子結(jié)構(gòu)在本質(zhì)上連續(xù))是相對(duì)簡(jiǎn)單的,并且如果例如晶格尺寸被改變,則可能不需要確定漸變部分。
在一些示例中,子結(jié)構(gòu)模塊310可以生成子結(jié)構(gòu)模型402的柵格化表示。
半色調(diào)模塊308提供在一個(gè)示例中具有至少一個(gè)所存儲(chǔ)的半色調(diào)閾值矩陣的半色調(diào)閾值數(shù)據(jù)。
半色調(diào)模塊308和子結(jié)構(gòu)模塊310一起生成半色調(diào)閾值矩陣324,其中填充有指令以選擇性地使打印材料沉積在存在子結(jié)構(gòu)的位置上,并且該半色調(diào)閾值矩陣324例如可以以針對(duì)平面中的像素的一組離散打印材料選擇的形式,來(lái)應(yīng)用于從映射模塊306中輸出的打印材料覆蓋表示(例如mvoc矢量),以生成控制數(shù)據(jù)314,其中跨平面的區(qū)域的離散數(shù)值可以代表在打印材料覆蓋表示中所列出的比例。
在一些示例中,子結(jié)構(gòu)模型402在填充之前被柵格化。在圖4的示例中,物體的一些平面可以具有正方形格子狀的圖案和一些填充的正方形,而其他平面可以包含稀疏矩陣,該稀疏矩陣表示堆疊立方體的向上延伸的棒狀元素的橫截面。
雖然在上述示例中,通過(guò)平鋪結(jié)構(gòu)元素來(lái)形成子結(jié)構(gòu)模型402,但在其他示例中,子結(jié)構(gòu)模型的基本元素可以替代地以半色調(diào)數(shù)據(jù)來(lái)填充,然后組合以形成半色調(diào)子結(jié)構(gòu)模型。例如,可以將至少一個(gè)填充的晶胞預(yù)定義為一組半色調(diào)閾值,如可以預(yù)定義為元素厚度、填充壁、壁厚等的范圍??梢酝ㄟ^(guò)有效地堆疊這種預(yù)定義的半色調(diào)閾值的組,來(lái)形成具有根據(jù)子結(jié)構(gòu)模型402的子結(jié)構(gòu)的半色調(diào)矩陣。
在特定情況下,可以提供簡(jiǎn)單的模型,其中跨越一致晶格的單個(gè)變量是開(kāi)放的或填充的晶胞的規(guī)范。隨后,可以通過(guò)“堆疊”晶胞、以及在棒狀結(jié)構(gòu)元素的區(qū)域中被填充并否則為空的晶胞來(lái)構(gòu)建半色調(diào)矩陣,該“堆疊”晶胞被用半色調(diào)數(shù)據(jù)完全填充以表示填充的晶胞。
圖5中列出了生成用于產(chǎn)生三維物體的控制數(shù)據(jù)的方法的示例。在塊502中,獲取用于表示三維模型物體(其可以是物體的全部或部分)的數(shù)據(jù)。
在一些示例中,數(shù)據(jù)可以包括用于定義m×n×l的體素陣列的三維位圖,其中m、n和l是正整數(shù),并且其中每個(gè)體素位于唯一的三維位置。在一些示例中,m×n×l的體素陣列是立方體,該立方體將三維模型物體的至少一部分(在一些示例中為全部)封閉(enclose)。在塊504中,用于表示三維物體的數(shù)據(jù)被映射到打印材料覆蓋表示,該打印材料覆蓋表示例如指定在一位置處的打印材料為一組可用打印材料的比例。在一些示例中,在被如此映射之前,模型物體可以被柵格化為多個(gè)平面。使用的平面數(shù)量可以取決于以下幾個(gè)因素中的任意一個(gè),例如,提供屬性和/或表面處理等的構(gòu)造材料的類(lèi)型、聚結(jié)劑的類(lèi)型、所使用的聚結(jié)改性劑的類(lèi)型、每層的厚度等。
在塊506中,獲取用于表示材料結(jié)構(gòu)的子結(jié)構(gòu)模型。這樣的子結(jié)構(gòu)模型可以遵循預(yù)定的原則,以種子或基本元素(諸如立方體或其他空間填充多面體等)為基礎(chǔ),或通過(guò)種子或基本元素(諸如立方體或其他空間填充多面體等)來(lái)生長(zhǎng)。可以存在多個(gè)子結(jié)構(gòu)模型,并且獲取子結(jié)構(gòu)模型可以包括:選擇子結(jié)構(gòu)模型。子結(jié)構(gòu)可以是相對(duì)開(kāi)放的網(wǎng)格結(jié)構(gòu)。子結(jié)構(gòu)可能會(huì)隨其體積而變化。特別地,在該示例中,子結(jié)構(gòu)通過(guò)在體積(其可以是子結(jié)構(gòu)的全部或部分)上一致但具有改變的材料分布的晶格結(jié)構(gòu)來(lái)指定。
子結(jié)構(gòu)模型用半色調(diào)數(shù)據(jù)來(lái)填充以提供三維半色調(diào)閾值矩陣。在一些示例中,在被填充之前,子結(jié)構(gòu)模型可以被柵格化為平面。平面的數(shù)量可以與作為模型物體的切片的數(shù)量相同。
然后將打印材料覆蓋表示與用于表示相同三維位置的閾值矩陣的閾值進(jìn)行比較,以生成控制數(shù)據(jù),該控制數(shù)據(jù)用于基于模型物體來(lái)打印三維物體并具有根據(jù)子結(jié)構(gòu)模型的材料子結(jié)構(gòu)(塊508)。
在本文的一些示例中,以物體可被生成的順序提供模型物體。然而,所生成的物體旨在具有不作為模型物體數(shù)據(jù)但是作為半色調(diào)操作的一部分來(lái)提供的子結(jié)構(gòu)。這允許子結(jié)構(gòu)稍后在設(shè)計(jì)流程中而不是設(shè)計(jì)的模型物體生成階段被指定和/或被應(yīng)用,因此可以更容易地將新的或不同的子結(jié)構(gòu)應(yīng)用于將要生成的物體。由于子結(jié)構(gòu)內(nèi)的材料分布可以發(fā)生變化,所以對(duì)物體屬性的精細(xì)控制可以被應(yīng)用于子結(jié)構(gòu)。
本公開(kāi)中的示例可以被提供為方法、系統(tǒng)或機(jī)器可讀指令,諸如軟件、硬件、固件等的任何組合。這種機(jī)器可讀指令可被包括在其中或其上具有計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、cd-rom,光學(xué)存儲(chǔ)器等)上。
參考根據(jù)本公開(kāi)的示例的方法、設(shè)備和系統(tǒng)的流程圖和/或框圖來(lái)描述本公開(kāi)。雖然以上描述的流程圖顯示特定的執(zhí)行順序,但執(zhí)行順序可以與所描述的不同。關(guān)聯(lián)一個(gè)流程圖而描述的塊可以與另一流程圖的那些塊相組合。應(yīng)當(dāng)理解,流程圖和/或框圖中的每個(gè)流程和/或塊、以及流程圖和/或框圖中的流程和/或圖形的組合可以通過(guò)機(jī)器可讀指令來(lái)實(shí)現(xiàn)。
機(jī)器可讀指令可以例如由通用計(jì)算機(jī)、專(zhuān)用計(jì)算機(jī)、嵌入式處理器或其它可編程數(shù)據(jù)處理設(shè)備的處理器來(lái)執(zhí)行,以實(shí)現(xiàn)說(shuō)明和附圖中所描述的功能。具體地,諸如處理裝置300等處理器或處理裝置可以執(zhí)行機(jī)器可讀指令。因此,裝置和設(shè)備的功能模塊可以由執(zhí)行在存儲(chǔ)器中存儲(chǔ)的機(jī)器可讀指令的處理器、或者根據(jù)嵌入在邏輯電路中的指令進(jìn)行操作的處理器來(lái)實(shí)現(xiàn)。術(shù)語(yǔ)“處理器”應(yīng)被廣義地解釋為包括cpu、處理單元、asic、邏輯單元或可編程門(mén)陣列等。方法和功能模塊可以全部由單個(gè)處理器執(zhí)行、或者在多個(gè)處理器之間分配。
這種機(jī)器可讀指令還可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)器中,該計(jì)算機(jī)可讀存儲(chǔ)器可以引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定模式進(jìn)行操作。
這種機(jī)器可讀指令還可以被加載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備執(zhí)行一系列的操作以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,因此在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供了用于實(shí)現(xiàn)由流程圖中的流程和/或框圖中的塊所指定的功能的手段。
此外,本文的教導(dǎo)可以以計(jì)算機(jī)軟件產(chǎn)品的形式來(lái)實(shí)現(xiàn),計(jì)算機(jī)軟件產(chǎn)品被存儲(chǔ)在存儲(chǔ)介質(zhì)中并且包括多個(gè)指令,該多個(gè)指令用于使計(jì)算機(jī)設(shè)備實(shí)現(xiàn)本公開(kāi)的示例中所述的方法。
雖然已經(jīng)參考某些示例描述了方法、裝置和相關(guān)方面,但是在不脫離本公開(kāi)的精神的情況下,可以進(jìn)行各種修改、改變、省略和替換。應(yīng)當(dāng)注意,上述示例用于說(shuō)明而非限制本文所描述的內(nèi)容,并且本領(lǐng)域技術(shù)人員將能夠在不脫離所附權(quán)利要求的范圍的情況下設(shè)計(jì)許多備選實(shí)現(xiàn)。特別地,來(lái)自一個(gè)示例的特征或塊可以與另一示例的特征/塊組合或被其替代。
用語(yǔ)“包括”并不排除存在除了權(quán)利要求中所列出的元素之外的元素,“一”或“一個(gè)”不排除多個(gè),并且單個(gè)處理器或其他單元可以實(shí)現(xiàn)權(quán)利要求中所述的幾個(gè)單元的功能。
任何從屬權(quán)利要求的特征可以與任何獨(dú)立權(quán)利要求或其他從屬權(quán)利要求的特征相組合。