背景技術(shù):
通過增材制造方法生成的三維物體可以以逐層方式形成。在增材制造的一個示例中,通過在裝置中使構(gòu)造材料的層的部分固化來生成物體。在示例中,構(gòu)造材料可以是粉末、流體或片材的形式??梢酝ㄟ^將試劑打印到構(gòu)造材料的層上來獲得預(yù)期的固化和/或物理屬性??梢韵?qū)邮┘幽芰?,并且其上已?jīng)施加了試劑的構(gòu)造材料可以一經(jīng)冷卻就聚結(jié)并且固化。在其他示例中,可以使用化學(xué)粘結(jié)劑,該化學(xué)粘結(jié)劑可以不需要施加能量來固化。例如,可以通過使用擠出的塑料或噴涂材料作為構(gòu)造材料來生成三維物體,該構(gòu)造材料固化形成物體。
附圖說明
為了更全面的理解,現(xiàn)在下文將參考附圖來描述各個實施例,在附圖中:
圖1是利用本公開的示例裝置的框圖;
圖2是根據(jù)本公開的可以采用的方法的示例的流程圖;以及
圖3是根據(jù)本公開的三維物體的示例位置分量的圖示說明。
具體實施方式
本文描述的一些實施例提供一種用于設(shè)置可以用來生產(chǎn)三維物體的三維物體的屬性的裝置和方法。一些實施例允許處理并且使用具有各種指定的物體屬性的任意三維內(nèi)容來生成三維物體。這些物體屬性可以包括外觀屬性和/或機械屬性,如顏色、透明度、光澤度、強度、傳導(dǎo)性、密度、多孔性等。
在本文的一些實施例中,用子體積來表征三維空間。子體積可以是“體素”形式,即三維像素,其中每個體素占據(jù)離散的體積。然而,將理解的是,子體積可以是可以采取任何形狀(例如,立方體、長方體、四面體或任何其他形狀)的任何有體積的實體。在對三維物體進行數(shù)據(jù)建模時,給定位置處的子體積可以具有至少一個屬性。例如,它可以是空的,它可以具有特定的顏色,它可以表示特定材料,它可以表示特定結(jié)構(gòu)屬性,等等。
在一些實施例中,對表示三維物體的數(shù)據(jù)進行處理,以設(shè)置用于生成該物體的屬性。
在一些實施例中,材料體積覆蓋表示定義打印材料數(shù)據(jù),例如,細化打印材料(如沉積到構(gòu)造材料層上的一種或多種試劑,或者在一些實施例中,構(gòu)造材料本身)及其組合(如果適用的話)的量。在一些實施例中,這可以被指定為比例體積覆蓋(例如,構(gòu)造材料層的x%的區(qū)域應(yīng)該具有施加到其上的試劑y)。此類打印材料可以被涉及或者被選擇來提供物體屬性如,例如,顏色、透明度、柔性、彈性、硬度、表面粗糙度、多孔性、傳導(dǎo)性、夾層強度、密度等。
可以使用半色調(diào)技術(shù)來確定每個打印材料(例如,一滴試劑)應(yīng)該施加的實際位置。
例如,物體模型數(shù)據(jù)內(nèi)的子體積的集合可以具有相關(guān)聯(lián)的材料體積覆蓋(mvoc)矢量的集合。在簡單的實例中,這種矢量可以指示三維空間的x%的給定區(qū)域應(yīng)該具有施加到其上的特定試劑,其中(100-x)%應(yīng)該沒有施加到其上的試劑。然后材料體積覆蓋表示可以提供用于半色調(diào)過程的輸入,以生成可以供增材制造系統(tǒng)使用來生產(chǎn)三維物體的控制數(shù)據(jù)。例如,可以確定的是,為了產(chǎn)生指定的物體屬性,25%的構(gòu)造材料層(或?qū)拥囊徊糠?應(yīng)該具有施加到其上的試劑。例如,通過將每個位置與在半色調(diào)閾值矩陣中提供的閾值進行比較,半色調(diào)過程確定試劑滴應(yīng)該在何處沉積,以便提供25%的覆蓋。在另一個實例中,可以有兩種試劑,并且可以直接確定它們中的每種的體積覆蓋、它們的組合的體積覆蓋以及剩余沒有試劑的體積的體積覆蓋。
情況可能是這樣的,在構(gòu)建3d數(shù)據(jù)模型的時候,用來打印物體的打印裝置至少就其功能來說是未指定的。
參考圖1、2和3進一步描述本主題。應(yīng)該注意到,說明書和附圖僅說明本主題的原理。因此要理解的是,可以策劃體現(xiàn)本主題的原理的各種布置(盡管本文沒有明確描述或者示出)。此外,本文敘述本主題的原理和示例的所有陳述,及其具體實施例,都旨在涵蓋其等同物。
圖1是根據(jù)本主題的實施例的裝置100。裝置100包括:獲取模塊102,以獲取表示三維物體的數(shù)據(jù)103;識別模塊104,以識別數(shù)據(jù);處理器106,以處理數(shù)據(jù);以及機器可讀存儲器108,以存儲數(shù)據(jù)。機器可讀存儲器108可以存儲用于通過由處理器106執(zhí)行的應(yīng)用程序存取的數(shù)據(jù),并且可以包括含有用于供應(yīng)用程序使用的信息的數(shù)據(jù)結(jié)構(gòu)。機器可讀存儲器108可以是存儲可執(zhí)行指令的任何電子、磁性、光學(xué)或其他物理存儲裝置。因此,機器可讀存儲器108可以是,例如,隨機存取存儲器(ram)、電可擦除可編程只讀存儲器(eeprom)、存儲驅(qū)動、光盤等。機器可讀存儲器108可以用可執(zhí)行指令來編碼。
圖2是根據(jù)本公開可以采用的方法的示例的流程圖,現(xiàn)在還將參考圖1進行描述該方法。
在框200處,獲取模塊102獲取表示待打印的三維物體的數(shù)據(jù)。該數(shù)據(jù)可以包括以表示或構(gòu)成三維物體的子體積形式的、待打印的三維模型的幾何信息。子體積可以是陣列的形式,其中每個子體積位于三維物體內(nèi)唯一的三維位置。
在框202處,識別模塊104識別或獲取待打印的三維物體的特征。在一個實施例中,可以從在用戶界面(未示出)處接收的用戶輸入來識別待打印的三維物體的所識別的特征。用戶輸入可以指示或指定特征。所識別的特征可以包括關(guān)于一旦三維物體已被生產(chǎn)或打印它即具有的屬性的信息。例如,三維物體的所識別的特征可以包括關(guān)于彈性、重量、不透明度、延展性、柔性、顏色、傳導(dǎo)性、硬度、表面粗糙度、多孔性、強度和/或任何其他特征的信息或值。在一個實施例中,識別模塊104可以識別三維物體的重量的特定值,以及三維物體的彈性的特定值。識別模塊104可以識別三維物體的不同部分或部分體積的不同特征。例如,識別模塊104可以識別三維物體的內(nèi)部的一個特征或特征的集合,以及三維物體的外部或表面的另一個特征或另一個特征的集合,等。
在框202處,識別模塊104還識別三維物體內(nèi)的子體積的位置分量。該位置分量可以是子體積在三維物體內(nèi)定位的深度。該深度可以定義為子體積定位處距三維物體的表面的距離??商鎿Q地或另外,位置分量可以是子體積在三維物體內(nèi)取向的角度。例如,子體積取向的角度可以是子體積的表面法線和打印方向之間的角度。
圖3提供位置分量的示例圖示說明。在圖3中,位置分量是子體積處的物體表面法線和打印方向或打印切片法線(即,針對三維物體打印層的方向)之間的角度θ。
盡管上文提供了一些位置分量的實施例,但是將理解的是,位置分量可以是任何其他的位置分量或位置分量的任意組合。
在框204處,基于所識別的特征和位置分量,處理器106針對用于打印三維物體的子體積設(shè)置屬性數(shù)據(jù)。屬性數(shù)據(jù)可以包括材料屬性數(shù)據(jù)、結(jié)構(gòu)屬性數(shù)據(jù)和/或打印屬性數(shù)據(jù)。將理解的是,屬性數(shù)據(jù)還可以包括其他類型的數(shù)據(jù)。
材料屬性數(shù)據(jù)可以包括,例如,有關(guān)材料(如構(gòu)造材料和/或待沉積到構(gòu)造材料上的試劑)使用的信息。例如,材料屬性數(shù)據(jù)可以包括指示材料數(shù)量、材料重量、材料密度、材料分布、材料組合(例如,構(gòu)造材料和試劑的組合、構(gòu)造材料本身的組合等)、材料體積覆蓋(movc)信息或矢量(如之前描述的)、顏色信息的數(shù)據(jù)和/或任何其他材料屬性數(shù)據(jù)。結(jié)構(gòu)屬性數(shù)據(jù)可以包括,例如,有關(guān)材料分布的信息。例如,結(jié)構(gòu)屬性數(shù)據(jù)可以包括指示結(jié)構(gòu)尺寸、結(jié)構(gòu)形狀、半色調(diào)信息(如算法的選擇、資源的選擇等)的數(shù)據(jù)和/或任何其他結(jié)構(gòu)屬性數(shù)據(jù)。打印屬性數(shù)據(jù)可以包括,例如,有關(guān)用于打印系統(tǒng)的設(shè)置的信息。例如,打印屬性數(shù)據(jù)可以包括指示打印方法、打印技術(shù)、打印速度、定影溫度、設(shè)置不同的材料屬性數(shù)據(jù)和/或結(jié)構(gòu)屬性數(shù)據(jù)的指令(例如,取決于所支持的材料和/或結(jié)構(gòu)的可用性)的數(shù)據(jù)和/或任何其他打印屬性數(shù)據(jù)。
根據(jù)本公開,由識別模塊104識別的特征和位置分量是屬性數(shù)據(jù)的函數(shù)。例如,處理器106可以將由識別模塊104識別的特征和位置分量映射到屬性數(shù)據(jù)。實施例是特征可以是特征矢量
根據(jù)本公開,屬性數(shù)據(jù)可以取決于子體積的位置分量來改變,以便提供所識別的特征。例如,子體積的集合可以具有相同的規(guī)格,并且因此處理器106可以基于那些子體積的位置分量,通過適當(dāng)?shù)馗淖冊谠撟芋w積中的屬性數(shù)據(jù)(例如,材料體積覆蓋movc)來提供所識別的特征。處理器106可以改變與用于打印三維物體的三維打印機的書寫系統(tǒng)相關(guān),或者與正在打印的三維物體相關(guān)的屬性數(shù)據(jù)。將理解的是,其他實施例也是可能的。
在一個實施例中,識別模塊104可以將位置分量識別為子體積的取向角度θ。所識別的取向角度θ可以是,例如,子體積處的物體表面法線相對于打印平面法線(即,之后的層沿其打印的軸線)之間的角度。這被圖示說明在圖3中。在同一實施例中,識別模塊104可以將特征識別為rgb數(shù)據(jù)形式的顏色信息。在該實施例中,在處理方面,所識別的位置分量和特征可以表示成[θ,rgb]。
處理器106可以將屬性函數(shù)(例如,材料體積覆蓋mvoc數(shù)據(jù))設(shè)置為rgb顏色數(shù)據(jù)和取向角度θ兩者的函數(shù)。處理器106可以首先識別取向角度θ的數(shù)目n,需要針對其確定自定義特征到屬性數(shù)據(jù)(在該實施例中,自定義rgb顏色到材料體積覆蓋mvoc數(shù)據(jù))的映射。
處理器106可以從大于預(yù)期數(shù)目的角度(針對該角度打印材料體積覆蓋movc并且測量它們的顏色)開始。然后處理器106可以分析角度-顏色關(guān)系,以獲取需要直接表征的最小數(shù)目的角度,以使能夠從那些角度準(zhǔn)確預(yù)測中間角度的角度-顏色關(guān)系,并且可以在它們之間進行適合的插值。換言之,處理器106可以從處理器106已直接表征角度-顏色關(guān)系的那些角度插值中間角度。
插值可以是線性插值,或者某種形式的非線性插值。例如,處理器106可以使用分段線性插值(即,最近的較小的和較大的角度之間的線性插值),或者可以使用任何其他插值技術(shù)(如三次樣條)。處理器106可以確定使用哪種插值技術(shù)作為識別上文提到的最小數(shù)目的角度的部分。處理器106可以基于預(yù)確定水平的精確度來進行該確定,因為對角度和插值技術(shù)的選擇將會提供給定水平的精確度。
插值可以得到建立端點和函數(shù)關(guān)系的情況。例如,端點和模擬取向角度θ和顏色(rgb)數(shù)據(jù)的γ函數(shù)。在一個實施例中,情況可能是,可以使用極端角度(例如,0和180度的角度)。在該實施例中,處理器106可以應(yīng)用用于在角度之間插值的非線性函數(shù)。γ函數(shù)可以被計算來最小化相對于顏色測量的誤差。
對于每個所識別的取向角度θ,處理器106可以確定單獨的特征到屬性數(shù)據(jù)的映射(在該實施例中,單獨的rgb顏色到材料體積覆蓋mvoc數(shù)據(jù)映射)。處理器106可以經(jīng)由查找表(lut)確定映射,將會在后文中對該查找表(lut)進行更詳細地描述。處理器106可以將n個三維(rgb)索引lut組合到單個四維(θ-rgb)索引lut中。
識別模塊104可以識別多于一個位置分量。例如,除了子體積的取向角度θ之外,識別模塊104可以識別三維物體內(nèi)的子體積的深度。在識別模塊104將特征識別為rgb數(shù)據(jù)形式的顏色信息的實施例中,在處理方面,所識別的位置分量和特征可以表示成[θ,深度,rgb]。
處理器106可以處理任意組合的任何數(shù)目的所識別的位置分量和特征。在一個實施例中,處理器106可以處理具有兩個位置分量與六個特征組合(諸如[深度;θ;rgb;不透明度;延展性;柔性])的所識別的數(shù)據(jù)。然而,盡管本文已經(jīng)提供了實施例,將理解的是,任何其他的位置分量和特征可以被識別,并且可以以各種不同的組合被識別。
根據(jù)本公開,處理器106可以以這樣的方式設(shè)置屬性數(shù)據(jù),使得不論子體積在三維物體內(nèi)的定位如何,子體積將具有一致的特征。
在一些實施例中,處理器106可以使目標(biāo)特征集合關(guān)聯(lián)于待打印的每個子體積(即,關(guān)聯(lián)于每個打印子體積)。處理器106采用來以該方式設(shè)置特征的方法可以取決于特征是如何被指定的,例如,在用戶界面處由用戶指定。例如,處理器106可以先由輸入子體積計算出目標(biāo)子體積,將那些目標(biāo)子體積的目標(biāo)屬性集合分配給它們,并且隨后進一步再把目標(biāo)子體積細分為打印子體積。然后處理器106可以識別那些打印子體積的位置分量。
處理器106可以針對每個打印子體積,基于該子體積的目標(biāo)特征集合和位置分量來設(shè)置屬性數(shù)據(jù)(包括材料屬性數(shù)據(jù)、結(jié)構(gòu)屬性數(shù)據(jù)和打印屬性數(shù)據(jù))。在其他實施例中,處理器106可以針對預(yù)確定數(shù)目的打印子體積(例如,打印子體積的預(yù)確定的集合),基于那些子體積的目標(biāo)特征集合和位置分量來設(shè)置屬性數(shù)據(jù)。在該實施例中,處理器106可以用隨機屬性數(shù)據(jù)、默認(rèn)屬性數(shù)據(jù)分配其他子體積(例如,預(yù)確定的集合之外的那些子體積),或者可以使它們保留為空,等。
盡管一些屬性數(shù)據(jù)在子體積水平上是可由處理器106控制的(并且因此可以設(shè)置的),但是可以存在處理器106需要針對子體積層建立的一些屬性數(shù)據(jù)(例如,打印速度),以及處理器106需要全局控制的一些屬性數(shù)據(jù)(例如,其上沉積試劑的粉末的選擇,或者打印床維持的溫度)。
在一些實施例中,取決于子體積的所識別的特征和位置分量,處理器106可以針對個體子體積設(shè)置針對鄰近子體積不同的屬性數(shù)據(jù)。例如,表示三維物體的子體積可以包括表示或定義三維物體的表面的表面子體積,以及表示或定義三維物體的內(nèi)部體積的內(nèi)部子體積。在該實施例中,處理器106可以對針對表面子體積和針對內(nèi)部子體積區(qū)別地設(shè)置屬性數(shù)據(jù)或設(shè)置不同的屬性數(shù)據(jù)。例如,在三維物體的內(nèi)部和外部部分的特征和/或子體積位置分量(如之前討論的)是不同的情況中。
在一些實施例中,處理器106可以針對三維物體的部分體積中的子體積設(shè)置屬性數(shù)據(jù)。例如,如之前討論的,識別模塊104可以識別三維物體的部分體積的特征(例如,部分體積可能在用戶界面處已被指示),并且隨后可以識別部分體積內(nèi)的子體積的位置分量。然后處理器106可以針對該部分體積中的子體積設(shè)置屬性數(shù)據(jù)。在一些實施例中,處理器106可以針對一個部分體積中的子體積與另一個部分體積中的子體積區(qū)別地設(shè)置屬性數(shù)據(jù)或者設(shè)置不同的屬性數(shù)據(jù)(取決于那些部分體積的所識別的特征和/或子體積位置分量)。
處理器106可以將屬性數(shù)據(jù)編碼為元組。例如,描述結(jié)構(gòu)屬性數(shù)據(jù)
機器可讀存儲器108可以針對子體積將屬性數(shù)據(jù)(如材料屬性數(shù)據(jù)、結(jié)構(gòu)屬性數(shù)據(jù)和/或打印屬性數(shù)據(jù))存儲為三維物體特征和子體積位置分量的函數(shù)。機器可讀存儲器108可以被預(yù)配置有該信息??商鎿Q地或者另外,機器可讀存儲器108可以基于通過在一段時間內(nèi)使用裝置100所獲取的信息來被動地獲悉該信息。
處理器106可以針對最接近或準(zhǔn)確地提供與具有所識別的位置分量的那些子體積相關(guān)聯(lián)的目標(biāo)特征集合的子體積從機器可讀存儲器108中讀取屬性數(shù)據(jù)。然后處理器108將用針對那些子體積讀取的屬性數(shù)據(jù)設(shè)置它們。以該方式,可以隨后用具有該屬性數(shù)據(jù)和所識別的位置分量的子體積生產(chǎn)或打印的三維物體將具有所識別的特征。
作為數(shù)據(jù)存儲器的實施例,機器可讀存儲器108可以將屬性數(shù)據(jù)(如材料屬性數(shù)據(jù)、結(jié)構(gòu)屬性數(shù)據(jù)和/或打印屬性數(shù)據(jù))存儲為查找表(lut)形式的三維物體特征和子體積位置分量的函數(shù)。lut可以將三維物體特征和子體積位置分量映射到屬性數(shù)據(jù)。例如,lut可以將三維物體特征和子體積位置分量映射到材料屬性數(shù)據(jù)、結(jié)構(gòu)屬性數(shù)據(jù)和打印屬性數(shù)據(jù)的各種組合。
在之前提到的矢量形式中,lut可以將特征矢量
處理器106還可以具有用于找尋用于不存在于機器可讀存儲器108中的特征矢量和子體積位置分量的映射的機制。例如,處理器106可以針對材料的體積分布進行四面體插值,以確定用于不存在于機器可讀存儲器108中的特征矢量和子體積位置分量的映射。
一旦處理器106已經(jīng)以上述方式中的任一種設(shè)置了子體積水平的屬性,則處理器106具有將生產(chǎn)具有所識別的特征和子體積位置分量的三維物體的數(shù)據(jù)。例如,給定要打印的三維物體,處理器106可以,針對物體的每個子體積,使用子體積的所識別的位置分量和特征來獲取和設(shè)置可以用于打印的物體屬性數(shù)據(jù)。
在一個實施例中,給定要打印的三維物體,處理器106可以計算物體的表面法線。針對物體的每個子體積,處理器106可以使用表面法線的角度與針對該角度指定的打印切片法線和rgb顏色數(shù)據(jù)來從lut計算材料體積覆蓋mvoc。對于子體積的給定的rgb和θ角度(針對其指定顏色),lut可以允許mvoc的插值(鑒于子體積相對于打印切片法線的位置,該插值得到該顏色)。然后處理器106可以進行半色調(diào)并且打印所得到的材料體積覆蓋mvoc。
處理器106可以指示裝置100使用針對子體積設(shè)置的屬性數(shù)據(jù)集合來生產(chǎn)或打印三維物體。處理器106可以指示裝置100在設(shè)置屬性數(shù)據(jù)之后自動生產(chǎn)或打印,或者可以接收指示應(yīng)該開始生產(chǎn)或打印的用戶輸入。根據(jù)本公開,處理器106可以在過程的任何階段時,接收指示開始生產(chǎn)或打印的用戶輸入。例如,根據(jù)本公開,一旦處理器106已經(jīng)針對表示待打印的三維物體的子體積設(shè)置了屬性數(shù)據(jù),或者在過程期間的任何其他階段時,處理器106可以接收指示開始生產(chǎn)或打印的用戶輸入。處理器106可以向用于物體生產(chǎn)或打印的另一個裝置、設(shè)備或系統(tǒng)(未示出)提供數(shù)據(jù)。
本公開的實施例可以被提供為方法、系統(tǒng)或機器可讀指令,如軟件、硬件、固件等的任意組合。此類機器可讀指令可以被包括在其中或其上具有機器可讀程序編碼的機器可讀存儲介質(zhì)上(包括但不限于磁盤存儲器、cd-rom、光存儲器等)。
參考根據(jù)本公開的實施例的方法、裝置和系統(tǒng)的流程圖和/或框圖來描述本公開。盡管上文描述的流程圖示出具體的執(zhí)行順序,但是執(zhí)行順序可以不同于所描繪的那種。關(guān)于一個流程圖描述的框可以與另一個流程圖的那些框組合。應(yīng)當(dāng)理解,流程圖和/或框圖中的每個流程和/或框,以及流程圖和/或框圖中的流程和/或框的組合,可以由機器可讀指令實現(xiàn)。
機器可讀指令可以,例如,由通用計算機、專用計算機、嵌入式處理器或其他可編程的數(shù)據(jù)處理設(shè)備的處理器執(zhí)行,以實現(xiàn)說明書和附圖中描述的功能。例如,處理裝置或處理器(如處理器106)可以執(zhí)行計算機可讀指令。因此,裝置和設(shè)備的功能模塊可以由執(zhí)行存儲在存儲器中的機器可讀指令的處理器或者根據(jù)嵌入在邏輯電路中的指令進行操作的處理器來實現(xiàn)。術(shù)語“處理器”要被廣泛地理解為包括處理單元、中央處理單元(cpu)、專用集成電路(asic)、邏輯單元、可編程門陣列等。方法和功能模塊可以全部由單個處理器進行,或者在若干個處理器之間劃分。
此類機器可讀指令還可以存儲在機器可讀存儲器(如機器可讀存儲器108)中,該機器可讀存儲器可以引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以具體模式進行操作。
此類計算機可讀指令還可以加載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,從而計算機或其他可編程數(shù)據(jù)處理設(shè)備進行一系列操作來產(chǎn)生計算機實現(xiàn)的處理,因此在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)由在流程表中的一個或多個流程和/或框圖中的一個或多個框指定的功能的手段。
另外,本文的教導(dǎo)可以以計算機軟件產(chǎn)品的形式實現(xiàn),該計算機軟件產(chǎn)品被存儲在存儲介質(zhì)中并且包括用于使計算機設(shè)備實現(xiàn)本公開的實施例中敘述的方法的多條指令。
盡管已經(jīng)參考某些實施例描述了方法、裝置和相關(guān)方面,但是在不背離本公開的精神和范圍的情況下可以進行各種修改、變化、省略和替換。應(yīng)該注意到,上文提到的實施例說明而非限制本文描述的內(nèi)容,并且在不背離所附的權(quán)利要求書的范圍的情況下,本領(lǐng)域技術(shù)人員將能夠設(shè)計許多可替換的實施方案。例如,來自一個實施例的特征或框可以與另一個實施例的特征/框組合,或被其替換。
詞語“包括(comprising)”不排除權(quán)利要求中列出的那些元素之外的元素的存在,“一(a)”或“一(an)”不排除復(fù)數(shù),并且單個處理器或其他單元可以完成權(quán)利要求書中敘述的若干個單元的功能。
任何從屬權(quán)利要求的特征可以與獨立權(quán)利要求或其他從屬權(quán)利要求中的任一項的特征組合。