背景技術(shù):
已經(jīng)提出了生成三維物體的裝置(包括通常稱為“3d打印機”的那些)作為生產(chǎn)三維物體的潛在便利方式。這些裝置通常接收物體模型形式的三維物體的定義。處理該物體模型以指示裝置使用至少一種生產(chǎn)材料生產(chǎn)物體。這些生產(chǎn)材料可以包括試劑和粉末基質(zhì)的組合、加熱的聚合物和/或生產(chǎn)材料的液體溶液。物體模型的處理可以在逐層基礎(chǔ)上執(zhí)行??赡芷谕a(chǎn)具有至少一種屬性(比如顏色、機械和/或結(jié)構(gòu)屬性)的三維物體。物體模型的處理可以基于裝置類型和/或所實施的生產(chǎn)技術(shù)而變化。以三維生成物體呈現(xiàn)出二維打印裝置中不存在的許多挑戰(zhàn)。
附圖說明
本公開的各種特征將從下面結(jié)合附圖的詳細描述中變得清楚,該附圖通過實例的方式一起圖示說明了本公開的特征,并且其中:
圖1是示出根據(jù)實例的生成用于生產(chǎn)三維物體的控制數(shù)據(jù)的裝置的示意圖;
圖2是示出根據(jù)實例的用于生產(chǎn)三維物體的裝置的示意圖;
圖3是示出根據(jù)實例的可用于生成三維閾值矩陣的結(jié)構(gòu)體積覆蓋表示的一部分的示意圖;
圖4是示出根據(jù)實例的用于生成三維矩陣的在結(jié)構(gòu)體積覆蓋表示的一部分上執(zhí)行的操作的示意圖;
圖5是示出根據(jù)實例的用于生成三維半色調(diào)閾值矩陣的方法的流程圖;
圖6是示出根據(jù)實例的用于生產(chǎn)三維物體的方法的流程圖;
圖7是示出根據(jù)實例的用于三維半色調(diào)的電子數(shù)據(jù)結(jié)構(gòu)的示意圖;以及
圖8是三維半色調(diào)矩陣的實例的圖示。
具體實施方式
在生產(chǎn)三維物體時,例如,在所謂的“3d打印”中,控制生成的物體的結(jié)構(gòu)存在挑戰(zhàn)。例如,可能期望生產(chǎn)具有各種結(jié)構(gòu)屬性的物體,其可能影響生產(chǎn)的物體的材料屬性和/或機械屬性,或受到生產(chǎn)的物體的材料屬性和/或機械屬性影響。還期望靈活地控制生產(chǎn)的物體的結(jié)構(gòu)。在某些情況中,可能期望改變物體模型的至少一部分的結(jié)構(gòu),而不必重新設計或重新生成物體模型。此外,可能期望在物體模型的不同部分的不同預定結(jié)構(gòu)之間產(chǎn)生平滑的受控的過渡。例如,可以為第一物體部分定義第一結(jié)構(gòu),并且可以為第二物體部分定義第二結(jié)構(gòu)。對于兩部分之間的過渡區(qū)域,可能期望兩種結(jié)構(gòu)的無縫融合??梢岳斫獾氖牵瑐鹘y(tǒng)的二維打印不存在這樣的考慮。
本文描述的某些實例使得能夠生成用于半色調(diào)閾值處理操作的三維矩陣。獲得結(jié)構(gòu)體積覆蓋表示。結(jié)構(gòu)體積覆蓋表示關(guān)于對應于三維物體的至少一部分的至少一個體積元素來定義。結(jié)構(gòu)體積覆蓋表示包括定義可用于生產(chǎn)三維物體的至少兩個預定義結(jié)構(gòu)的概率分布的數(shù)據(jù)值。結(jié)構(gòu)體積覆蓋表示可以基于在三維物體的至少兩個另外的體積元素的位置之間預定義的過渡函數(shù),例如,結(jié)構(gòu)體積覆蓋表示的數(shù)據(jù)值可以表示根據(jù)兩個選定位置處的數(shù)據(jù)值之間的梯度確定的中間值。
在某些描述的實例中,針對至少一個體積元素確定至少兩個預定義結(jié)構(gòu)的凸組合。凸組合可以基于結(jié)構(gòu)體積覆蓋表示的所述數(shù)據(jù)值中的至少一個?;诖_定的凸組合,然后將半色調(diào)值分配給用于半色調(diào)閾值操作的三維矩陣的至少一個對應體積元素。半色調(diào)值可以指示包括至少一個所述預定義結(jié)構(gòu)的至少一部分的計算結(jié)構(gòu)。因此,這些實例中的三維矩陣由這些分配的半色調(diào)值生成。然后(例如,在半色調(diào)閾值處理操作中)可以將三維矩陣應用于要生產(chǎn)的物體的數(shù)字表示,以生成用于生產(chǎn)物體的控制數(shù)據(jù)。例如,半色調(diào)閾值處理操作的輸出可以包括用于增材制造系統(tǒng)的沉積物或材料形成指令。通過控制用于閾值處理的三維矩陣的形式,可以控制三維物體的三維結(jié)構(gòu)。此外,通過基于每個體積元素的可用預定義結(jié)構(gòu)的概率分布生成三維矩陣,可以操作在半色調(diào)水平上的平滑結(jié)構(gòu)融合的機構(gòu)。在這個意義上,“平滑”可以被定義為連續(xù)變化或近似于連續(xù)變化,例如,其中后續(xù)數(shù)據(jù)值之間的差異低于預定義閾值。此外,通過基于可用的預定義結(jié)構(gòu)的凸組合生成三維矩陣,可以獲得與處于各個打印體素的水平的各種預定義結(jié)構(gòu)中的任一種不同的融合結(jié)構(gòu)。這些實例中的機構(gòu)可以針對整個三維物體,或針對三維物體的至少一個過渡區(qū)域操作。過渡區(qū)域可以被定義為位于具有不同預定義結(jié)構(gòu)的至少兩個物體部分之間的區(qū)域。在過渡區(qū)域內(nèi),在半色調(diào)水平上可以獲得結(jié)構(gòu)的平滑過渡。
這里描述的某些實例使得能夠在不修改物體處理管線的實質(zhì)部分的情況下生產(chǎn)具有期望的結(jié)構(gòu)的融合的三維物體。這些實例還降低了在物體的設計期間進行特定選擇的需要,例如,當物體被送去生產(chǎn)時,所設計的物體的體積或物體模型不需要展現(xiàn)期望的結(jié)構(gòu)的融合。這是通過在設計之后而在生產(chǎn)物體之前(例如,比如當設計的物體作為“3d打印作業(yè)”提交時)允許在物體處理管線的階段進行與物體的結(jié)構(gòu)融合相關(guān)聯(lián)的選擇來實現(xiàn)的。因此,可以用各種不同的結(jié)構(gòu)、子結(jié)構(gòu)和/或結(jié)構(gòu)融合體來生產(chǎn)相同的物體。用于物體生產(chǎn)的特定結(jié)構(gòu)融合體可以根據(jù)以下中的至少一個而變化:預定義的梯度函數(shù)、物體幾何以及至少兩個預定義結(jié)構(gòu)。在某些情況中,使用基于期望的結(jié)構(gòu)融合體在生產(chǎn)時間或接近生產(chǎn)時間生成的三維矩陣來對指定針對物體的體積(例如體素)的材料使用的物體設計的柵格化版本進行半色調(diào)。
圖1示出了被布置來生成用于生產(chǎn)三維物體的控制數(shù)據(jù)的裝置100的實例。裝置100包括半色調(diào)生成器110和矩陣生成器120。半色調(diào)生成器110被布置來接收定義三維物體的數(shù)據(jù)130并輸出用于至少一種生產(chǎn)材料的離散指令140。這些可以包括沉積指令,例如用于將至少一種試劑沉積在粉末狀基質(zhì)上或用于沉積擠出的聚合物,和/或材料形成或排列指令,例如,用于引導激光設備加熱液體或固體材料的控制指令。為了生成指令140,半色調(diào)生成器110可以聯(lián)合三維閾值矩陣150處理數(shù)據(jù)130。在某些情況中,這可以包括將數(shù)據(jù)130的至少一部分與三維閾值矩陣150的對應部分進行比較或等效操作。在一種情況中,半色調(diào)生成器110可以使用從對應于數(shù)據(jù)130的體積的三維閾值矩陣150中的位置讀取的半色調(diào)閾值對與數(shù)據(jù)130的體積(比如體素)相關(guān)聯(lián)的材料使用值實施半色調(diào)閾值處理操作。在具有雙層沉積機構(gòu)的增材制造系統(tǒng)中,這可以包括“沉積材料”(例如“1”)或“不沉積材料”(例如“0”)的形式的輸出沉積指令。例如,如果給定體素的材料使用值為65%,并且讀取的半色調(diào)閾值為50%,則由于材料使用值高于閾值,可以針對給定的體素輸出“1”的沉積指令。這可以作為在對應于給定體素的輸出位置處的生產(chǎn)材料的沉積來啟動。在某些系統(tǒng)中,輸出可以包括針對在生產(chǎn)分辨率下的三維物體的給定體積的材料形成狀態(tài)的集合中的一種,例如,可使用增材制造系統(tǒng)尋址的輸出物體的體積,并且其輸出材料狀態(tài)可以通過系統(tǒng)的選擇性動作來修改。
在圖1的實例中,矩陣生成器120可以生成供半色調(diào)生成器110使用的三維閾值矩陣150。為此,矩陣生成器120可以獲得結(jié)構(gòu)體積覆蓋表示160。結(jié)構(gòu)體積覆蓋表示160參照對應于三維物體的至少一個體積元素來定義。例如,結(jié)構(gòu)體積覆蓋表示160可以關(guān)于三維物體的數(shù)字表示的至少一個體素來定義。此外,結(jié)構(gòu)體積覆蓋表示160包括定義可用于生產(chǎn)三維物體的至少兩個不同預定義結(jié)構(gòu)的概率分布的數(shù)據(jù)值。矩陣生成器120可以基于結(jié)構(gòu)體積覆蓋表示160的所述數(shù)據(jù)值中的至少一個來針對至少一個體積元素確定至少兩個預定義結(jié)構(gòu)的凸組合。矩陣生成器120還被布置來基于所確定的凸組合,將數(shù)據(jù)值分配給三維閾值矩陣150的至少一個相應的體積元素。以這種方式,選擇三維閾值矩陣150的值,其中三維閾值矩陣150可以通過半色調(diào)生成器110施加,以通過控制離散材料形成指令140的生成來實現(xiàn)特定結(jié)構(gòu)。根據(jù)離散材料形成指令140由增材制造系統(tǒng)生產(chǎn)的物體因而展現(xiàn)取決于三維閾值矩陣150的值的結(jié)構(gòu)特征。
根據(jù)各種實例,至少兩個預定義結(jié)構(gòu)160可以包括兩個不同的半色調(diào)閾值矩陣,例如,至少兩個不同的三維閾值矩陣。這些閾值矩陣可以基于以下閾值矩陣中的至少一個:空-聚類矩陣;幅度調(diào)制(am)矩陣,比如聚類-點矩陣;有機晶格型矩陣;以及具有預定義顏色的噪聲矩陣,比如具有均勻隨機噪聲的白噪聲矩陣或綠噪聲矩陣(例如使用中頻噪聲分量)。根據(jù)一個實例,不同結(jié)構(gòu)可以基于不同單元尺寸的晶格。在一種情況中,每個結(jié)構(gòu)可以通過相應的半色調(diào)閾值矩陣的值來實現(xiàn)。在一個實例中,對應于每個結(jié)構(gòu)的半色調(diào)閾值矩陣可以各自具有相同的維度和/或尺寸。
在一個實例中,結(jié)構(gòu)體積覆蓋表示160可以包括至少一個結(jié)構(gòu)體積覆蓋矢量。結(jié)構(gòu)體積覆蓋矢量可以具有對應于至少兩個不同結(jié)構(gòu)的至少兩個矢量分量。在一種情況中,結(jié)構(gòu)體積覆蓋矢量可以表示至少兩個不同結(jié)構(gòu)矩陣的比例體積覆蓋。例如,在簡單的情況中,結(jié)構(gòu)體積覆蓋矢量可以包括兩個矢量分量[s1,s2],其中每個矢量分量是從0到1的概率值(或從0%到100%的百分比)。在這種情況中,s1可以涉及具有給定半色調(diào)閾值矩陣sm1的第一結(jié)構(gòu)。類似地,s2可以涉及具有給定半色調(diào)閾值矩陣sm2的第二結(jié)構(gòu)。結(jié)構(gòu)體積覆蓋矢量可以至少對應于體積元素集合中的第一體積元素,例如,在根據(jù)特定三維分辨率下的體素集合中的體素。
在一種情況中,矩陣生成器120可以被布置來基于至少兩個不同結(jié)構(gòu)之間的確定的過渡行為來獲得結(jié)構(gòu)體積覆蓋矢量中的至少兩個矢量分量的數(shù)據(jù)值??梢葬槍εc給定體積元素相關(guān)聯(lián)的位置確定過渡行為。在一個實例中,可以基于在至少兩個另外的體積元素的位置之間預定義的過渡函數(shù)來確定過渡行為。這些另外的體積元素可以包括三維物體的頂點和/或三維物體的物體屬性幾何中的特定點,例如具有特定物體屬性值的位置。過渡行為可以應用于與每個結(jié)構(gòu)相關(guān)聯(lián)的半色調(diào)閾值矩陣的值,例如,如上討論的sm1和sm2的值。在一種情況中,過渡行為可以表示半色調(diào)閾值矩陣的頂點值之間的梯度。根據(jù)一個實例,轉(zhuǎn)變行為可以基于給定體積元素的位置與該至少兩個另外的體積元素的位置的確定的距離。在一種情況中,過渡行為可以基于相對于至少兩個另外的體積元素的集合的重心坐標的集合。在一個實例中,過渡行為可以基于相對于四個另外的體積元素的集合的重心坐標的集合(例如,三維的單形的頂點)。在一些情況中,過渡行為可以例如通過過渡矩陣被明確定義。在其他情況中,過渡行為可以例如,基于立方體的頂點之間的對數(shù)或線性過渡函數(shù),在功能上被定義。在本文描述的實例中,實現(xiàn)過渡行為,使得至少兩個矢量分量的值是凸的,例如,他們總和歸一。
在一種情況中,過渡函數(shù)可以應用于與本身指示體積覆蓋的至少兩個另外的體積元素相關(guān)聯(lián)的數(shù)據(jù)值。在一種情況中,這可以是僅包括至少兩個不同結(jié)構(gòu)矩陣中的一個的結(jié)構(gòu)體積覆蓋表示。換句話說,用于至少兩個其它體積元素的結(jié)構(gòu)體積覆蓋矢量可以指示可用結(jié)構(gòu)中的一個的100%覆蓋,以及剩余可用結(jié)構(gòu)的0%覆蓋。在一個實例中,一個另外的體積元素的結(jié)構(gòu)體積覆蓋矢量可以指示第一可用結(jié)構(gòu)的100%覆蓋,并且另一個另外的體積元素的結(jié)構(gòu)體積覆蓋矢量可以指示第二可用結(jié)構(gòu)的100%覆蓋。因此,至少兩個另外的體積元素可以表示極限位置,該極限位置之間存在過渡區(qū)域。在每個極限位置,可用結(jié)構(gòu)中的一個可以用100%的體積覆蓋來定義。過渡區(qū)域中的體積元素可以具有包括至少兩個可用結(jié)構(gòu)的非零概率的結(jié)構(gòu)體積覆蓋。
在一個實例中,可以將每個結(jié)構(gòu)體積覆蓋矢量與本文中稱為“體素”的一系列單位體積以與其中將二維圖像劃分成單位區(qū)域(稱為“像素”)的方式類似的形式相關(guān)聯(lián)。在一種情況中,可以使用針對體素的高度、寬度和深度的每個具有共同值的立方體體積。在其他情況中,可以自定義單位體積或體素,例如其中單位體積是非立方體的和/或具有彼此不同的高度、寬度和深度的值(盡管每個體素與光柵表示中的其他體素具有相同的高度、寬度和深度)。在某些情況中,單位體積或體素可以是非標準或自定義的三維形狀,例如,體素可以基于德洛內(nèi)(delaunay)鑲嵌(tessellation)(例如填充物體的四面體)或任何其他空間填充多面體。在這種情況中,結(jié)構(gòu)體積覆蓋表示可以存儲為元組的集合(例如,陣列型結(jié)構(gòu)),其中元組的一個分量表示三維的體素坐標(例如質(zhì)心或底角),并且元組的另一個分量表示結(jié)構(gòu)體積覆蓋矢量。
在一個實施方案中,數(shù)據(jù)130包括三維物體的至少一個體積的至少一個材料體積覆蓋矢量。材料體積覆蓋矢量表示可用于用于生產(chǎn)三維物體的增材制造系統(tǒng)的材料的概率分布。在一種情況中,每個矢量表示可用于生產(chǎn)三維物體的材料和所述材料的組合的比例體積覆蓋。例如,對于可用于生產(chǎn)三維物體的k個材料和用于所述材料的l個離散材料形成狀態(tài),材料覆蓋矢量包括lk個矢量分量,每個矢量分量具有相關(guān)聯(lián)的概率值。在這種情況中,離散沉積指令包括來自l*k個可用指令值的集合的生產(chǎn)指令,在生產(chǎn)分辨率下的每個元素具有用于所述k個材料中的每個的l個材料形成狀態(tài)指令中的一個。由材料體積覆蓋矢量定義的材料和材料組合可以與許多不同的材料類型相關(guān)聯(lián),該材料類型例如,構(gòu)造材料、裝飾材料、支撐或支架材料、試劑和粉末,包括單獨使用材料、聯(lián)合使用材料和沒有任何材料。
為了解釋材料體積覆蓋矢量的分量,可以考慮簡單的實例。在該簡單的實例中,裝置可以使用兩種材料來生成三維物體:m1和m2。這些可以是沉積在基質(zhì)或壓板上的流體構(gòu)造材料,例如,排出的或噴射的熔融聚合物,或者它們可以包括沉積在至少一層粉末構(gòu)造材料上的兩種可沉積的著色劑。在后一種情況中,在生產(chǎn)的三維物體中,每個“材料”可以對應于可沉積的試劑和粉末構(gòu)造材料的固化的組合物。在前一種情況中,在生產(chǎn)的三維物體中,每種“材料”可以對應于排出的或噴射的聚合物的凝固的部分。在任何情況中,每個“材料”可以通過增材制造裝置沉積以生成輸出三維物體的(例如,在生產(chǎn)分辨率下)定義的體積。
在這種簡單的實例中,如果增材制造裝置可以沉積離散量的每個材料,例如,在二元沉積中,有四種不同的材料組合狀態(tài):沒有m2的m1的沉積的第一狀態(tài);沒有m1的m2的沉積的第二狀態(tài);m1和m2兩者的沉積的第三狀態(tài),例如,m2沉積在m1上,或相反情況;以及m1和m2都不存在的第四狀態(tài),“空白”(z)或禁止符(inhibitor)。在這種情況中,材料體積覆蓋矢量具有四個矢量分量:[m1,m2,m1m2,z]。在最后的矢量分量的情況中,“空白”或“z”可以表示“空”或處理層中不存在材料,例如,如果試劑沉積在構(gòu)造材料的層上,這可以表明處理層不存在構(gòu)造材料,即使在已經(jīng)生產(chǎn)出完整的物體之前才去除構(gòu)造材料。
在一種情況中,裝置100可以被實施為增材制造系統(tǒng)的一部分,例如,可以包括用于“3d打印機”的嵌入式控制器的電子器件或部分。在另一種情況中,裝置100的至少一部分可以被實施為存儲在非暫時性存儲介質(zhì)上的可執(zhí)行代碼,其包括指令,當由至少一個處理器執(zhí)行該指令時,使得處理器實施本文所述的裝置100的至少一部分功能。該可執(zhí)行代碼另外可以從至少一個易失性或非易失性存儲器(比如隨機訪問存儲器、只讀存儲器和/或硬盤驅(qū)動器)訪問數(shù)據(jù)。該至少一個處理器可以形成增材制造系統(tǒng)的部分(例如“3d打印機”的計算模塊),和/或可以形成通信地耦合到增材制造系統(tǒng)的計算機設備的部分(例如,臺式計算機,其被配置成控制安裝在計算機設備上的“3d打印機”和/或“3d打印驅(qū)動程序”)。在一種情況中,計算機設備可以包括通信地耦合到增材制造系統(tǒng)的服務器;例如用戶可以從移動計算設備提交定義三維物體的數(shù)據(jù)130,用于被“云中”的裝置100進行處理,然后裝置100可以經(jīng)由網(wǎng)絡通信通道將材料形成指令140發(fā)送到增材制造系統(tǒng)。在一種情況中,裝置100的至少一部分可以被實施為至少一個專用集成電路(asic)。asic可以是標準的,完全自定義的或部分自定義的。在一個實例中,asic可以具有結(jié)構(gòu)化設計。asic可以包括至少一個微處理器和/或至少一個存儲塊。在另一實例中,asic可以包括至少一個門陣列,例如,現(xiàn)場可編程門陣列?,F(xiàn)場可編程門陣列可以包括可編程邏輯塊的陣列和可重構(gòu)互連的等級。在某些實例中,可編程邏輯塊的陣列可以包括存儲元件,例如,觸發(fā)器。在一個實例中,asic可以被布置來接收定義三維物體的數(shù)據(jù)130。根據(jù)一個實例,asic可以通信地耦合到至少一個中央處理單元。數(shù)據(jù)130可以被至少一個中央處理單元訪問。至少一個中央處理單元可以包括通用中央處理單元和特定用途中央處理單元中的至少一個。根據(jù)某些實例,asic和/或中央處理單元可以被布置來操作半色調(diào)生成器110和矩陣生成器120中的至少一個。
現(xiàn)在將參考圖2描述根據(jù)材料形成指令140被布置來生產(chǎn)三維物體的裝置的實例。圖2示出了被布置來生產(chǎn)三維物體260的裝置200的實例。裝置200可以接收三維物體的數(shù)據(jù)210,其可以包括如下所述的材料形成指令140。在一種情況中,裝置200的至少一部分可以被實施為存儲在非暫時性存儲介質(zhì)上的可執(zhí)行代碼,其包括指令,當由至少一個處理器執(zhí)行該指令時,使得處理器實施本文所述的裝置200的至少一部分的功能。為了更好地理解本描述的實例,示出和描述裝置200;不同形式的和/或使用不同技術(shù)的其他裝置可以可替換地與本文所述的結(jié)構(gòu)體積覆蓋表示一起使用。
在圖2中,裝置200包括沉積控制器220和存儲器225。沉積控制器220可以包括形成嵌入式計算設備的部分的至少一個處理器(例如,適用于控制增材制造系統(tǒng))。存儲器225可以包括易失性和/或非易失性存儲器,例如,非暫時性存儲介質(zhì),其被布置來存儲計算機程序代碼(例如,以固件的形式)。固件可以包括機器可讀指令和/或包括用于至少一個處理器的指令的可執(zhí)行代碼。沉積控制器220通信地耦合到被布置來構(gòu)造三維物體的裝置的各方面。這些包括沉積機構(gòu)230。沉積機構(gòu)230可以沉積生產(chǎn)材料以生成三維物體。在本情況中,沉積機構(gòu)包括基質(zhì)供給機構(gòu)235和試劑噴射機構(gòu)240、245。在其他情況中,沉積機構(gòu)230可以包括較少的或附加的部件,例如,基質(zhì)供給機構(gòu)可以與試劑噴射機構(gòu)分開提供或省略,或者其他部件,例如,沉積機構(gòu)230可以包括聚合物提取機構(gòu)。在圖2的示意性實例中,試劑噴射機構(gòu)240、245包括兩個部件:用于供給第一試劑(例如上述材料m1)的第一部件240和用于供給第二試劑(例如上述材料m2)的第二部件245。為了方便解釋,在該實例中呈現(xiàn)了兩種材料,但是可以供給任何數(shù)量的材料。描述試劑形式的類似材料僅為舉例?;|(zhì)供給機構(gòu)235可以供給至少一個基質(zhì)層,在該基質(zhì)層上,由試劑噴射機構(gòu)240、245沉積可用于生產(chǎn)的材料,以生產(chǎn)三維物體260。在本情況中,材料包括施加到粉末基質(zhì)的試劑,其中在固化過程之后,試劑和粉末的結(jié)合形成物體的部分。然而,其他實施方案是可能的,例如,材料可以被沉積以形成物體的部分,例如,按照上面討論的聚合物的情況。在圖2的實例中,在壓板250上逐層構(gòu)造三維物體260。圖2所示的方面和部件的布置不是限制性的;每個裝置的精確布置將根據(jù)實施的生產(chǎn)技術(shù)和裝置的模型而變化。
在圖2的實例中,沉積控制器220被配置為處理和/或以其他方式使用數(shù)據(jù)210來控制沉積機構(gòu)230的至少一個部件。沉積控制器220可以控制至少一個基質(zhì)供給機構(gòu)235和試劑噴射機構(gòu)240、245。例如,數(shù)據(jù)140中的離散材料形成指令可由沉積控制器220用于控制試劑噴射機構(gòu)內(nèi)的噴嘴。在一個實施方案中,裝置200可以被布置來使用分別由試劑噴射機構(gòu)240、245的部件供給的聚結(jié)劑和聚結(jié)改性劑。這些試劑允許三維物體具有變化的材料屬性。它們可以與至少一種著色的粉末狀基質(zhì)材料組合,例如,使用噴墨機構(gòu)施加來沉積粉末層,以生成具有變化的材料屬性的多色物體。如果多種粉末狀基質(zhì)材料是可用的,則在某些情況中,它們也可以形成材料體積覆蓋矢量的“材料”的部分。在這些情況中,可以通過至少將聚結(jié)劑和聚結(jié)改性劑沉積在基質(zhì)材料層(例如,粉末層或形成z平面切片的其他材料的層)上來構(gòu)建生成的物體,然后施加能量以使材料結(jié)合(例如,紅外或紫外光)。例如,基質(zhì)供給機構(gòu)235和試劑噴射機構(gòu)240、245中的至少一個(例如,在x,y和z方向中的至少一個上(其中y軸垂直于圖2的紙張))相對于壓板250可以是可移動的。基質(zhì)供給機構(gòu)235、試劑噴射機構(gòu)240、245和壓板250中的至少一個在沉積控制器220的控制下是可移動的,以達到該目的。此外,至少一種油墨也可以沉積在固化的和/或未固化的層上,其中該油墨還形成材料體積覆蓋矢量的“材料”的部分。在其他實施方案中,除了別的之外,裝置可以包括選擇性激光燒結(jié)系統(tǒng)、立體光刻系統(tǒng)、噴墨系統(tǒng)、熔融沉積建模系統(tǒng)、任何三維打印系統(tǒng)、噴墨沉積系統(tǒng)和層壓物體制造系統(tǒng)的部分。這些包括直接沉積材料的裝置,而不是描述的使用各種試劑的裝置。
在一種情況中,裝置100和沉積控制器220的功能可以組合在一個嵌入式系統(tǒng)中,該嵌入式系統(tǒng)可以接收定義三維物體的數(shù)據(jù)130,或可用于生產(chǎn)該三維物體的數(shù)據(jù),并且因此控制裝置200。對于可以接收數(shù)據(jù)210的“獨立”的裝置可能也是這種情況(例如,通過物理傳輸和/或通過網(wǎng)絡),并生產(chǎn)物體。例如,該裝置可以通信地耦合到計算機設備,該計算機設備可以以二維打印機的方式將包括物體定義130的“打印作業(yè)”或可用于生產(chǎn)物體定義130的數(shù)據(jù)發(fā)送到裝置。
圖3示意性地示出根據(jù)實例的三維物體的體積的結(jié)構(gòu)體積覆蓋矢量的表示300。對于體積,多個獨立的預定義結(jié)構(gòu)表示是可用的,至少包括第一結(jié)構(gòu)表示310和第二結(jié)構(gòu)表示320。另外的結(jié)構(gòu)表示可以額外地是可用的,直至且包括第n結(jié)構(gòu)表示330。在一個情況中,每個可用的結(jié)構(gòu)表示可以具有用于給定體積的半色調(diào)操作的相應概率。在這種情況中,相應的概率由值a1、a2、……、an給出。例如,結(jié)構(gòu)表示可以體現(xiàn)在特定的半色調(diào)閾值矩陣中。在圖3的實例中,可以存在n個不同的半色調(diào)閾值矩陣。在這種情況中,值a1表示使用第一結(jié)構(gòu)表示310的概率;值a2表示使用第二結(jié)構(gòu)表示320的概率;等等,直至值an表示使用第n結(jié)構(gòu)表示330的概率。每個結(jié)構(gòu)表示可以是獨立的,例如可以被存儲為包括閾值的單獨的數(shù)據(jù)結(jié)構(gòu)。換言之,a1、a2、……、an可以是指示在半色調(diào)操作期間要由相應的結(jié)構(gòu)表示中的每個來表示給定體積的比例的值。值a1、a2、……、an中的至少一個可以組合以形成結(jié)構(gòu)體積覆蓋矢量340的至少部分,例如,如果所有其他值都為零,則可能只使用一個值。在一個實例中,所有值a1、a2、……、an可以組合以形成結(jié)構(gòu)體積覆蓋矢量340。形成結(jié)構(gòu)體積覆蓋矢量340的部分的值a1、a2、……、an可以總和歸一。在一個實例中,值a1、a2、……、an可以從可以被連續(xù)表示的概率分布導出。在另外的實例中,可以基于預定義的過渡函數(shù)來確定值a1、a2、……、an。根據(jù)某些實例,結(jié)構(gòu)體積覆蓋矢量340可以表示連續(xù)概率分布,例如,通過特定的量化值。
根據(jù)圖3所示的實例,結(jié)構(gòu)體積覆蓋矢量340形成結(jié)構(gòu)體積覆蓋表示350的至少部分。在一個實例中,結(jié)構(gòu)體積覆蓋表示可以包括單個結(jié)構(gòu)體積覆蓋矢量340。在另一個實例中,結(jié)構(gòu)體積覆蓋表示可以包括多個結(jié)構(gòu)體積覆蓋矢量340。形成結(jié)構(gòu)體積覆蓋表示350的部分的結(jié)構(gòu)體積覆蓋矢量340的數(shù)量可以對應于針對三維物體定義的體積的數(shù)量。例如,可以針對三維物體的柵格化數(shù)字表示中的多個體素中的每個定義結(jié)構(gòu)體積覆蓋矢量。在另一種情況中,可以關(guān)于三維物體的相應的多個體積來定義多個結(jié)構(gòu)體積覆蓋矢量(例如,表示三維物體的不同部分)。后一種情況中的體積元素然后可以被幾何定義,例如,作為由多個點包圍的體積。根據(jù)一個實例,除了至少一個結(jié)構(gòu)體積覆蓋矢量340之外,結(jié)構(gòu)體積覆蓋表示350可以包括其他信息、數(shù)據(jù)和/或表示。
圖4示出操作400的示意圖,根據(jù)實例,在結(jié)構(gòu)體積覆蓋表示410的一部分上實施該操作400以生成三維矩陣。結(jié)構(gòu)體積覆蓋表示410包括用于給定體積的至少一個結(jié)構(gòu)體積覆蓋矢量420。該體積可以聯(lián)合三維空間中的多個坐標被定義??梢愿鶕?jù)x、y和z維度中的網(wǎng)格分辨率來定義坐標,例如,可以包括根據(jù)x、y和z維度中的每個中的預定分辨率或離散值的集合定義的體積的中心或角。如根據(jù)圖3所示的實例所描述的,結(jié)構(gòu)體積覆蓋矢量420具有n個分量,每個分量對應于與n個結(jié)構(gòu)矩陣中的一個相關(guān)聯(lián)的概率ai。結(jié)構(gòu)體積覆蓋矢量420由矩陣生成器430獲得。在本實例中,矩陣生成器430確定至少兩個結(jié)構(gòu)矩陣的凸組合?;谒鐾菇M合,將值440分配給三維矩陣。值440可以對應于針對給定體積計算的結(jié)構(gòu),該計算的結(jié)構(gòu)包括所述結(jié)構(gòu)矩陣中的一個的至少一部分。
在某些實例中,可以將值分配給通過矩陣生成器430獲得的針對每個結(jié)構(gòu)體積覆蓋矢量的三維矩陣,例如,所得的三維半色調(diào)閾值矩陣(比如圖1中的150)可以以與結(jié)構(gòu)體積覆蓋表示相同的分辨率來生產(chǎn)。在其他情況中,所得的三維半色調(diào)閾值矩陣可以以與結(jié)構(gòu)體積覆蓋表示不同的分辨率來生成,例如,通過將基于單個結(jié)構(gòu)體積覆蓋矢量生成的值映射到所得的三維半色調(diào)閾值矩陣中的多個體積,或通過將多個結(jié)構(gòu)體積覆蓋矢量的值組合。
圖5示出了根據(jù)實例的生成用于生產(chǎn)三維物體的三維半色調(diào)閾值矩陣的方法500。該方法可以通過以下被應用:裝置100和沉積控制器220中的任一個、另一個增材制造系統(tǒng)或被布置來控制增材制造系統(tǒng)的計算機設備。在框510中,獲得三維物體的結(jié)構(gòu)體積覆蓋表示。結(jié)構(gòu)體積覆蓋表示包括三維物體的至少一個體積的結(jié)構(gòu)體積覆蓋矢量。結(jié)構(gòu)體積覆蓋矢量表示至少兩個不同的預定義結(jié)構(gòu)矩陣的比例體積覆蓋。在框520處,將半色調(diào)閾值分配給三維半色調(diào)閾值矩陣的相應體積。半色調(diào)閾值對應于至少一個所述預定義結(jié)構(gòu)矩陣的至少一部分?;谥辽賰蓚€預定義的結(jié)構(gòu)矩陣的權(quán)重組合來分配半色調(diào)閾值。該權(quán)重組合可以是上述凸組合,例如,其中應用的所有權(quán)重總和歸一。來自方法500的所得的三維半色調(diào)閾值矩陣適用于三維物體的至少一部分的物體定義,以指示生產(chǎn)三維物體的至少一部分,例如,通過對三維物體的至少一部分的數(shù)字物體表示進行半色調(diào)。特別地,分配的半色調(diào)閾值可以用于應用到三維物體的層對應的數(shù)字表示的一部分。
在一種情況中,方法500包括針對三維物體的至少該部分獲得上述數(shù)字表示;使用三維半色調(diào)閾值矩陣對數(shù)字表示進行半色調(diào)以生成用于生產(chǎn)三維物體的至少該部分的控制數(shù)據(jù);以及使用生成的控制數(shù)據(jù)在增材制造系統(tǒng)上生產(chǎn)三維物體的至少該部分。在這種情況中,半色調(diào)可以在設計階段之后而在打印階段之前實施,例如,在生產(chǎn)處理管線接近末尾或后期。此外,可以針對不同的期望結(jié)構(gòu)、子結(jié)構(gòu)和/或結(jié)構(gòu)融合體差異地生成三維半色調(diào)閾值矩陣,而無需修改三維物體的數(shù)字表示。這使得三維物體的設計具有靈活性,并且使得能夠在接近生產(chǎn)時間進行結(jié)構(gòu)選擇。在一種情況中,方法500的至少一部分可以由存儲在非暫時性存儲介質(zhì)上的可執(zhí)行代碼來實施,其包括指令,當至少一個處理器執(zhí)行該指令時,使得處理器實施本文所述的方法500的至少一部分。在另一種情況中,方法500的至少一部分可以由至少一個asic實施。asic可以是標準的,完全自定義的或部分自定義的。在一個實例中,asic可以具有結(jié)構(gòu)化設計。asic可以包括至少一個微處理器和/或至少一個存儲塊。在另一實例中,asic可以包括至少一個門陣列,例如,現(xiàn)場可編程門陣列。現(xiàn)場可編程門陣列可以包括可編程邏輯塊的陣列和可重構(gòu)互連的等級。在某些實例中,可編程邏輯塊的陣列可以包括存儲元件,例如觸發(fā)器。在一個實例中,asic可以被布置來在框510處獲得結(jié)構(gòu)體積覆蓋表示。根據(jù)一個實例,asic可以通信地耦合到至少一個中央處理單元。在框520處可以由至少一個中央處理單元分配半色調(diào)閾值。該至少一個中央處理單元可以包括通用中央處理單元和特定用途中央處理單元中的至少一個。
圖6示出了根據(jù)實例的生成用于生產(chǎn)三維物體的三維半色調(diào)閾值矩陣的方法600。該方法可以通過以下被應用:裝置100和沉積控制器220中的任一個、另一個增材制造系統(tǒng)或被布置來控制增材制造系統(tǒng)的計算機設備。該方法從三維物體的數(shù)字表示開始,例如,這可以在預處理步驟中獲得。數(shù)字表示可以包括三維物體的至少一個體積的至少一個材料體積覆蓋矢量或另一種材料使用定義。在框610處,選擇三維物體的給定體積,并且獲得針對給定體積的局部過渡行為。在一種情況中,可以針對數(shù)字表示的每個定義的體積(例如,針對每個輸入體素)重復框610至640。在一個實例中,局部過渡行為可以基于來自過渡矩陣的至少一個值。根據(jù)另一個實例,局部過渡行為可以基于預定義的過渡函數(shù)。該函數(shù)可以體現(xiàn)在計算機程序代碼和/或處理電子器件中,該電子器件被選擇性地應用于包括矩陣值的數(shù)據(jù)。預定義的過渡函數(shù)可以在至少兩個另外的體積的位置之間(例如,在物體的三維空間中的至少兩個點之間)被預定義。在一個實例中,預定義的過渡函數(shù)可以是對數(shù)函數(shù)、多項式函數(shù)或指數(shù)函數(shù)。在另一個實例中,預定義的過渡函數(shù)可以是各種函數(shù)的組合。在某些實例中,局部過渡行為可以基于空間鑲嵌。在一個這樣的實例中,局部過渡行為可以基于具有線性四面體內(nèi)插的空間鑲嵌。在某些情況中,局部過渡行為可以包括應用特定的計算機程序代碼和/或處理電子器件。
在框620處,針對三維物體獲得結(jié)構(gòu)體積覆蓋表示。結(jié)構(gòu)體積覆蓋表示可以基于在框610處獲得的所獲得的局部過渡行為。例如,可以針對多個體素中的每個獲得局部過渡行為,并且這可以用于生成針對多個體素中的每個的結(jié)構(gòu)體積覆蓋矢量(“svoc”)值。在圖6的實例中,在框620處獲得的結(jié)構(gòu)體積覆蓋表示可以基于針對特定給定體積確定的相對于至少兩個另外的體積的集合的重心坐標的集合,即三維空間中的位置。在一個實例中,結(jié)構(gòu)體積覆蓋表示可以基于相對于四個另外的體積的集合的針對給定體積確定的重心坐標的集合。四個另外的體積可以代表三維單形的頂點。在另一個實例中,另外的體積可以代表相對于三維單形的頂點的面和/或邊。結(jié)構(gòu)體積覆蓋表示包括用于至少一個體積的表示至少兩個不同矩陣的比例體積覆蓋的結(jié)構(gòu)體積覆蓋矢量svoc。在一個實例中,結(jié)構(gòu)體積覆蓋矢量可以包括指示概率的數(shù)據(jù)值的集合,每個概率對應于可用于用于生產(chǎn)三維物體的半色調(diào)操作的至少兩個結(jié)構(gòu)閾值矩陣中的一個。在一種情況中,可以基于至少兩個另外的體積上的至少兩個不同結(jié)構(gòu)矩陣的值之間的梯度來生成結(jié)構(gòu)體積覆蓋矢量的值。換句話說,至少兩個另外的體積可以被認為是結(jié)構(gòu)絕對體,其之間存在過渡區(qū)域。例如,如果有代表四個不同可用結(jié)構(gòu)的四個結(jié)構(gòu)矩陣(smi),并且局部過渡行為被定義為具有線性四面體內(nèi)插的空間鑲嵌(例如,在每個結(jié)構(gòu)矩陣中定義的頂點和/或點之間),那么,對于位置[x,y,z],可以將結(jié)構(gòu)體積覆蓋矢量計算為結(jié)構(gòu)鑲嵌中的重心坐標[a1,a2,a3,a4],使得結(jié)構(gòu)體積覆蓋矢量的分量的值為[s1:a1,s2:a2,s3:a3,s4:a4],其中分量s1至s4與各個矩陣sm1至sm4相關(guān)。
結(jié)構(gòu)鑲嵌可以被認為是其頂點具有相關(guān)聯(lián)的結(jié)構(gòu)矩陣的空間位置的幾何鑲嵌。對于一個說明性的實例,有兩個結(jié)構(gòu)矩陣sm1和sm2應用于立方體物體上。在八個立方體頂點中的每個處,兩個結(jié)構(gòu)矩陣中的一個可以被明確地定義為具有100%的覆蓋(或100%概率)。例如,在頂點[000]、[010]、[100]和[110](例如立方體的底面)上sm1可以具有100%的覆蓋,并且在頂點[001]、[011]、[101]和[111](例如立方體的頂面)上sm2可以具有100%的覆蓋。針對該空間可以生成德洛內(nèi)鑲嵌,創(chuàng)建結(jié)構(gòu)化鑲嵌(例如四面體化),其中在每種情況中,至少一個頂點與其他三個頂點不同。例如,可以生成四面體,使得[000]、[100]、[101]和[110]是其頂點,在這種情況中,三個頂點使用sm1,且一個使用sm2??梢越柚谥匦淖鴺藖碛嬎闵鲜鼋Y(jié)構(gòu)鑲嵌(例如四面體)內(nèi)的任何點,這將影響對物體進行半色調(diào)的sm1和sm2的各自的覆蓋。換句話說,結(jié)構(gòu)鑲嵌可以被認為是定義結(jié)構(gòu)體積覆蓋的位置的幾何鑲嵌,以便可以借助于插值來計算中間結(jié)構(gòu)體積覆蓋。
在框630處,確定至少兩個結(jié)構(gòu)矩陣的凸組合,以確定用于三維半色調(diào)閾值矩陣的值。凸組合基于用于至少一個體積的結(jié)構(gòu)體積覆蓋矢量。在一個實例中,結(jié)構(gòu)體積覆蓋矢量的至少一個數(shù)據(jù)值可以用作凸組合中的至少一個矩陣的權(quán)重。例如,有兩個可用的矩陣sm1和sm2,每個矩陣具有不同的半色調(diào)閾值。在一種情況中,矩陣的這些半色調(diào)閾值可以關(guān)于給定的點的集合(例如,立方體的頂點)來定義。給定體積可以通過坐標c=[xc,yc,zc]來定義。給定體積的結(jié)構(gòu)體積覆蓋矢量可以表示為[s1:a1,s2:a2]c,其中a1和a2可以分別指示與使用sm1和sm2相關(guān)聯(lián)的概率,并且s1和s2可以意指不同的矢量分量。a1和a2可以基于相對于至少兩個另外的體積和/或位置的給定體積的重心坐標的集合,其中的每個可以與矩陣sm1和sm2中的至少一個相關(guān)聯(lián)。在一種情況中,a1可以基于相對于與sm1相關(guān)聯(lián)的體積和/或位置的重心坐標,并且a2可以基于相對于與sm2相關(guān)聯(lián)的體積和/或位置的重心坐標。在這種情況中,a1和a2是凸的,也就是說,它們總和歸一。因此它們可以表示凸權(quán)重。在這種情況中,給定的體積(例如在與坐標相對應的位置)的計算結(jié)構(gòu)sc[xc,yc,zc]的值可以表示為sc[xc,yc,zc]=a1*sm1[xc,yc,zc]+a2*sm2[xc,yc,zc],即坐標[xc,yc,zc]處的可用矩陣sm1和sm2的半色調(diào)閾值的權(quán)重組合,其中a1和a2為凸權(quán)重。在更一般的情況中,對于n個可用的結(jié)構(gòu)矩陣,由坐標[xc,yc,zc]定義的給定體積的結(jié)構(gòu)體積覆蓋矢量可以表示為[s1:a1,s2:a2,s3:a3,...,sn:an]c,其中a1、a2、a3、……an可以分別表示與使用sm1、sm2、sm3、……smn相關(guān)聯(lián)的概率。在這種情況中,a1、a2、a3、……an可以是凸的,也就是說,它們總和歸一。給定體積的計算結(jié)構(gòu)sc可以更一般地表示為sc[xc,yc,zc]=a1*sm1[xc,yc,zc]+a2*sm2[xc,yc,zc]+a3*sm3[xc,yc,zc]+...+an*smn[xc,yc,zc],即坐標[xc,yc,zc]處的可用的結(jié)構(gòu)矩陣sm1、sm2、sm3、……smn的半色調(diào)閾值的權(quán)重組合。權(quán)重組合sc[xc,yc,zc]可以是與sm1[xc,yc,zc]、sm2[xc,yc,zc]、sm3[xc,yc,zc]、……、smn[xc,yc,zc]在相同范圍內(nèi)的值,條件是值a1、a2、a3、……an是凸的。在一種情況中,相同的范圍可以在0和4095之間,例如,針對12位矩陣。
在框640處,將半色調(diào)閾值分配給三維半色調(diào)閾值矩陣的體積。半色調(diào)閾值基于在框630處實施的凸組合,并且對應于體積的計算結(jié)構(gòu)sc[xc,yc,zc]。因此,半色調(diào)閾值可以指示可用結(jié)構(gòu)矩陣中的至少一個的至少一部分。例如,讓給定體積的結(jié)構(gòu)體積覆蓋矢量表示為[s1:0.5,s2:0.5]。該結(jié)構(gòu)體積覆蓋矢量的凸組合可以導致半色調(diào)閾值,其在坐標[xc,yc,zc]處指示來自矩陣sm1和sm2兩者的等權(quán)重閾值分量。如果在坐標[xc,yc,zc]處的sm1和sm2的閾值分量不相等,則所得到的半色調(diào)閾值可能不同于如果針對給定體積選擇和/或單獨使用sm1或sm2所得到的半色調(diào)閾值。三維半色調(diào)閾值矩陣的所述體積可以對應于與在框630處用于凸組合的結(jié)構(gòu)體積覆蓋矢量相關(guān)聯(lián)的體積,例如,可以通過兩個矩陣中的坐標[xc,yc,zc]定義體積。
可以針對多個體素(例如,針對多個坐標)中的每個重復框610至640,以生成具有針對每個體素的閾值的完整三維半色調(diào)閾值矩陣。在本實例中,在框650處,使用基于分配在框640中的半色調(diào)閾值生成的三維半色調(diào)閾值矩陣對三維物體的數(shù)字表示進行半色調(diào)。半色調(diào)操作生成用于生產(chǎn)三維物體的控制數(shù)據(jù)。在框660處,使用所生成的控制數(shù)據(jù)在增材制造系統(tǒng)上生產(chǎn)三維物體。
在一種情況中,三維物體的數(shù)字表示可以至少從以基于矢量的格式接收的三維物體模型數(shù)據(jù)(例如,來自立體光刻“.stl”文件的數(shù)據(jù))得出。在某些情況中,這可以轉(zhuǎn)換成預定的柵格分辨率。基于矢量的格式表示使用定義的模型幾何的三維物體,比如多邊形的網(wǎng)格和/或三維形狀模型的組合。例如,“.stl”文件可以包括三維的一列頂點形式的矢量表示,以及在三個頂點之間的三角剖分或關(guān)聯(lián)形式的表面鑲嵌。柵格表示可以包括多個定義的單位體素或自定義體素,例如,至少一個尺寸的定義的體積。
圖7示出根據(jù)實例的用于三維半色調(diào)的電子數(shù)據(jù)結(jié)構(gòu)700。除了其他以外,電子數(shù)據(jù)結(jié)構(gòu)700可以存儲在比如易失性存儲器、非易失性存儲器和磁存儲器或固態(tài)存儲器的非暫時性計算機可讀存儲介質(zhì)中。非暫時性計算機可讀存儲介質(zhì)可以被布置來存儲計算機程序代碼(例如,以固件的形式)。固件可以包括機器可讀指令和/或包括指令的可執(zhí)行代碼。在圖7中,電子數(shù)據(jù)結(jié)構(gòu)700包括聯(lián)合三維空間中的多個坐標720定義的數(shù)據(jù)值710。如所示,坐標是根據(jù)x、y和z維度中的網(wǎng)格分辨率來定義的,例如,可以包括根據(jù)x、y和z維度中的每個中的預定分辨率或離散值的集合來定義的體素的中心或角。在圖7中,數(shù)據(jù)值710包括三維半色調(diào)操作的閾值。例如,如圖7中的分組730、740和750所示,它們代表平行于x和y維度排列的多個z維平面。分組730具有第一共同z坐標值(“0”);分組740具有第二共同z坐標值(“1”);并且分組750具有第三共同z坐標值(“2”)。對于多個z層,這可以重復。數(shù)據(jù)值710中的至少一個包括確定的空間結(jié)構(gòu)的指示。該確定基于由針對與所述數(shù)據(jù)值710相關(guān)聯(lián)的坐標獲得的至少兩個不同的預定義空間結(jié)構(gòu)的概率分布權(quán)重的至少兩個不同的預定義空間結(jié)構(gòu)的凸組合。作為圖7所示的實例,分組730中的坐標分別具有指示確定的空間結(jié)構(gòu)“sc000”、“sc100”和“sc110”的數(shù)據(jù)值。分組740中的坐標分別具有指示確定的空間結(jié)構(gòu)“sc001”、“sc101”和“sc111”的數(shù)據(jù)值。確定的結(jié)構(gòu)中的每個可以包括預定義的空間結(jié)構(gòu)中的至少一個的至少一部分。在一種情況中,確定的結(jié)構(gòu)可以針對每個給定的坐標單獨確定,例如,通過計算在該坐標處的預定義空間結(jié)構(gòu)的凸組合。在另一種情況中,可以從單個結(jié)構(gòu)矩陣sc獲得確定的結(jié)構(gòu)“sc000”、“sc100”和“sc110”。因此,圖7的電子數(shù)據(jù)結(jié)構(gòu)700可以用于存儲三維半色調(diào)閾值矩陣,以供圖1的半色調(diào)生成器110使用或用于圖5的方法。
例如示出圖7,并且其他格式可以用于存儲電子數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)值。例如,電子數(shù)據(jù)結(jié)構(gòu)700的緊湊表示可以可替換地包括:三維半色調(diào)閾值矩陣的寬度、深度和高度的定義;用于穿過矩陣的指示順序;以及包括閾值的數(shù)據(jù)值710的序列。在這種情況中,多個坐標720可以不被明確編碼;這些將通過其他指示的參數(shù)進行隱式編碼。
圖8示出可以使用本文所述的實例生產(chǎn)的三維半色調(diào)矩陣800的模擬的示例圖形輸出。例如,三維半色調(diào)矩陣可以包括圖1中的三維閾值矩陣150的版本。示例矩陣800包括兩個不同結(jié)構(gòu)的融合體或混合體。第一結(jié)構(gòu)包括分布在三維上的二維藍噪聲半色調(diào)矩陣。第二結(jié)構(gòu)包括三維定義的藍噪聲作為種子的有機晶格(hart10-3)。兩個結(jié)構(gòu)中的每個由相應的三維半色調(diào)閾值矩陣定義。示例矩陣800具有沿對角線[0,0,0]至[100,100,100]使用立方距離函數(shù)的過渡,并且使用權(quán)重凸組合混合度量。例如,如圖8中810所示,在坐標[0,0,0]處,第一結(jié)構(gòu)具有100%的概率,并且第二結(jié)構(gòu)具有0%的概率。然后,如圖8中820所示,在[100,100,100]處,第二結(jié)構(gòu)具有100%的概率,并且第一結(jié)構(gòu)具有0%的概率。在圖形輸出的頂部看到的較暗線性部分可以被認為產(chǎn)生自第二結(jié)構(gòu),并且圖形輸出的彌漫性噪聲類部分可以被認為產(chǎn)生自第一結(jié)構(gòu)820。
可以經(jīng)由可存儲在非暫時性存儲介質(zhì)上的計算機程序代碼來實現(xiàn)本文描述的某些系統(tǒng)部件和方法。計算機程序代碼可以由包括能夠從計算機可讀存儲介質(zhì)找回數(shù)據(jù)的至少一個處理器的控制系統(tǒng)來實施??刂葡到y(tǒng)可以包括比如增材制造系統(tǒng)的物體生產(chǎn)系統(tǒng)的部分。計算機可讀存儲介質(zhì)可以包括存儲在其上的計算機可讀指令的集合。至少一個處理器可以被配置為將指令加載到存儲器中用于處理。指令被布置來使得至少一個處理器實施一系列動作。指令可以指示圖5的方法500和/或本文所述的任何其他框或過程。非暫時性存儲介質(zhì)可以是可以包含、存儲或維護供指令執(zhí)行系統(tǒng)使用或與指令執(zhí)行系統(tǒng)結(jié)合使用的程序和數(shù)據(jù)的任何介質(zhì)。機器可讀介質(zhì)可以包括許多物理介質(zhì)中的任一種,比如,例如電子介質(zhì)、磁性介質(zhì)、光學介質(zhì)、電磁介質(zhì)或半導體介質(zhì)。合適的機器可讀介質(zhì)的更具體的實例包括但不限于硬盤驅(qū)動器、隨機訪問存儲器(ram)、只讀存儲器(rom)、可擦除可編程只讀存儲器或便攜式盤。
本文描述的某些實例使得能夠進行三維物體的數(shù)字表示,例如,三維柵格表示,用來以生成三維物體內(nèi)的多個結(jié)構(gòu)的混合體或融合體的方式進行半色調(diào),其中該混合體或融合體可被視為“平滑的”,即不連續(xù)性可低于指定閾值。這以最小化不連續(xù)性(例如,在物體的不同部分或體積之間,構(gòu)造上的突然變化)的方式得到具有變化的結(jié)構(gòu)屬性的三維物體。這通過提供用于生成可應用于數(shù)字表示的三維閾值矩陣的裝置和方法來實現(xiàn)。獲得結(jié)構(gòu)體積覆蓋表示,其包括針對三維物體的至少一個體積元素定義至少兩個不同結(jié)構(gòu)表示的概率分布的數(shù)據(jù)值。結(jié)構(gòu)體積覆蓋表示可以基于在三維物體的至少兩個另外的體積元素的位置之間預定義的過渡函數(shù)?;诮Y(jié)構(gòu)體積覆蓋表示的所述數(shù)據(jù)值中的至少一個,針對至少一個體積元素確定至少兩個結(jié)構(gòu)表示的凸組合。基于確定的凸組合,將半色調(diào)值分配給三維矩陣的至少一個相應的體積元素。半色調(diào)值可以指示包括所述結(jié)構(gòu)表示中的一個的至少一部分的計算結(jié)構(gòu)。通過使用結(jié)構(gòu)體積覆蓋表示,可以在半色調(diào)水平上應用適用于任何任意數(shù)量的預定義結(jié)構(gòu)的單個機構(gòu),而無需可能計算上昂貴的子結(jié)構(gòu)的設計階段修改。
某些實例還使得結(jié)構(gòu)控制能夠以計算有效且可以并行化的方式應用于三維物體的生成。通過使用結(jié)構(gòu)體積覆蓋表示,可以將單個半色調(diào)結(jié)構(gòu)標簽應用于物體的不同部分以提供結(jié)構(gòu)屬性的有效編碼。通過使用本文所述的某些實例,該編碼進一步使得能夠以連續(xù)的方式控制材料結(jié)構(gòu)。例如,物體的一部分可以包括分布在三維上的二維藍噪聲半色調(diào)矩陣,并且物體的另一部分可以包括三維定義的藍噪聲作為種子的有機晶格;因此,本發(fā)明描述的實例可以用于提供物體中的兩個不同結(jié)構(gòu)之間的過渡。在某些實例中,通過定義梯度或過渡函數(shù)來實現(xiàn)兩種不同結(jié)構(gòu)的融合,該梯度或過渡函數(shù)可以被定義為要生產(chǎn)的物體(和/或所述物體的部分)的輸入。在某些實例中,梯度或過渡函數(shù)用于定義結(jié)構(gòu)體積覆蓋表示,然后可以在類似于半色調(diào)的操作中處理該結(jié)構(gòu)體積覆蓋表示,以生成用于半色調(diào)與物體相關(guān)聯(lián)的材料使用值的三維閾值矩陣。通過這樣做,融合幾何形狀(例如,如凸組合計算定義的)可以與梯度幾何形狀分離,例如,如從過渡函數(shù)生成的結(jié)構(gòu)體積覆蓋矢量中所表示的?;陬A定義構(gòu)成結(jié)構(gòu)的凸組合獲得的融合結(jié)構(gòu)可以表現(xiàn)出結(jié)構(gòu)上連續(xù)的效果,即融合結(jié)構(gòu)不僅在物體尺度上,而且在單獨印刷的體素的水平上可以不同于任何構(gòu)成結(jié)構(gòu)。
本文描述的某些實例使得能夠用明確控制的多個結(jié)構(gòu)的融合來生產(chǎn)三維物體。所描述的實例修改了用于生產(chǎn)三維物體的半色調(diào)輸出,例如,在增材制造系統(tǒng)中,通過使用基于半色調(diào)的結(jié)構(gòu)控制機構(gòu)。盡管在某些情況中為了便于解釋,描述了使用單一生產(chǎn)材料,但是本文所述的實施例可以擴展到多材料,例如,用多種生產(chǎn)材料,包括生產(chǎn)材料的組合。
已經(jīng)提出了前述描述以說明和描述所述原理的實例。該描述不是旨在是詳盡的或?qū)⑦@些原理限制于所公開的任何精確的形式。鑒于上述教導,許多修改和變化是可能的。關(guān)于一個實例描述的技術(shù)、功能和途徑可以用在其他描述的實例中(例如,通過應用該公開的相關(guān)部分)。