两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

立體形狀顯示程序、立體形狀顯示方法及立體形狀顯示裝置的制作方法

文檔序號:6435383閱讀:171來源:國知局

專利名稱::立體形狀顯示程序、立體形狀顯示方法及立體形狀顯示裝置的制作方法
技術(shù)領(lǐng)域
:本發(fā)明涉及將物體的形狀進行立體顯示的立體形狀顯示程序、立體形狀顯示方法及立體形狀顯示裝置,特別是涉及根據(jù)被壓縮的數(shù)據(jù)、再現(xiàn)原來的形狀的立體形狀顯示程序、立體形狀顯示方法及立體形狀顯示裝置。
背景技術(shù)
:近年來,將各種部件用三維CAD(計算機輔助設(shè)計)進行立體表現(xiàn)的情況已很普遍。例如,用三維CAD數(shù)據(jù)來表現(xiàn)構(gòu)成復(fù)雜結(jié)構(gòu)的裝置的各部件。這樣,可以在計算機上很容易地進行各個部件的CAD數(shù)據(jù)(實體模型)的集結(jié),安裝設(shè)計、布局設(shè)計、干擾設(shè)計等的工作。這樣的工作被稱為數(shù)字仿真,被普遍使用在以汽車及飛機產(chǎn)業(yè)為中心的領(lǐng)域中。一般來講,在實體CAD數(shù)據(jù)中采用以高精度的幾何和相位所表示的精確的表現(xiàn)(PreciseRepresentation)。實體CAD數(shù)據(jù)以精確的表現(xiàn)為基準(zhǔn),具有參數(shù)變形用的約束條件及形狀生成履歷。并且,實體CAD數(shù)據(jù)也具有進行快速顯示用的顯示數(shù)據(jù)。因而,實體CAD處理的信息量很多,在將部件進行集結(jié)、制造數(shù)字仿真模型時,數(shù)據(jù)量變得非常龐大。當(dāng)實體CAD的數(shù)據(jù)量龐大時,即使在不進行數(shù)據(jù)編輯、而只顯示立體形狀的情況下,也要進行龐大量的數(shù)據(jù)的處理。作為其解決策略,在汽車及飛機產(chǎn)業(yè)中,將CAD數(shù)據(jù)轉(zhuǎn)換為顯示用多邊形數(shù)據(jù)(例如,VRML(虛擬仿真模型語言VirtualRealityModelingLanguage)的數(shù)據(jù)),采用數(shù)字仿真模型專用的瀏覽器(Viewer)來顯示該顯示用多邊形數(shù)據(jù)。通過采用顯示用多邊形數(shù)據(jù)來顯示畫面,形狀的確認工作變得容易。但是,最近的CAD數(shù)據(jù)的具體化(因更細致的定義而使數(shù)據(jù)量增加)超過了硬件及軟件的進化,即使用專用的瀏覽器來處理整個產(chǎn)品也變?yōu)楹芾щy。例如,在以0.1mm的誤差將表示汽車的發(fā)動機的結(jié)構(gòu)的CAD數(shù)據(jù)轉(zhuǎn)換為顯示用多邊形數(shù)據(jù)的情況下,數(shù)據(jù)量將達到0.5~1Gbyte。由于只表示發(fā)動機就用了0.5~1Gbyte,所以由此可推斷,表示1臺汽車的合計數(shù)據(jù)量將達到10Gbyte以上。因此,在使用瀏覽器的計算機中,有必要配置儲存顯示用多邊形數(shù)據(jù)的大容量的存儲器及硬盤裝置。因此,需要考慮將顯示用的立體形狀的數(shù)據(jù)進行壓縮的技術(shù)。作為立體形狀的壓縮表現(xiàn),有采用B’ezier的三角修補及Gregory修補(Lattice=XVL)等的方法,可以減少硬盤裝置所儲存的數(shù)據(jù)容量,但在存儲器讀取數(shù)據(jù)時,為了展開為多邊形而不能削減存儲器容量。另一方面,在將被壓縮的立體形狀按原樣保存在存儲器中并根據(jù)顯示倍率將多邊形再分割的方法中,有細分(Subdivision)法。細分法適用的理由是因為在畫面放大時,很多部件在視野(畫面)外的概率很高,采用ViewFrustumCulling(省略視野外的物體的方法),可以將所省略的CPU(CentralProcessingUnit)資源分配給多邊形的再分割計算。作為細分法的一例,有在美國專利6,222,553號公報上所記載的發(fā)明。在該發(fā)明中,是采用NURBS(Non-UniformRationalB-Splines)曲線等的控制點來表現(xiàn)的。并且,通過從一個形狀的中間點向其形狀的各邊所引的線來將原來的形狀進行分割。但是,以往的細分法不能減少存儲器及文件容量,多邊形的再分割計算的計算機的處理負荷會大幅度地增加。而且,以往的細分法的數(shù)據(jù)壓縮效果,在采用Web等在遠距離之間進行大規(guī)模數(shù)據(jù)合作方面還不理想。例如,在美國專利6,222,553號公報上所記載的發(fā)明中,為了用從某個中間點向各邊的引線來分割該形狀,即使包含沒有必要進行分割的邊(例如直線的邊),也會將所有的邊進行分割。這樣,會產(chǎn)生不必要的分割的情況,導(dǎo)致處理負荷的增大。而且,NURBS曲線等的控制點必須對每個邊個別地進行設(shè)定,這成為數(shù)據(jù)量增大的原因。
發(fā)明內(nèi)容本發(fā)明是鑒于這一情況而作成的,其目的在于提供一種可以根據(jù)被壓縮的數(shù)據(jù)高速地顯示立體形狀的立體形狀顯示程序、立體形狀顯示方法及立體形狀顯示裝置。為了解決上述問題,本發(fā)明的第1方式提供了一種使計算機執(zhí)行將圖1所示的物體的形狀進行立體顯示的處理的立體形狀顯示程序。執(zhí)行本發(fā)明的立體形狀顯示程序的計算機,首先根據(jù)至少在一個面上定義了立體形狀的立體形狀數(shù)據(jù)2,決定構(gòu)成立體形狀的面的分割模型(步驟S2)。同時,計算機根據(jù)立體形狀數(shù)據(jù)2預(yù)先所定義的面的頂點的位置和該頂點的法線方向,決定面的曲面形狀(步驟S3)。接下來,計算機根據(jù)所決定的分割模型來分割被決定的曲面形狀,生成沿曲面形狀的多個面(步驟S4)。然后,計算機將由所生成的多個面所構(gòu)成的立體形狀進行顯示(步驟S5)。通過用任意的計算機來執(zhí)行這樣的立體形狀顯示程序,能夠決定適合構(gòu)成立體形狀數(shù)據(jù)2的面所定義的法線方向等的曲面形狀,將該曲面形狀分割為多個面。并且,能夠?qū)⒂杀环指畹拿嫠鶚?gòu)成的立體形狀進行顯示。本發(fā)明的第2方式提供一種立體形狀顯示方法,用于對物體的形狀進行立體顯示,其特征在于,使計算機執(zhí)行如下的處理,即根據(jù)在至少一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成所述立體形狀的所述面的分割模型,并且根據(jù)在所述立體形狀數(shù)據(jù)中被預(yù)先定義的所述面的頂點的位置和該頂點的法線方向,決定所述面的曲面形狀,根據(jù)所決定的所述分割模型來分割被決定的所述曲面形狀,生成沿所述曲面形狀的多個面,顯示由生成的所述多個面構(gòu)成的立體形狀。根據(jù)這樣的立體形狀顯示方法,能夠決定適合構(gòu)成立體形狀數(shù)據(jù)的面所定義的法線方向等的曲面形狀,并將該曲面形狀分割為多個面。并且,能夠?qū)⒂杀环指畹拿嫠鶚?gòu)成的立體形狀進行顯示。本發(fā)明的第3方式提供一種立體形狀顯示裝置,用于將物體的形狀進行立體顯示,其特征在于,具有根據(jù)在至少一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成所述立體形狀的所述面的分割模型的分割模型決定單元;根據(jù)在所述立體形狀數(shù)據(jù)中被預(yù)先定義的所述面的頂點的位置和該頂點的法線方向,決定所述面的曲面形狀的曲面形狀決定單元;根據(jù)由所述分割模型決定單元所決定的所述分割模型來分割由所述曲面形狀決定單元所決定的所述曲面形狀,生成沿所述曲面形狀的多個面的面生成單元;和顯示由利用所述面生成單元生成的所述多個面構(gòu)成的立體形狀的顯示單元。根據(jù)這樣的立體形狀顯示裝置,通過分割模型決定裝置,根據(jù)至少在一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成立體形狀的面的分割模型。另外,通過曲面形狀決定裝置,根據(jù)由立體形狀數(shù)據(jù)預(yù)先所定義的面的頂點的位置和該頂點的法線方向,決定面的曲面形狀。然后,根據(jù)所述分割模型決定裝置所決定的所述分割模型,將由面生成裝置和曲面形狀決定裝置所決定的曲面形狀進行分割,生成沿曲面形狀的多個面。并且,通過顯示裝置,將由面生成裝置所生成的多個面所構(gòu)成的立體形狀進行顯示。關(guān)于上述的本發(fā)明以及本發(fā)明的其他的目的、特征及優(yōu)點,通過對作為本發(fā)明實施例的理想的實施方式結(jié)合附圖進行以下的說明,可以進一步加深理解。圖1為應(yīng)用于本實施方式的發(fā)明的概念圖。圖2為本發(fā)明的實施方式的系統(tǒng)結(jié)構(gòu)圖。圖3為表示本發(fā)明的實施方式所采用的計算機的硬件結(jié)構(gòu)例的圖。圖4為表示本發(fā)明的實施方式的功能的功能方框圖。圖5為表示立體結(jié)構(gòu)數(shù)據(jù)存儲部的內(nèi)部結(jié)構(gòu)的圖。圖6為表示物體信息的數(shù)據(jù)結(jié)構(gòu)的一例的圖。圖7為表示立體形狀的一例的圖。圖7(A)和圖7(B)為立體形狀的立體圖。圖8為表示物體信息的具體例的圖。圖9為表示立體形狀顯示順序的第1流程圖。圖10為表示立體形狀顯示順序的第2流程圖。圖11為表示立體形狀顯示順序的第3流程圖。圖12為表示空間曲線的折線近似例的圖。圖13為表示圖形的分割例的圖。圖14為表示3邊形的分割模型的種類的圖。圖15為表示3邊形分割模型決定處理的順序的流程圖。圖16為表示4邊形的分割模型的種類的圖。圖17為表示4邊形分割模型決定處理的順序的流程圖。圖18為表示鄰接的面彼此之間平滑連接的立體形狀的一例的圖。圖19為表示采用了2次微分矢量所決定的參數(shù)3次式的一例的圖。圖20為表示鄰接的面彼此之間共有的邊為曲折的立體形狀的一例的圖。圖21為表示強制地指示邊的形狀的立體形狀的一例的圖。圖22為表示分割對象的面的一例的圖。圖23為表示包含被分割的3邊形的立體形狀的一例的圖。圖24為表示被分割的3邊形的一例的圖。圖25為表示被分割的4邊形的一例的圖。圖26為表示顯示了由混合網(wǎng)格數(shù)據(jù)所定義的立體形狀的邊的畫面的一例的圖。圖27為表示顯示了由混合網(wǎng)格數(shù)據(jù)所定義的立體形狀的畫面的一例的圖。圖28為表示顯示了再分割混合網(wǎng)格數(shù)據(jù)時的立體形狀的邊的畫面的一例的圖。圖29為表示顯示了再分割混合網(wǎng)格數(shù)據(jù)時的立體形狀的畫面的一例的圖。圖30為表示汽車的立體形狀的顯示畫面的一例的圖。具體實施例方式下面,參照附圖對本發(fā)明的實施方式進行說明。首先,對應(yīng)用于本發(fā)明的實施方式的發(fā)明的概要進行說明,然后,對本發(fā)明的實施方式的具體的內(nèi)容進行說明。圖1為應(yīng)用于本實施方式的發(fā)明的概念圖。本發(fā)明為使計算機執(zhí)行將物體的形狀進行立體顯示的處理的立體形狀顯示程序。根據(jù)該立體形狀顯示程序,計算機執(zhí)行圖1所示的處理。計算機進行CAD數(shù)據(jù)1的數(shù)據(jù)壓縮,生成被壓縮的立體形狀數(shù)據(jù)2。立體形狀數(shù)據(jù)2為將定義CAD數(shù)據(jù)1的形狀的數(shù)據(jù)進行了壓縮的數(shù)據(jù)。通過數(shù)據(jù)壓縮,如復(fù)雜的曲面形狀可以置換為簡單形狀的多個面。然后,計算機根據(jù)立體形狀數(shù)據(jù)2,決定構(gòu)成立體形狀的面的分割模型(步驟S2)。例如,決定構(gòu)成面的邊的分割數(shù),決定適合各邊的分割數(shù)的面的分割模型。另外,計算機根據(jù)在立體形狀數(shù)據(jù)2中預(yù)先定義的面的頂點的位置和該頂點的法線方向,來決定面的曲面形狀(步驟S3)。例如,使與法線方向垂直的方向成為曲面形狀的切線來決定曲面形狀。另外,法線方向一般是利用法線矢量(單位矢量)來定義。接下來,計算機根據(jù)所決定的分割模型將被決定的曲面形狀進行分割,生成沿著曲面形狀的多個面(步驟S4)。并且,計算機將由所生成的多個面所構(gòu)成的立體形狀進行顯示(步驟S5)。通過任意的計算機來執(zhí)行這樣的立體形狀顯示程序,來決定適合由構(gòu)成立體形狀數(shù)據(jù)2的面所定義的法線方向等的曲面形狀,并將該曲面形狀分割為多個面。然后,顯示由所分割的面構(gòu)成的立體形狀。這樣,可以用較少的數(shù)據(jù)量的立體形狀數(shù)據(jù)2來存儲由原來的CAD數(shù)據(jù)1所定義的立體形狀。并且,根據(jù)立體形狀數(shù)據(jù)2,能夠以很少的誤差再現(xiàn)CAD數(shù)據(jù)1所定義的形狀。而且,在立體形狀數(shù)據(jù)2中,設(shè)定有構(gòu)成立體形狀的面的頂點坐標(biāo)和法線方向。法線方向例如利用法線矢量來定義。該法線矢量為在對用于進行實際的畫面顯示的陰影及光的反射等的計算中所必要的信息。在本發(fā)明中,由于根據(jù)立體形狀數(shù)據(jù)2的狀態(tài)來定義法線方向,因而可以將立體形狀數(shù)據(jù)2自身看成為一個多邊形模型,按原樣實際(例如采用陰影顯示)進行畫面顯示。這樣,根據(jù)狀況,計算機可以判斷是否進行面的分割,適宜地切換不進行面的分割的高速顯示和進行面分割的高精度的顯示。另外,如前面所述的美國專利6,222,553號公報所記載的發(fā)明所代表的那樣,以往的根據(jù)Subdivision法所壓縮的很多的數(shù)據(jù),在面的分割中不利用法線方向的信息(法線矢量)。因此,如果在被壓縮的數(shù)據(jù)內(nèi)包含有法線矢量,則在面的分割時會有多余的不必要的數(shù)據(jù),導(dǎo)致數(shù)據(jù)容量的增加。另外,通過根據(jù)法線方向來決定曲面狀況,可減少為了再現(xiàn)原來的立體形狀的必要的數(shù)據(jù)量。即、在平滑連接的兩個面中,在幾乎所有的情況下,在該邊界的邊的端點中可以共享法線方向的定義信息(法線矢量)。因此,可以削減作為立體形狀數(shù)據(jù)2整體的數(shù)據(jù)量。還有,在本發(fā)明中,由于也可以對立體形狀數(shù)據(jù)2所定義的每個面進行分割,所以通過將所分割的面的多邊形依次發(fā)送到三維顯示電路,可以顯示面分割后的高精度的立體形狀。這樣,在計算機的主存儲器上可以不需要保存定義了面分割后的立體形狀的所有的數(shù)據(jù),可以減少所需的存儲容量。還有,在決定分割模型時,通過先決定邊的分割數(shù),并根據(jù)該邊的分割數(shù)來進行面的分割,可以避免浪費地進行面的分割。例如,可通過不進行直線的邊的分割而將由曲線所定義的邊分為多個,進行面的分割。其結(jié)果,可以降低處理負荷,實現(xiàn)顯示處理的高速化。下面,對本發(fā)明的實施方式進行具體的說明。另外,在以下的實施方式中,在被壓縮的立體形狀數(shù)據(jù)中,可以將由3個邊所構(gòu)成的面(FACE)和由4個邊所構(gòu)成的面混合在一起。因此,以下將由在本發(fā)明中所定義的形式的結(jié)構(gòu)所壓縮的數(shù)據(jù)稱為混合網(wǎng)格數(shù)據(jù)(混合的網(wǎng)格)。另外,構(gòu)成立體形狀的面的頂點的位置,也可以為構(gòu)成各面的邊的端點。因此,在以下的實施方式中,將面的頂點的位置稱為端點。圖2為本發(fā)明的實施方式的系統(tǒng)結(jié)構(gòu)圖。如圖2所示,多個計算機100、100a、100b通過網(wǎng)絡(luò)10相連接。網(wǎng)絡(luò)10例如為公司內(nèi)的LAN(局域網(wǎng)LocalAreaNetwork)及互聯(lián)網(wǎng)。在各計算機100、100a、100b上安裝有三維CAD程序,利用計算機100、100a、100b可以生成各種部件等的CAD數(shù)據(jù)(實體模型)。另外,在各計算機100、100a、100b上安裝有本發(fā)明的三維CAD數(shù)據(jù)的瀏覽器。通過在計算機100、100a、100b上使用瀏覽器,可以進行基于CAD數(shù)據(jù)的高壓縮率的壓縮保存及被壓縮的數(shù)據(jù)的三維模型的畫面顯示。另外,通過將被壓縮的數(shù)據(jù)通過網(wǎng)絡(luò)10在各計算機100、100a、100b之間進行發(fā)送和接收,可以進行使用CAD的合作設(shè)計(合作)。下面,對由計算機100實施本發(fā)明的實施方式進行詳細說明。圖3為表示本發(fā)明的實施方式所采用的計算機的硬件的結(jié)構(gòu)的一例的圖。計算機100通過CPU101來控制整體裝置。通過總線107,使RAM(RandomAccessMemory)102、硬盤驅(qū)動器(HDDHardDiskDrive)103、顯示處理裝置104、輸入接口105及通信接口106與CPU101相連接。在RAM102內(nèi)至少暫時儲存有使CPU101執(zhí)行的OS(操作系統(tǒng)OperatingSystem)的程序及應(yīng)用程序中的一部分。另外,在RAM102中儲存有在CPU101的處理時所必需的各種數(shù)據(jù)。在HDD103中儲存有OS及應(yīng)用程序。在顯示處理裝置104中內(nèi)置有三維顯示電路,與監(jiān)視器1相連接。顯示處理裝置104根據(jù)來自CPU101的指令,生成基于三維的坐標(biāo)數(shù)據(jù)(多邊形數(shù)據(jù)等)的圖像,并將該圖像顯示到監(jiān)視器11的畫面上。鍵盤12和鼠標(biāo)13與輸入接口105相連接。輸入接口105通過總線107,將由鍵盤12和鼠標(biāo)13發(fā)送來的信號傳送給CPU101。通信接口106與網(wǎng)絡(luò)10相連接。通信接口106通過網(wǎng)絡(luò)10在和其他的計算機之間進行數(shù)據(jù)收發(fā)。根據(jù)以上的硬件結(jié)構(gòu),可以實現(xiàn)本實施方式的處理功能。圖4為表示本發(fā)明的實施方式的功能的功能方框圖。計算機100具有瀏覽器110、瀏覽器應(yīng)用部130、三維顯示用API(應(yīng)用程序接口ApplicationProgramInterface)140、OSAPI150。瀏覽器110用于轉(zhuǎn)換表示立體形狀的數(shù)據(jù)的數(shù)據(jù)形式,壓縮數(shù)據(jù)容量。例如,將VRML數(shù)據(jù)31及CAD數(shù)據(jù)32轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)。另外,瀏覽器110根據(jù)混合網(wǎng)格數(shù)據(jù)、以規(guī)定的誤差再現(xiàn)立體形狀。被再現(xiàn)的立體形狀為由多個多邊形構(gòu)成的多邊形模型。關(guān)于瀏覽器110內(nèi)的結(jié)構(gòu)的詳細情況,在后面進行敘述。瀏覽器應(yīng)用部130具有配合瀏覽器110來支持使用CAD的設(shè)計操作的附加功能。在圖4的例中,瀏覽器應(yīng)用部130作為附加功能,具有干擾檢查部131、計測部132、分解圖生成部133、插圖生成部134等。干擾檢查部131根據(jù)由瀏覽器110所提供的立體形狀數(shù)據(jù),檢查在部件之間有無干擾。計測部132根據(jù)由瀏覽器110所提供的立體形狀數(shù)據(jù),計算任意的兩個點之間的距離。分解圖生成部133根據(jù)由瀏覽器110所提供的立體形狀數(shù)據(jù),生成立體形狀的分解圖。插圖生成部134根據(jù)由瀏覽器110所提供的立體形狀數(shù)據(jù),生成立體形狀的插像。三維顯示用API140為瀏覽器110等的各種處理功能和進行三維顯示的顯示處理裝置104之間的接口。具體來講,三維顯示用API140根據(jù)由瀏覽器110所提供的多邊形等的信息,生成計算機100的三維顯示處理要求,使計算機100執(zhí)行該三維顯示處理要求。例如,三維顯示用API140將由瀏覽器110所提供的多邊形的端點坐標(biāo)及顏色等的信息和顯示指令一起提交給圖3所示的顯示處理裝置104。于是,顯示處理裝置104進行各多邊形的透視投影等,生成表示由多個多邊形所構(gòu)成的立體形狀的圖像(畫面圖像)。然后,在規(guī)定周期內(nèi)將在顯示處理裝置104中生成的圖像的數(shù)據(jù)發(fā)送給監(jiān)視器11,并將表示立體形狀的圖像顯示到監(jiān)視器11的畫面上。作為三維顯示用API140,例如可以采用OpenGL(商標(biāo))。OSAPI150為在OS和其他的處理功能單元之間的接口。具體來講,OSAPI150啟動與由瀏覽器110等所輸出的處理要求相對應(yīng)的OS的處理功能,使計算機100執(zhí)行處理。下面,對瀏覽器110的內(nèi)部結(jié)構(gòu)進行說明。瀏覽器110具有應(yīng)用接口111、混合網(wǎng)格API112、VRML數(shù)據(jù)轉(zhuǎn)換部113、CAD數(shù)據(jù)轉(zhuǎn)換部114、用戶接口115、再分割部116、顯示數(shù)據(jù)輸出部117及立體結(jié)構(gòu)數(shù)據(jù)存儲部120。應(yīng)用接口111為和瀏覽器應(yīng)用部130之間的接口。具體來講,應(yīng)用接口111將通過混合網(wǎng)格API112所接收的立體結(jié)構(gòu)數(shù)據(jù)(模型數(shù)據(jù))提交給瀏覽器應(yīng)用部130內(nèi)的干擾檢查部131等。另外,應(yīng)用接口111將從瀏覽器應(yīng)用部130內(nèi)的干擾檢查部131等所接收的立體結(jié)構(gòu)數(shù)據(jù)提交給混合網(wǎng)格API112?;旌暇W(wǎng)格API112為對應(yīng)用接口111提供對立體結(jié)構(gòu)數(shù)據(jù)存儲部120的訪問環(huán)境的接口。具體來講,混合網(wǎng)格API112根據(jù)通過了應(yīng)用接口111的要求,將立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)的混合網(wǎng)格數(shù)據(jù)的一部分(或全部)的數(shù)據(jù)提交給應(yīng)用接口111。另外,混合網(wǎng)格API112將通過應(yīng)用接口111所接收的數(shù)據(jù)作為混合網(wǎng)格數(shù)據(jù)的一部分(或全部),儲存到立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)。VRML數(shù)據(jù)轉(zhuǎn)換部113將VRML數(shù)據(jù)31轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)。通過該轉(zhuǎn)換,表示立體形狀的數(shù)據(jù)的數(shù)據(jù)容量變小。然后,VRML數(shù)據(jù)轉(zhuǎn)換部113將轉(zhuǎn)換后的混合網(wǎng)格數(shù)據(jù)儲存到立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)。CAD數(shù)據(jù)轉(zhuǎn)換部114將CAD數(shù)據(jù)32轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)。通過該轉(zhuǎn)換,表示立體形狀的數(shù)據(jù)的數(shù)據(jù)容量變小。然后,CAD數(shù)據(jù)轉(zhuǎn)換部114將轉(zhuǎn)換后的混合網(wǎng)格數(shù)據(jù)儲存到立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)。用戶接口115配合OSAPL150,取得使用鍵盤12及鼠標(biāo)13輸入的信息。然后,用戶接口115響應(yīng)操作輸入,對瀏覽器110內(nèi)的各構(gòu)成要素發(fā)出處理要求或提交數(shù)據(jù)。例如,用戶接口115將由操作輸入所指定的顯示倍率116a及容許誤差116b提交給再分割部116。另外,用戶接口115在投影顯示對象的物體的視點和立體形狀的相對位置的移動指示被輸入的情況(在顯示畫面內(nèi)立體形狀移動的情況)下,將正在移動的情況通知再分割部116。再分割部116將混合網(wǎng)格數(shù)據(jù)進行再分割。即、再分割部116將構(gòu)成由比CAD數(shù)據(jù)32粗糙的結(jié)構(gòu)所表現(xiàn)的混合網(wǎng)格數(shù)據(jù)的面(FACE)進行分割,接近原來的CAD數(shù)據(jù)32的形狀。并且,再分割部116在每次進行面的分割時,將分割后的面的信息提交給顯示數(shù)據(jù)輸出部117。另外,再分割部116作為決定混合網(wǎng)格數(shù)據(jù)的面的分割數(shù)的參數(shù),具有顯示倍率116a及容許誤差116b。顯示倍率116a為由混合網(wǎng)格數(shù)據(jù)所定義的立體形狀的畫面顯示上的顯示倍率。容許誤差116b為在將根據(jù)混合網(wǎng)格數(shù)據(jù)所定義的立體形狀(由曲面所構(gòu)成的形狀)用平面的多邊形來表示的情況下所發(fā)生的形狀誤差的最大值。再分割部116的顯示倍率116a越大,則多邊形的分割數(shù)越多,顯示倍率116a越小,則多邊形的分割數(shù)越少。另外,再分割部116的容許誤差116b越大,則多邊形的分割數(shù)越少,容許誤差116b越小,則多邊形的分割數(shù)越多。顯示數(shù)據(jù)輸出部117將再分割部116所分割后的多邊形的信息輸出給三維顯示用API140。立體結(jié)構(gòu)數(shù)據(jù)存儲部120為存儲顯示對象的模型(例如汽車)的立體結(jié)構(gòu)(部件的立體形狀的組合)的數(shù)據(jù)的RAM102內(nèi)的存儲區(qū)域。立體結(jié)構(gòu)的數(shù)據(jù)主要是由表示每個顯示對象模型的構(gòu)成要素(例如汽車的部件)的立體形狀的混合網(wǎng)格數(shù)據(jù)形成。該混合網(wǎng)格數(shù)據(jù)是由VRML數(shù)據(jù)轉(zhuǎn)換部113及CAD數(shù)據(jù)轉(zhuǎn)換部114所生成。另外,混合網(wǎng)格數(shù)據(jù)也有從HDD103內(nèi)的混合網(wǎng)格文件33中讀取的情況。在混合網(wǎng)格數(shù)據(jù)中可以將每個構(gòu)成立體形狀的面的形狀信息進行定義,將面單位的信息看作為多邊形,按原樣提交給三維顯示用API140來進行畫面顯示。另外,在混合網(wǎng)格數(shù)據(jù)中包含有分割各面所必需的信息(基底分割數(shù)等)。下面,對立體結(jié)構(gòu)數(shù)據(jù)存儲部120的數(shù)據(jù)結(jié)構(gòu)的詳細情況進行說明。圖5為表示立體結(jié)構(gòu)數(shù)據(jù)存儲部的內(nèi)部結(jié)構(gòu)的圖。立體結(jié)構(gòu)數(shù)據(jù)存儲部120具有多個混合網(wǎng)格數(shù)據(jù)200、200a、200b…和物體配置信息300?;旌暇W(wǎng)格數(shù)據(jù)200、200a、200b…為定義了每個構(gòu)成顯示對象物的部件(物體)的形狀的數(shù)據(jù)?;旌暇W(wǎng)格數(shù)據(jù)200、200a、200b…也有按照每個構(gòu)成顯示對象物的單元被分組的情況。在這里,所謂單元,是指由一個以上的部件所構(gòu)成的物品。如果將顯示對象物作為組件(組合部件),則單元為子組件。例如,如果顯示對象物為汽車,則發(fā)動機及懸掛體等相當(dāng)于單元。另外,一個單元也有由多個單元(各單元具有1個以上的部件)所構(gòu)成的情況。在混合網(wǎng)格數(shù)據(jù)200中包含有物體信息210、點坐標(biāo)數(shù)據(jù)群220及矢量數(shù)據(jù)群230。物體信息210為表示各部件的立體形狀等的數(shù)據(jù)(也包括部件的顏色的信息)。物體信息210的詳細情況在后面進行敘述。點坐標(biāo)數(shù)據(jù)群220為構(gòu)成立體形狀的面的各端點的端點坐標(biāo)數(shù)據(jù)221、222、…、22i、…、22m、22n的集合。在端點坐標(biāo)數(shù)據(jù)221、222、…、22i、…、22m、22n內(nèi)設(shè)定有由x軸-y軸-z軸所表示的三維空間(局部坐標(biāo)系)內(nèi)的各軸方向的坐標(biāo)值。矢量數(shù)據(jù)群230為表示在構(gòu)成立體形狀的面的各端點所定義的法線矢量或切線矢量的矢量數(shù)據(jù)231、232、…、23i、…、23m、23n的集合。矢量數(shù)據(jù)231、232、…、23i、…、23m、23n根據(jù)x軸、y軸、z軸方向的矢量成分來表示在三維空間(局部坐標(biāo)系)內(nèi)的方向和大小。另外,在本實施方式中,作為法線矢量所指定的矢量,其所有的長度為一個單位矢量。作為切線矢量所指定的矢量,并不限于單位矢量。物體配置信息300為定義了將立體形狀配置到公共坐標(biāo)系(通用坐標(biāo)系)的情況下的配置位置及方向的信息。通過將與各立體形狀有關(guān)的配置信息進行定義,可以將構(gòu)成顯示對象物的各部件配置到公共坐標(biāo)系內(nèi),生成由多個立體形狀的組合所形成的顯示對象物的形狀。下面,對物體信息的內(nèi)容進行詳細的說明。圖6為表示物體信息的數(shù)據(jù)結(jié)構(gòu)的一例的圖。另外,在圖6中的數(shù)據(jù)名的前面所表示的箭形符號(↑),為表示該數(shù)據(jù)指示其他的數(shù)據(jù)的儲存位置的指針。物體信息210具有物體識別信息(objiectID)211、最大基底分割數(shù)(MaxDivide)212及多個面信息(Face1,…,F(xiàn)acei,…,F(xiàn)acen-1,F(xiàn)acen)410、420、430、440。物體識別信息211為專門識別對每個構(gòu)成顯示對象物的部件所作成的物體信息210的識別信息。最大基底分割數(shù)212為對構(gòu)成物體信息210的面的各邊所設(shè)定的基底分割數(shù)中的最大值。面信息410、420、430、440為構(gòu)成部件的面的信息。面信息420具有面識別信息(FaceID)421、面邊數(shù)(nP)422、面屬性(Attr)423、多個端點信息(Vertex1,Vertex2,Vertexi,…,VertexnP-1,VertexnP)424、425、426、427、428、及循環(huán)指針(↑EOF)429。面識別信息421為在物體信息210內(nèi)專門識別面信息的識別信息。面邊數(shù)422為構(gòu)成面的邊(直線或曲線)的數(shù)。面屬性423為面的顏色等的屬性信息。端點信息424、425、426、427、428為與面的端點有關(guān)的信息。循環(huán)指針429為指示最前面的端點信息424的位置的指針。通過由循環(huán)指針429指示最前面的端點信息424,使端點信息424、425、426、427、428構(gòu)成端點的排隊循環(huán)。根據(jù)連續(xù)的兩個端點信息來定義構(gòu)成面的邊。另外,將最后面的端點信息428作為和最前面的端點信息424相連續(xù)的端點信息來處理。端點信息426具有點坐標(biāo)指針(↑Point)426a、法線矢量指針(↑Normal)426b、切線定義信息(RatioorTangent)426c、基底分割數(shù)(nDevide)426d、及鄰接邊指針(↑MateEdge)426e。點坐標(biāo)指針426a在點坐標(biāo)數(shù)據(jù)群220內(nèi)的點坐標(biāo)數(shù)據(jù)221、222、…、22i、…、22m、22n當(dāng)中,為指示表示在端點的三維空間(局部坐標(biāo)系)內(nèi)的位置的坐標(biāo)數(shù)據(jù)的指針。法線矢量指針426b在矢量數(shù)據(jù)群230內(nèi)的矢量數(shù)據(jù)231、232、…、23i、…、23m、23n當(dāng)中,為指示表示端點的法線矢量的值的矢量數(shù)據(jù)的指針。切線定義信息426c為定義端點的切線矢量的信息。在切線定義信息426c內(nèi)設(shè)定有端點的切線的長度(Ratio)或指示切線矢量的指針(Tangent)中的任何一方。在根據(jù)法線矢量和邊的兩端的端點的位置可以決定切線矢量的方向的情況(邊向表示法線矢量的方向彎曲的情況)下,作為切線定義信息426c可以設(shè)定切線的長度。在根據(jù)法線矢量和邊的兩端的端點的位置不可以決定切線矢量的方向的情況(邊向和表示法線矢量的方向不同的方向彎曲的情況)下,作為切線定義信息426c可以設(shè)定對切線矢量的指針?;追指顢?shù)426d為預(yù)先設(shè)定的邊的分割數(shù)?;追指顢?shù)426d在顯示倍率為1(即不進行放大也不進行縮小)時,將分割后的誤差設(shè)定為預(yù)先決定的誤差以內(nèi)的值。鄰接邊指針426e為在共有鄰接的面和邊的情況下,指示鄰接的面所共有的邊的信息(表示邊的兩端的兩個端點信息的最前面的位置)的指針。根據(jù)鄰接邊指針426e,來定義在將鄰接的面結(jié)合起來的循環(huán)之間的面彼此之間的邊的供給關(guān)系。此外,在多個邊的端點信息426中,在點坐標(biāo)指針426a指向相同地址(點坐標(biāo)數(shù)據(jù)的位置)的情況下,表示各邊的端點為共有。另外,在共有多個邊的端點時,與各個邊的端點相對應(yīng)的端點信息426的法線矢量指針426如果指向相同的地址(法線矢量數(shù)據(jù)的位置),則共有各邊的法線矢量。這樣,在本實施方式的混合網(wǎng)格數(shù)據(jù)200、200a、200b中,在定義端點的循環(huán)和面的循環(huán)的同時,定義邊的端點的共有關(guān)系、法線矢量的共有關(guān)系、邊的共有關(guān)系。這樣,可以定義立體形狀的相位(topology)和幾何(geometry)的信息。在這里,所謂相位,為表示面、棱線、端點(頂點)等立體的邊界面的聯(lián)系情況的要素,所謂幾何,為表示曲面、曲線、點等立體的實際形狀的要素。下面,結(jié)合附圖7、附圖8對適合立體形狀的物體信息210的具體的例子進行說明。圖7為表示立體形狀的一例的圖。圖7(A)和圖7(B)為立體形狀的立體圖。圖7(A)和圖7(B)所看的方向為相反的。立體形狀500由6個面511~516構(gòu)成,具有12個邊521~532、8個端點541~548。各面511~516的面識別信息(faceID)為F1~F6。面511為曲面,其他的面512~516為平面。在這里,將對表示各端點541~548的位置的點坐標(biāo)數(shù)據(jù)的指針(點坐標(biāo)指針)定為P1~P8,將對表示各端點541~548的法線矢量的矢量數(shù)據(jù)的指針(法線矢量指針)定為N1~N8。另外,在圖7所示的端點541內(nèi),存在有兩個法線矢量551、552。這時,在表示法線矢量數(shù)據(jù)的記號后,用括弧來表示具有法線矢量551、552的面的面識別信息。即、面516所具有的法線矢量551的法線矢量指針為N1(F6),面511和面513所共有的法線矢量552的法線矢量指針為N1(F1、F3)。下面將這樣的立體形狀500的物體信息的例子進行表示。圖8為表示物體信息的具體的一例的圖。在物體信息210a中,包含有物體識別信息211a、最大基底分割數(shù)212a、及多個面信息410a、420a、430a、440a、450a、460a。面信息410a為與面識別信息「F1」的面511有關(guān)的信息。面信息420a為與面識別信息「F2」的面512有關(guān)的信息。面信息430a為與面識別信息「F3」的面513有關(guān)的信息。面信息440a為與面識別信息「F4」的面514有關(guān)的信息。面信息450a為與面識別信息「F5」的面515有關(guān)的信息。面信息460a為與面識別信息「F6」的面516有關(guān)的信息。在這里,參照面信息410a,對數(shù)據(jù)的例子進行詳細地說明。面信息410a的面識別信息(faceID)為「F1」。這樣,可以知道這是與圖7所示的面511有關(guān)的信息。另外,面邊數(shù)(nP)為4。這樣,可以知道這是由4個邊所形成的面。在面信息(Attr)內(nèi)設(shè)定有顏色信息等。在面信息410a內(nèi),設(shè)定有與4個端點541~544相對應(yīng)的端點信息。在圖8的例子中,在端點541的端點信息內(nèi),設(shè)定有點坐標(biāo)指針P1、法線矢量指針N1(F1、F3)、切線的長度(Ratio)、基底分割數(shù)「0」、及指示面513(面識別信息F3)的最前面的端點信息(F3-1)的鄰接邊指針。在端點542的端點信息內(nèi),設(shè)定有點坐標(biāo)指針P2、法線矢量指針N2(F1、F3)、切線的長度(Ratio)、基底分割數(shù)「n0-1」、及指示面514(面識別信息F4)的第4端點信息(F4-4)的鄰接邊指針。在端點543的端點信息內(nèi),設(shè)定有點坐標(biāo)指針P3、法線矢量指針N3(F1)、切線的長度(Ratio)、基底分割數(shù)「0」、及指示面515(面識別信息F5)的第4端點信息(F5-4)的鄰接邊指針。在端點544的端點信息內(nèi),設(shè)定有點坐標(biāo)指針P4、法線矢量指針N4(F1)、切線的長度(Ratio)、基底分割數(shù)「n0-1」、及指示面516(面識別信息F6)的最前面的端點信息(F6-1)的鄰接邊指針。循環(huán)指針指示最前面的端點信息。通過具有以上的功能結(jié)構(gòu)及數(shù)據(jù)結(jié)構(gòu)的計算機來進行立體形狀的顯示。下面,對立體形狀的顯示方法進行詳細的說明。圖9為表示立體形狀顯示順序的第1流程圖。下面,根據(jù)步驟編號來對圖9所示的處理進行說明。「步驟S11」計算機100根據(jù)來自用戶的操作輸入等的指示,生成由混合網(wǎng)格數(shù)據(jù)所構(gòu)成的立體形狀數(shù)據(jù)。例如,VRML數(shù)據(jù)轉(zhuǎn)換部113解析由VRML數(shù)據(jù)31所定義的部件的立體形狀,并將每個部件的立體形狀數(shù)據(jù)轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)。另外,CAD數(shù)據(jù)轉(zhuǎn)換部114解析由CAD數(shù)據(jù)32所定義的部件的立體形狀,并將每個部件的立體形狀數(shù)據(jù)轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)。所生成的混合網(wǎng)格數(shù)據(jù)對減少了由原來的VRML數(shù)據(jù)31所定義的立體形狀面的數(shù)量的立體形狀進行定義。這樣,通過該處理,數(shù)據(jù)容量被壓縮(數(shù)據(jù)容量減少)?!覆襟ES12」VRML數(shù)據(jù)轉(zhuǎn)換部113或CAD數(shù)據(jù)轉(zhuǎn)換部114將通過數(shù)據(jù)轉(zhuǎn)換所生成的混合網(wǎng)格數(shù)據(jù)儲存到內(nèi)部的RAM102內(nèi)的立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)。另外,RAM120所儲存的混合網(wǎng)格數(shù)據(jù),可以寫入混合網(wǎng)格文件33內(nèi)。另外,也可以從混合網(wǎng)格文件33中取出混合網(wǎng)格數(shù)據(jù),儲存到RAM102內(nèi)的立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)?!覆襟ES13」用戶接口115根據(jù)來自用戶的、對鍵盤12等的操作輸入,取得畫面的顯示倍率和容許誤差。然后,用戶接口115將顯示倍率和容許誤差提交給再分割部116?!覆襟ES14」再分割部116選擇一個立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)的物體。以下,對所選擇的物體,進行步驟S15~步驟S37的處理?!覆襟ES15」再分割部116從立體結(jié)構(gòu)數(shù)據(jù)存儲部120中取出在步驟S14所選擇的物體的混合網(wǎng)格數(shù)據(jù),取得最大基底分割數(shù)?!覆襟ES16」再分割部116根據(jù)畫面的顯示倍率、容許誤差及最大基底分割數(shù),計算出實際分割數(shù)。關(guān)于實際分割數(shù)的計算方法,在后面進行詳細敘述?!覆襟ES17」再分割部116判斷有無分割處理的必要。具體來講,判斷在步驟S16中所算出的實際分割數(shù)是否為小于等于1。在實際分割數(shù)為小于等于1的情況下,判斷為沒有必要進行分割處理。另一方面,在實際分割數(shù)超過了1的情況下,判斷為有必要進行分割處理。即、最大基底分割數(shù)為單位倍率時的單位誤差的分割數(shù)最大的邊的基底分割數(shù)。這樣,如果不需要進行該邊的分割,則也不需要對其他邊進行分割。在沒有必要進行分割處理的情況下,進入到步驟S18的處理。在有必要進行分割處理的情況下,進入到圖10的步驟S21的處理?!覆襟ES18」再分割部116將立體結(jié)構(gòu)數(shù)據(jù)存儲部120所存儲的混合網(wǎng)格數(shù)據(jù)及物體配置信息按原樣發(fā)送到顯示數(shù)據(jù)輸出部117。顯示數(shù)據(jù)輸出部117將混合網(wǎng)格數(shù)據(jù)輸出到三維顯示用API140。即、由于混合網(wǎng)格數(shù)據(jù)可以按原樣作為多邊形的數(shù)據(jù)來解釋,因而以原來的數(shù)據(jù)形式輸出到三維顯示用API140,則由少數(shù)的面(由混合網(wǎng)格數(shù)據(jù)所定義的面的數(shù)量)所構(gòu)成的立體形狀41被顯示在監(jiān)視器11的畫面上。然后,進入到步驟S38的處理。這樣,在顯示倍率小的情況下(在畫面中顯示為很小的情況)下,可以顯示簡單結(jié)構(gòu)的立體形狀,進行高速的畫面顯示。另外,即使在容許誤差較大的情況下,也可以顯示簡單結(jié)構(gòu)的立體形狀,進行高速的畫面顯示。圖10為表示立體形狀顯示順序的第2流程圖。下面,根據(jù)步驟編號對圖10所示的處理進行說明?!覆襟ES21」再分割部116進行立體形狀的分割處理所必需的參數(shù)等的初始化處理?!覆襟ES22」再分割部116從被存儲在立體結(jié)構(gòu)數(shù)據(jù)存儲部120中的混合網(wǎng)格數(shù)據(jù)中選擇出一個面信息?!覆襟ES23」再分割部116判斷視點(假設(shè)攝像機)和立體形狀(在步驟S22中所選擇的面)的相對位置是否在變化。即、判斷在所顯示的畫面內(nèi)立體形狀是否在移動。在相對位置發(fā)生變化的情況下,進入到步驟S29的處理。在相對位置沒有發(fā)生變化的情況下,進入到步驟S24的處理。另外,在本實施方式中,視點和立體形狀的相對位置根據(jù)來自用戶的操作輸入(視點的移動指示及視點的方向(視軸)的變更指示等)而進行變化?!覆襟ES24」再分割部116選擇一個由所選擇的面信息所定義的邊(端點信息的列)?!覆襟ES25」再分割部116計算出所選擇的邊的實際分割數(shù)。這是將所選擇的邊的基底分割數(shù)n0對一個畫面內(nèi)所顯示的所有的立體形狀乘以共同的值(Scale/Tol)而得到的數(shù)值。「步驟S26」再分割部116將在步驟S25中所計算出的實際分割數(shù)提升為2的冪。通過將邊的分割數(shù)定為2的冪,可以用簡單的分割模型來進行以后的3角形多邊形的分割?!覆襟ES27」再分割部116判斷是否決定了在步驟S22中所選擇的面信息的所有的邊的分割數(shù)。在所有的邊的分割數(shù)決定了的情況下,進入到步驟S28的處理。如果有未處理的邊,則進入到步驟S24的處理。「步驟S28」再分割部116判斷是否有必要在所有的邊進行分割(分割數(shù)是否為小于等于1)。如果沒有必要在所有的邊進行分割,則進入到步驟S29的處理。如果有必要進行分割的邊即使為一個,則也要進入到圖11的步驟S31的處理?!覆襟ES29」再分割部116將與在立體結(jié)構(gòu)數(shù)據(jù)存儲部120所存儲的混合網(wǎng)格數(shù)據(jù)的步驟S22中所選擇的面有關(guān)的信息按原樣發(fā)送到顯示數(shù)據(jù)輸出部117。顯示數(shù)據(jù)輸出部117將混合網(wǎng)格數(shù)據(jù)輸出到三維顯示用API140。于是,在步驟S22中所選擇的面40不進行再分割被顯示到監(jiān)視器11中。然后,進入到圖11的步驟S37的處理。這樣,在畫面中立體形狀移動的情況下,將各面不進行分割進行畫面顯示。其結(jié)果,有少數(shù)的面(由混合網(wǎng)格數(shù)據(jù)所定義的面的數(shù)量)所構(gòu)成的立體形狀被顯示到監(jiān)視器11的畫面中。即,可以用較少的處理高速地進行立體形狀的畫面顯示。圖11為表示立體形狀顯示順序的第3流程圖。下面,根據(jù)步驟編號對圖11所示的處理進行說明?!覆襟ES31」再分割部116判斷在圖10的步驟S22中所選擇的面信息為3邊形還是4邊形。在3邊形的情況下,進入到步驟S32的處理。在4邊形的情況下,進入到步驟S33的處理「步驟S32」再分割部116進行3邊形分割模型決定處理。該處理為根據(jù)各邊的實際分割數(shù)將3邊形決定為只是一個階段的分割模型的處理。即、3邊形的分割處理被分為多階段來進行。在步驟S32中,進行該1個階段的分割模型的決定。另外,3邊形分割處理的詳細情況,在后面進行敘述。然后,進入到步驟S34的處理?!覆襟ES33」再分割部116進行4邊形分割模型決定處理。該處理為根據(jù)各邊的實際分割數(shù)、將4邊形決定為只是一個階段的分割模型的處理。即、4邊形的分割處理被分為多階段來進行。在步驟S33中,進行該1個階段的分割模型的決定。該處理的詳細情況,在后面進行敘述?!覆襟ES34」再分割部116決定各邊的參數(shù)3次式?!覆襟ES35」再分割部116根據(jù)在步驟S32、S33所決定的分割模型和在步驟S34所決定的參數(shù)3次式,將構(gòu)成立體形狀的各面進行再分割。被再分割的結(jié)果,在不能進行更進一步的再分割的情況下,進入步驟S36。在可以進行再分割的情況下,再分割部116循環(huán)調(diào)出步驟S31~S36的處理。在被循環(huán)調(diào)出時的步驟S32、S33中,進行被分為多階段所進行的再分割處理的下一個的1個階段的分割模型決定處理。這樣,通過循環(huán)調(diào)出步驟S31~S36的處理,在步驟S22所選擇的面被階段地詳細劃分。「步驟S36」再分割部116將再分割后的立體形狀數(shù)據(jù)發(fā)送到顯示數(shù)據(jù)輸出部117。顯示數(shù)據(jù)輸出部117將立體形狀數(shù)據(jù)發(fā)送到三維顯示用API140。這樣,適合再分割的分割數(shù)的精確度的立體形狀42~44被顯示到監(jiān)視器11的畫面上。另外,在被選擇的面被分割為不能進一步被分割的狀態(tài)時,實施步驟S36的處理。并且,在每次生成最小單位的3邊形時,將該3邊形的顯示用的多邊形數(shù)據(jù)發(fā)送到顯示數(shù)據(jù)輸出部117。為此,再分割部116沒有必要保存立體形狀全體的多邊形數(shù)據(jù)?!覆襟ES37」再分割部116判斷是否分割了所有的面(FACE)。在分割了所有的面的情況下,進入到步驟S38的處理。在有未分割的面的情況下,進入到步驟S22的處理?!覆襟ES38」再分割部116判斷是否結(jié)束了所有物體的畫面顯示。另外,在通過用戶的操作輸入指示了瀏覽器110結(jié)束的情況下,也可以判斷畫面顯示結(jié)束。在畫面顯示結(jié)束的情況下,結(jié)束處理,在繼續(xù)進行其他的物體的混合網(wǎng)格數(shù)據(jù)的畫面顯示的情況下,進入到圖9的步驟S14的處理。如上所述,將放大倍率、容許誤差及與視點的相對位置適合的精確的立體形狀顯示到畫面上。并且,根據(jù)定義了較粗糙的形狀的面的混合網(wǎng)格數(shù)據(jù),可以顯示精確度很高(誤差很少)的立體形狀。因此,可以減少存儲立體形狀數(shù)據(jù)的存儲區(qū)域。下面,對在圖9~圖11中所說明的每個步驟的處理的詳細的內(nèi)容進行說明。對圖9的步驟S16和圖10的步驟S25所示的實際分割數(shù)的計算處理的詳細情況進行說明。在本實施方式中,根據(jù)參數(shù)3次式F(t)(0≤t≤1)來定義表示構(gòu)成立體形狀的面的形狀的邊。如果采用參數(shù)3次式,則很容易算出邊的中間點。即、通過將t=1/2代入?yún)?shù)3次式,可以很容易地求出中間點的坐標(biāo)(不給予CPU負荷)。在這里,如果通過參數(shù)3次式所得出的邊為曲線,則在表示立體形狀時將該邊分割為多個線段(近似折線(折線))。這時,邊的分割數(shù)越多,則被分割的線段的形狀越接近原來的曲線(誤差變小)。但是,當(dāng)分割數(shù)多時,顯示多邊形數(shù)增大,處理負荷變大。因此,有必要考慮被再現(xiàn)的立體形狀的精確度和處理負荷的平衡,對計算機100設(shè)定可容許的誤差(容許誤差(Tol)),決定適合該容許誤差的恰當(dāng)?shù)姆指顢?shù)(在不超過誤差的范圍內(nèi)的最小的分割數(shù))。一般來講,要計算出在被設(shè)定的容許誤差內(nèi)最小的分割數(shù),需要進行負荷很大的計算。例如,半徑R的圓的分割數(shù)n可以根據(jù)n=π/cos-1(1-Tol/R)…(1)來求得。為了方便,將該公式(1)稱為原公式。在這里,π為圓周率。在原公式(1)中所采用的反余弦(cos-1),為CPU負荷大的函數(shù)。因此,在本實施方式中,采用了高速進行分割數(shù)的計算的近似公式。該近似公式如下所示nπ×(R/2Tol)…(2)在這里,在公式(2)內(nèi)作為變量包含有半徑R。邊的形狀并不限于單純的圓弧,也有自由曲線的情況。因此,當(dāng)按照原樣采用公式(2),則在決定實際分割數(shù)之前,有必要計算出定義邊的曲線的曲率(半徑R)。因此,在本實施方式中,不采用半徑R、而采用預(yù)先所計算的單位倍率和單位誤差的基底分割數(shù)(實數(shù))來計算分割數(shù)n。圖12為表示空間曲線的折線近似的一例的圖。在圖12中,將空間曲線51分割為4個線段52~55。將此時的誤差定為tol0。這樣,在折線(彎曲線)近似的情況下的分割數(shù)n(折線的Vector根數(shù)),根據(jù)誤差tol0來判斷任意的空間曲線51(在圖12的例子中,分割數(shù)n=4)。將該已知的分割數(shù)n定為基底分割數(shù)n0。并且,將此時的空間曲線51的尺寸定為基準(zhǔn)尺寸。另外,將計算出基底分割數(shù)n0時的誤差定為基準(zhǔn)誤差tol0。用戶作為顯示倍率指定用基準(zhǔn)尺寸的幾倍的大小來顯示空間曲線51。將由用戶任意所指定的顯示倍率定為Scale時,將空間曲線51進行了Scale倍的曲線的分割數(shù)N1用N1(Scale)×n0…(3)來表示。另外,用戶可以根據(jù)誤差來指定將空間曲線51顯示到畫面時的精確度。將基準(zhǔn)誤差tol0變更為誤差tol1時的分割數(shù)N2用N2(tol0/tol1)×n0…(4)來表示。這樣,在根據(jù)基準(zhǔn)尺寸(Scale=1)將誤差定為基準(zhǔn)誤差(tol0)內(nèi)的基底分割數(shù)n0在已知該空間曲線51的情況下,在Scale倍該空間曲線51,容許誤差為Tol(=tol1/tol0)進行折線近似的情況下的曲線的實際的分割數(shù)(實際分割數(shù))N用N(Scale/Tol)n0…(5)來表示。容許誤差Tol用與基準(zhǔn)誤差tol0的比來表示誤差的大小。在這里,n0為不依賴于顯示倍率及容許誤差的曲線固有的特性值。因此,將n0稱為基底分割數(shù),可以通過預(yù)先計算來高速地進行顯示倍率及容許誤差被變更的情況下的分割數(shù)計算。另外,由于(Scale/Tol)的值對三維空間內(nèi)的所有的顯示對象為1個值,因而沒有必要計算每個構(gòu)成顯示對象物(例如汽車)的立體形狀(例如部件)的邊(空間曲線)。即、根據(jù)一次乘法可以求得適合對一個邊的顯示倍率和容許誤差的實際分割數(shù)N。在這里,基底分割數(shù)n0為正的實數(shù),實際分割數(shù)N為將小數(shù)點以下的數(shù)提升為1的自然數(shù)。還有,在本實施方式中,為了簡化分割模型處理,實際分割數(shù)定為2的冪。如果將實際分割數(shù)定為2的冪,則通過反復(fù)邊的兩個分割,可以進行適合實際分割數(shù)的邊的等分。另外,將直線定為基底分割數(shù)n0=0。這樣,既不會對顯示倍率(Scale)產(chǎn)生影響,也不會對容許誤差(tol)產(chǎn)生影響,實際分割數(shù)N經(jīng)常為0。這意味著不進行分割。下面,對圖形的分割例進行說明。圖13為表示圖形的分割的一例的圖。在圖13中,作為簡單的圖形的例子,表示了圓60。在這里,一邊改變圓60的半徑R,一邊采用原公式(1)來求得分割數(shù)n。將所求得的分割數(shù)作為適合圓60的半徑R的基底分割數(shù)n0。這時,將基準(zhǔn)誤差tol0定為1mm。在該情況下,半徑R的變化和基底分割數(shù)n0的關(guān)系成為以下的表所示的那樣。如該表所示,半徑R越大,則基底分割數(shù)n0也越大。另外,由于不能計算半徑R在不足0.5mm情況下的反余弦,因而不能進行計算。根據(jù)這樣所得到基底分割數(shù)n0來計算適合顯示倍率和容許誤差的實際分割數(shù)N。例如,在將半徑10mm的圓放大100倍(Scale=100)、以容許誤差1mm(Tol=1)來近似的情況下,采用基底分割數(shù)n0=6.97來計算實際分割數(shù)。將各數(shù)值設(shè)定為公式(5)的變量,要解近似值,則為N(100)×6.97=69.7…(6)將實際分割數(shù)N的小數(shù)點以下的數(shù)作為1加上,則為70。在這里,將顯示倍率放大了100倍時的分割數(shù),半徑應(yīng)和100倍的圓的分割數(shù)相同。在該例中,在根據(jù)原公式(1)求得了具有半徑10mm的100倍的半徑1000mm的圓的分割數(shù)的情況下,為70.24。將該值的小數(shù)點以下的數(shù)提升為1,則為71。因此,可以十分精確地進行近似。下面,以1mm的誤差來分割原公式(1)不能計算的半徑0.1mm的圓的情況下的分割數(shù),由于也應(yīng)可以將半徑10mm的圓作為1/100倍來顯示,因而可以求得n0(r=0.1)1/(100)×6.97=0.697…(7)。下面,對圖11的步驟S32、S33所示的分割模型的決定處理進行詳細的說明。首先,對3邊形分割模型決定處理進行詳細的說明。在本實施方式中,由于所有的邊的分割數(shù)為2的冪,因而所有的3邊形可以通過4個種類的分割模型的組合來進行分割。圖14為表示3邊形的分割模型的種類的圖。在圖14中,通過分割圖表示了適合3邊的分割數(shù)N的相互關(guān)系的分割模型。第1個3邊形分割模型為3邊的分割數(shù)處于N、N×a1、N×a2(N為大于1的2的冪)的關(guān)系的情況。在這里,a1、a2為2的冪。即、為用同樣的分割數(shù)N可以分割3邊的情況。在該情況下,如分割圖所示,根據(jù)分割數(shù)N來求得用參數(shù)3次式所表現(xiàn)的各邊的分割點的坐標(biāo)和分割點的法線矢量,并求得3邊形的中間分割線。并且,根據(jù)中間分割線將原來的3邊形分割為多個3邊形。第2個3邊形分割模型為3邊的分割數(shù)處于1、N、N×a3(N為大于1的2的冪)的關(guān)系的情況。在這里,a3為2的冪。即、為用同樣的分割數(shù)N可以分割分割數(shù)大于1的兩邊的情況。在該情況下,如分割圖所示,根據(jù)分割數(shù)N、對用參數(shù)3次式所表現(xiàn)的應(yīng)分割的兩邊,求得分割點的坐標(biāo)和分割點的法線矢量,并求得3邊形的中間分割線。并且,根據(jù)中間分割線將原來的3邊形分割為多個3邊形。第3個3邊形分割模型為3邊的分割數(shù)處于1、1、N(N為大于1的2的冪)的關(guān)系的情況。即、只分割1邊的情況。在該情況下,如分割圖所示,根據(jù)分割數(shù)N、對用參數(shù)3次數(shù)所表現(xiàn)的應(yīng)分割的1邊,求得分割點的坐標(biāo)和分割點的法線矢量,并求得3邊形的中間分割線。并且,根據(jù)中間分割線將原來的3邊形分割為多個3邊形。第4個3邊形分割模型為3邊的分割數(shù)全是1的情況。在該情況下,不分割原來的3邊形。通過階段地反復(fù)以上的4個模式(由于在第4個3邊形分割模型中不進行分割,因而實際上為3個模式)的分割,根據(jù)各邊的實際分割數(shù)來分割3邊形。另外,在分割3邊形時所采用的優(yōu)先順序為第1分割模型、第2分割模型、第3分割模型的順序。圖15為表示3邊形分割模型決定處理的順序的流程圖。該處理為圖11的步驟S32的處理。另外,在圖11中,在步驟S35中,通過循環(huán)地實施再分割處理來進行多階段的分割(在第1階段中進行一個分割模型的分割),但在圖15中,為了容易清楚地說明分割方法,用一系列的流程圖來表示多階段的分割處理。下面,根據(jù)步驟編號來對圖15所示的處理進行說明。再分割部116按照實際分割數(shù)從小到大的順序,對邊進行排序(排序)。在這里,按照實際分割數(shù)小的順序,將各邊的分割數(shù)定為i、j、k(i≤j≤k)。再分割部116判斷i是否大于1。在i大于1的情況下,進入到步驟S53的處理。在i小于等于1的情況下,進入到步驟S55的處理。再分割部116根據(jù)3邊形的第1分割模型、以(i、i、i)來分割各邊。再分割部116更新i、j、k的值。具體來講,將j/i的值重新設(shè)定為j。將k/i的值重新設(shè)定為k。將1設(shè)定為i。再分割部116判斷j是否大于1。在j大于1的情況下,進入到步驟S56的處理。在j小于等于1的情況下,進入到步驟S58的處理。再分割部116根據(jù)3邊形的第2分割模型、以(1、j、i)來分割各邊。再分割部116更新j、k的值。具體來講,將k/j的值重新設(shè)定為k。將1設(shè)定為j。再分割部116判斷k是否大于1。在k大于1的情況下,進入到步驟S59的處理。在k小于等于1的情況下,進入到圖11的步驟S34的處理。再分割部116根據(jù)3邊形的第3分割模型、以(1、1、k)來分割各邊。然后,進入到圖11的步驟S34的處理。如上所述,3邊形的面的分割模型可以根據(jù)各邊的實際分割數(shù)來決定。在決定了分割模型后,通過圖11的步驟S34、S35將3邊形再分割。例如,考慮在對3邊形的各邊計算了公式(5)的實際分割數(shù)時、分別得到了(5、21、12)的結(jié)果的情況。這些值為被提升到2的冪(8、32、16)。并且,當(dāng)按照值的從小到大的順序?qū)⒏鬟叺姆指顢?shù)進行分類時,成為i=8、j=16、k=32(8、16、32)。首先,由于i大于1,因而根據(jù)第1分割模型來分割。于是,各邊被分割為8份。這樣,i、j、k的值被更新,成為(1、2、4)。接下來,由于j大于1,因而根據(jù)第2分割模型來分割。于是,與j和k相對應(yīng)的邊被分割為2份。這樣,將各3邊形進一步分割為多個3邊形。并將j、k的值更新,成為(1、1、2)。最后,由于k大于1,因而根據(jù)第3分割模型來分割。于是,與k相對應(yīng)的邊被分割為2份。這樣,將各3邊形分割為多個3邊形。通過這樣,可以將3邊形進行分割。下面,對4邊形的分割模型決定處理進行詳細地說明。在本實施方式中,由于所有的邊的分割數(shù)為2的冪,因而可以根據(jù)4個種類的分割模型的組合來分割所有的4邊形。圖16為表示4邊形的分割模型的種類的圖。在圖16中,根據(jù)分割圖表示了適合4邊的分割數(shù)N的相互關(guān)系的分割模型。第1分割模型在將相對的邊分為一組時,是4邊的分割數(shù)處于(M、M×b1)、(N、N×b2)(M、N為大于1的2的冪)的關(guān)系的情況(括弧內(nèi)的兩個值為相互為組的兩個邊的分割數(shù))。在這里,b1、b2為2的冪。即、為可以用同樣的分割數(shù)對相對的邊進行分割的情況。在該情況下,如分割圖所示,用M將相對的邊的一方的組進行分割,用N將其他的組進行分割。其結(jié)果,將原來的4邊形分割為多個4邊形。第2分割模型在將相對的邊分為一組時,是4邊的分割數(shù)處于(1、M)、(1、N)(M、N為大于1的2的冪)的關(guān)系的情況。在這里,設(shè)定為具有M≤N的關(guān)系。即,是將相對的邊的一方的邊進行分割的情況。在該情況下,如分割圖所示,4邊當(dāng)中的相鄰的兩邊為分割對象。在這里,將對角線從分割對象的兩個邊所共有的端點引到與該端點相對的端點。通過對角線將4邊形分割為兩個3邊形。通過將對角線的分割數(shù)定為N,可以根據(jù)3邊形的分割模型將所生成的3個3邊形進行分割。具體來講,將所生成的3邊形分為第3模型和第4模型。第3分割模型為將3邊形的兩個邊分別分割為N、M的情況。通過3邊形的第2分割模型和第3分割模型的組合可以將該3邊形進行分割。第4分割模型為將3邊形的兩個邊分別分割為N、N的情況。通過3邊形的第2分割模型可以將該3邊形進行分割。根據(jù)以上的分割模型,可以將4邊形進行分割。圖17為表示4邊形分割模型決定處理的順序的流程圖。該處理為圖11的步驟S33的處理。另外,在圖11中,在步驟S35中,通過循環(huán)地實施再分割處理來進行多階段的分割(在第1階段中進行一個分割模型的分割),但在圖17中,為了容易明白地說明分割方法,用一系列的流程圖來表示多階段的分割處理。下面,根據(jù)步驟編號來對圖17所示的處理進行說明。再分割部116將對邊作為組。并且,在組之間將成為相同的組的兩個邊的分割數(shù)的比(大的一方的分割數(shù)/小的一方的分割數(shù))進行比較。然后,按照從分割數(shù)的比為小的一方的順序,將各組的邊進行排列。在相同組中的彼此的邊中,按照分割數(shù)從小到大的順序進行排列。這時,在配置順序上,將所排列的各邊的分割數(shù)定為i、j、k、l。分割數(shù)i的邊和j的邊構(gòu)成一組,分割數(shù)k的邊和l的邊構(gòu)成一組。這時,為i≤j、k≤l、j/i≤l/k的關(guān)系。再分割部116判斷i和k的至少一方是否大于1。如果有任何一方大于1,則進入到步驟S63的處理。在兩方都小于等于1的情況下,進入到步驟S65的處理。再分割部116根據(jù)第1個4邊形分割模型來分割4邊形。即、以i來分割分割數(shù)i、j的邊。以k來分割分割數(shù)k、l的邊。再分割部116更新i、j、k、l的值。具體來講,將j/i的值重新設(shè)定為j。將l/k的值重新設(shè)定為1。將1設(shè)定為k。再分割部116根據(jù)第2個4邊形分割模型,將由步驟S63的分割所生成的4邊形分割為兩份。這樣,由各4邊形生成兩個3邊形。再分割部116選擇一個在步驟S65中所生成的3邊形。再分割部116對在步驟S66中所選擇的3邊形進行3邊形分割模型決定處理。例如,所選擇的3邊形如果是依據(jù)與4邊形有關(guān)的第3分割模型,則該3邊形根據(jù)3邊形的第2分割模型和第3分割模型來決定分割模型。另外,所選擇的3邊形如果是依據(jù)與4邊形有關(guān)的第4分割模型,則該3邊形根據(jù)3邊形的第2分割模型來決定分割模型。再分割部116判斷是否分割了在步驟S65中所生成的所有的3邊形。在結(jié)束了所有的3邊形的分割模型決定處理的情況下,進入到圖11的步驟S34的處理。如果有未處理的3邊形,則進入到步驟S66的處理。如以上那樣,根據(jù)各邊的實際分割數(shù),可以決定4邊形的面的分割模型。在分割模型被決定后,根據(jù)圖11的步驟S34、S35,將4邊形再分割。例如,考慮在對3邊形的各邊計算出了公式(5)的實際分割數(shù)時,分別得到了(6、2、12、7)的結(jié)果的情況。在這里,分割數(shù)6的邊和分割數(shù)2的邊為相對的邊,分割數(shù)12的邊和分割數(shù)7的邊為相對的邊。這些值被提升為2的冪,成為(8、2、16、8)。并且,當(dāng)以分割數(shù)的比為小的一方的組為先、按分割數(shù)從小到大的順序?qū)⒏鹘M內(nèi)的各邊進行分類時,成為i=8、j=16、k=2、l=8(8、16、2、8)。首先,由于i和k大于1,因而根據(jù)4邊形的第1分割模型來進行分割。于是,分割數(shù)i的邊和j的邊被分割為8份。同樣,分割數(shù)k的邊和j的邊被分割為兩份。這樣,i、j、k、l的值被更新,成為(1、2、1、4)。接下來,根據(jù)第2分割模型,用對角線將由第1分割模型的分割所生成的4邊形分割為兩份。對對角線設(shè)定和l的值相同的分割數(shù)。這樣,被分割為(1、j、l)的分割模型的3邊形和(1、l、l)的分割模型的3邊形。即、生成(1、2、4)的分割模型的3邊形和(1、4、4)的分割模型的3邊形。關(guān)于分割數(shù)(1、2、4)的3邊形,由于j(=2)大于1,因而用3邊形的第2分割模型來進行分割。于是,和j、l相對應(yīng)的邊被分割為兩份。這樣,將3邊形進一步分割為多個3邊形。并且,j、l的值被更新,成為(1、1、2)。并且,由于l大于1,因而用3邊形的第3分割模型來進行分割。于是,和l相對應(yīng)的邊被分割為兩份。關(guān)于分割數(shù)(1、4、4)的3邊形,由于l(=4)大于1,因而用3邊形的第2分割模型來進行分割。于是,和l相對應(yīng)的邊被分割為4份。這樣,將3邊形進一步分割為多個3邊形。如上述那樣,將4邊形分割為多個3邊形。在分割邊的情況下,根據(jù)對該邊的端點所設(shè)定的法線矢量來決定參數(shù)3次式。并且,通過對定義了邊的曲線的參數(shù)3次式的參數(shù)t(0≤t≤1)設(shè)定0.5,來求得該邊的中心點。另外,參數(shù)3次式的決定法,因立體形狀的面彼此之間的鄰接關(guān)系而不同?!さ?鄰接關(guān)系為鄰接的面彼此之間平滑連接的情況。在該情況下,有從法線矢量經(jīng)過切線矢量來求得的方法和從法線矢量假定兩次微分矢量來求得的方法。·第2鄰接關(guān)系為在鄰接的面彼此之間所共有的邊曲折的情況?!さ?鄰接關(guān)系為有必要強制性地指示邊的形狀的情況。下面,對適合面彼此之間的鄰接關(guān)系的參數(shù)3次式的決定方法進行說明。圖18為表示鄰接的面彼此之間平滑連接的立體形狀的一例的圖。如圖所示,立體形狀71具有相互鄰接的面F1a、F1b。鄰接的面F1a、F1b共有邊S1(t),并且邊S1(t)的兩端點的法線矢量N10、N11也共有鄰接的面F1a、F1b。在該情況下,判斷該兩個鄰接的面F1a、F1b在邊S1(t)中為平滑連接。在這樣的情況下,可以用以下的兩個方法中的任何一種方法來決定的參數(shù)3次式。首先,對從法線矢量經(jīng)過切線矢量來求得參數(shù)3次式的方法進行說明。在該方法中,設(shè)定兩端點的坐標(biāo)P10、P11、兩端點的法線矢量N10、N11、及切線的長度r10、r11,來決定切線矢量T10、T11。另外,在立體結(jié)構(gòu)數(shù)據(jù)存儲部120內(nèi)的端點信息中定義端點坐標(biāo)、法線矢量及切線的長度。在該情況下,切線矢量T10與法線矢量N10相垂直,為從坐標(biāo)P10面向最接近坐標(biāo)P11的方向的長度r10的矢量。用公式來表示,則如下所示。T10=r10·N10×(P11-P10)×N10/|N10×(P11-P10)×N10|…(8)T11=r11·N11×(P11-P10)×N11/|N11×(P11-P10)×N11|…(9)在公式(8)、公式(9)中,“×”表示矢量的矢積,“·”表示標(biāo)量(r0及r1)的乘法運算。接下來,采用兩端點的坐標(biāo)(P10、P11)及兩端點的切線矢量(T10、T11),決定滿足以下4個矢量公式的參數(shù)3次式S1(t)。S1(t=0)=P10S1(t=1)=P11dS1/dt(t=0)=T10dS1/dt(t=1)=T11…(10)這樣,通過決定在端點的條件,可以決定三維區(qū)間內(nèi)的曲線。例如,可以計算出佛格森(Ferguson)曲線。接下來,對從法線矢量假定2次微分矢量來求得參數(shù)3次式的方法進行說明。圖19為表示采用2次微分矢量所決定的參數(shù)3次式的一例的圖。如圖19所示,可以進行假定(由于不是弧長中間變量的2次微分,因而不一致)兩端點的2次微分矢量W20、W21和兩端點的法線矢量N20、N21方向近似(也包括正負相反的情況)。這時,將法線矢量N20、N21乘以了矢量的大小r20、r21的矢量作為2次微分矢量W20、W21。另外,由于法線矢量N20、N21總是面向面的表面,因而在給予矢量的大小r20、r21時,根據(jù)需要,通過定為負值使其與2次微分方向相吻合。例如,如果曲線在立體形狀的表面方向為凸?fàn)睿瑒t將矢量的大小r20、r21定為負值。相反,如果曲線在立體形狀的表面方向為凹狀,則將矢量的大小r20、r21定為正值。另外,在圖6所示的端點信息426的切線定義信息426c內(nèi)預(yù)先設(shè)定矢量的大小r20、r21。2次微分矢量W20、W21分別和法線矢量N20、N21相平行,長度和面向與r20、r21所示的矢量近似。將其用公式表示,則如下所示。W20=r20·N20…(11)W21=r21·N21…(12)采用兩端點的坐標(biāo)P10、P11及兩端點的2次微分矢量W20、W21,根據(jù)以下的4個矢量公式來決定參數(shù)3次式S2(t)。S2(t=0)=P20S2(t=1)=P21d2S2/dt2(t=0)=W20d2S2/dt2(t=1)=W21…(13)由此來決定滿足了這樣的條件的參數(shù)3次式S2(t)。下面,對在鄰接的面彼此之間所共有的邊為曲折的情況的參數(shù)3次式的決定方法進行說明。圖20為表示在鄰接的面彼此之間所共有的邊為曲折的立體形狀的一例的圖。圖20所示的立體形狀72的面F3a和面F3b通過邊S3(t)相鄰接。在面F3a的法線矢量N30a、N31a內(nèi),不具有使邊S3(t)彎曲的成分。另一方面,處于鄰接關(guān)系的面F3b的法線矢量N30b、N31b具有使邊S3(t)彎曲的成分。在象這樣由鄰接的面F3a和面F3b所共有的邊S3(t)的兩端的法線矢量不被兩個面F3a和面F3b所共有的情況下,判斷為該鄰接的面F3a和面F3b所共有的邊S3(t)為彎曲的。在該情況下,采用4根法線矢量來決定切線矢量的方向。切線矢量T30為法線矢量N30a、N30b的矢積的方向,長度為r30的矢量。同樣,切線矢量T31為法線矢量N31a、N31b的矢積的方向,長度為r31的矢量。另外,長度r30為端點30所定義的切線的長度,長度r31為端點31所定義的切線的長度。將其用公式表示,則如下所示。T30=r30·N30a×N30b/|N30a×N30b|…(14)T31=r31·N31a×N31b/|N31a×N31b|…(15)下面,采用兩端點的坐標(biāo)(P30、P31)及兩端點的切線矢量(T30、T31),來決定滿足了以下4個矢量的參數(shù)3次式S3(t)。S3(t=0)=P30S3(t=1)=P31dS3/dt(t=0)=T30dS3/dt(t=1)=T31…(16)[有必要強制性地指示邊的形狀的情況]下面,對有必要強制性地指示邊的形狀的情況進行說明。圖21為表示強制性地指示邊的形狀的立體形狀的一例的圖。圖21所示的立體形狀73的面F4a和面F4b相鄰接。鄰接的面F4a、F4b共有邊S4(t),并且,邊S4(t)的兩端點的法線矢量N40、N41也被鄰接的面F4a和面F4b所共有。在該情況下,判斷這兩個鄰接的面F4a、面F4b在邊S4(t)中為平滑連接,在法線矢量N40、N41中不具有使邊S4(t)彎曲的成分。即使在這樣的情況下,如果有必要強制地使邊S4(t)彎曲,則直接設(shè)定切線矢量T40、T41。采用兩端點的坐標(biāo)P40、P41及兩端點的切線矢量T40、T41,來決定滿足了以下的公式的參數(shù)3次式S4(t)。S4(t=0)=P40S4(t=1)=P41dS4/dt(t=0)=T40dS4/dt(t=1)=T41…(17)如以上所述,可以決定構(gòu)成立體形狀的邊的參數(shù)3次式。當(dāng)決定了定義了邊的曲線的參數(shù)3次式時,首先根據(jù)所決定的分割模型將邊進行分割。在被分割的邊的端點,有必要重新定義端點的位置和法線矢量。下面,對中間點的坐標(biāo)(中間坐標(biāo))和法線矢量的計算方法進行說明。參照附圖22對求得中間坐標(biāo)的方法進行說明。圖22為表示分割對象的面的一例的圖。在圖22的例中,被分割的面81為3邊形。面81是由具有端點P50、P51的邊81a、具有端點P51、P52的邊81b、具有端點P52、P50的邊81c構(gòu)成。在端點P50的法線矢量為V50、切線矢量為N50。在端點P51的法線矢量為V51、切線矢量為N51。在根據(jù)參數(shù)3次式的決定法來決定從端點P50與端點P51相接的邊81a的參數(shù)3次式S5(t)的情況下,通過決定參數(shù)3次式S5(t)的t值(如果為中點,則t=0.5)來決定為邊81a上的任意的點Pc。下面,參照附圖22對求得中間點的法線矢量的方法進行說明。作為任意的中間點的法線矢量的求得方法,可以考慮以下的4種決定方法。第1種方法為假設(shè)中間點的法線矢量Nc從N50線性變化為N51的方法。該計算方式如下所示。Nc=(1-t)N50+(t)N51…(18)第2種方法為假設(shè)中間點的法線矢量Nc從N50線性變化為N51、與中間點的法線矢量Vc正交的方法。該計算方式如下所示。Nc=Vc×(N50+N51)×Vc…(19)第3種方法為假設(shè)中間點的法線矢量Nc從N50方向旋轉(zhuǎn)到N51方向的方法。該計算方式如下所示。Nc=Vc×N50×N51…(20)但N50×N51=0的情況下的計算公式如下所示。Nc=Vc×N50×Vc…(21)第4種方法為假設(shè)中間點的法線矢量Nc從N0方向向N1方向3次變化的方法。該計算方式如下所示。Nc=-2(N51-N50)t3+3(N51-N50)t2+N50…(22)將在公式(18)~(22)所得到的矢量Nc在單位矢量內(nèi)進行歸一化的矢量,成為中間點的法線矢量。在將3邊形進行分割時,在原來的3邊形內(nèi)生成新的邊。這時,有必要計算所生成的邊的曲線式。圖23為表示包含被分割的3邊形的立體形狀的一例的圖。在圖23中,表示有圓柱的立體形狀82。立體形狀82的側(cè)面由多個3邊形構(gòu)成。側(cè)面所包含的一個3邊形82a,具有端點P60、P61、P62。在混合網(wǎng)格數(shù)據(jù)中被定義的3邊形82a,例如在圖像顯示時被分割為多個3邊形。在這里,采用邊82ba上的中間點的坐標(biāo)P70和法線矢量N70、及邊82bb上的中間點的坐標(biāo)P71和法線矢量N71,可以求得連接兩個邊82ba、82bb的中間點的82ca的參數(shù)3次式。在這時,作為參數(shù)3次式的決定方法,例如根據(jù)鄰接的面彼此之間為平滑連接的情況下的決定法來求得。坐標(biāo)P70的切線的長度r70和坐標(biāo)P71的切線的長度r71,可根據(jù)以下的公式來求出。r70=r60×|P71-P70|/|P61-P60|…(23)r71=r61×|P71-P70|/|P61-P60|…(24)另外,r60為在端點P60的切線的長度,r61為在端點P61的切線的長度。也有其他的3邊形的任意中間曲線的計算方法。圖24為表示被分割的3邊形的一例的圖。關(guān)于圖24的3邊形83,P80、P81、P82表示3邊形的頂點(構(gòu)成3邊形的邊的端點)。N80、N81、N82表示P80、P81、P82的法線矢量。T81、T82表示將P81和P82作為端點的邊的各端點的切線矢量。U81、U80表示將P81和P80作為端點的邊的各端點的切線矢量。V82、V80表示將P82和P80作為端點的邊的各端點的切線矢量。在這里,作為在內(nèi)部所生成的信息,有e80、e81、e82。e80、e81、e82表示形成三角形的邊,由參數(shù)3次式所表示。在這里,根據(jù)以下的方法求得內(nèi)部中間曲線e83。使e82由P80面向P81、求得只進了u(0<u<1)的點P83。求得P83的e82的切線矢量U83。求得P83的法線矢量N83。求得在P83中U83、N83的方向關(guān)系和P81的U81、N81、T81的關(guān)系相同的切線矢量T83。和求得切線矢量T83的方法同樣、求得和P82的V82、N82、T82的關(guān)系相同的切線矢量T84。根據(jù)切線矢量T83、T84、求得e83的參數(shù)3次式。這樣,可以求得為分割3邊形的邊界的邊的參數(shù)3次式。下面,對4邊形的內(nèi)部中間坐標(biāo)和法線矢量的求出方法進行說明。首先,參照附圖25對4邊形的任意中間坐標(biāo)的求出方法進行說明。圖25為表示被分割的4邊形的一例的圖。在這里,將表示4邊形84的公式定為S9(u、v)。當(dāng)定為Coon’s曲面時,如圖25所示,采用各端點的坐標(biāo)P90~P93和u方向矢量U90~U93、v方向矢量V90~V93,用以下的矢量公式可以表示4邊形84。S9(u=0、v=0)=P90S9(u=0、v=1)=P91S9(u=1、v=0)=P92S9(u=1、v=1)=P93…(25)S9/u(u=0、v=0)=U90S9/u(u=0、v=1)=U91S9/u(u=1、v=0)=U92S9/u(u=1、v=1)=U93…(26)S9/v(u=0、v=0)=V90S9/v(u=0、v=1)=V91S9/v(u=1、v=0)=V92S9/v(u=1、v=1)=V93…(27)通過將這些公式聯(lián)立并解開,來求得S9(u、v),根據(jù)P=S9(u=u0、v=v0),給予(u=u0、v=v0)所表示的任意點P的坐標(biāo)P。下面,對4邊形的任意中間點的法線矢量的決定方法進行說明。根據(jù)u方向切線矢量S9/u(u=u0、v=v0)和v方向切線矢量S9/v(u=u0、v=v0)的矢積,給予(u=u0、v=v0)所表示的任意點P的法線矢量。通過進行以上的處理,可以進行基于混合網(wǎng)格數(shù)據(jù)的立體形狀的畫面顯示。下面,參照附圖26~30對立體形狀的畫面顯示例進行說明。在本實施方式中,也可以只顯示構(gòu)成立體形狀的邊的畫面。通過只顯示邊的畫面,從視覺上來講可以容易地在畫面上認識立體形狀的結(jié)構(gòu)。作為例子,對用三維CAD作成球體的立體形狀的情況進行說明。表示球體的CAD數(shù)據(jù),通過CAD數(shù)據(jù)轉(zhuǎn)換部114被轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)。當(dāng)將球體轉(zhuǎn)換為混合網(wǎng)格數(shù)據(jù)時,例如用由8個3邊形所構(gòu)成的8面體來表現(xiàn)。圖26為表示顯示了由混合網(wǎng)格數(shù)據(jù)所定義的立體形狀的邊的畫面的一例的圖。在圖26的畫面內(nèi),顯示了由混合網(wǎng)格數(shù)據(jù)將8面體的立體形狀定義時的立體形狀的邊(只顯示線狀畫面)。根據(jù)任意的精度將定義了這樣的結(jié)構(gòu)的混合網(wǎng)格數(shù)據(jù)進行再分割,可以將立體形狀顯示到畫面上。例如,在將立體形狀在畫面內(nèi)進行旋轉(zhuǎn)的情況下、及顯示倍率在顯示很小的情況下,不進行混合網(wǎng)格數(shù)據(jù)的再分割將立體形狀進行顯示。圖27為表示將混合網(wǎng)格數(shù)據(jù)所定義的立體形狀進行顯示的畫面的一例的圖。在該畫面中,將圖26所示的結(jié)構(gòu)的混合網(wǎng)格數(shù)據(jù)按原樣(不進行再分割)顯示時的立體形狀進行顯示。在圖27的例子中,由于不進行再分割,因而以8個面來顯示立體形狀。這樣,可以高速地將立體形狀進行畫面顯示。另一方面,在提高顯示倍率、將靜止的立體形狀進行畫面顯示的情況下,進行混合網(wǎng)格數(shù)據(jù)的再分割。通過再分割,以大量的面再現(xiàn)表示球體的立體形狀。圖28為表示將混合網(wǎng)格數(shù)據(jù)進行再分割時的立體形狀的邊進行顯示的畫面的一例的圖。在圖28所示的畫面中,通過進行混合網(wǎng)格數(shù)據(jù)的再分割,將由多個面所構(gòu)成的球體進行顯示(只顯示線狀畫面)。如果也根據(jù)圖28所示的結(jié)構(gòu)所分割的數(shù)據(jù)進行立體形狀的顯示,則可以將和由三維CAD所作成時的球體同樣美觀的立體形狀進行顯示。圖29為表示將混合網(wǎng)格數(shù)據(jù)進行再分割時的立體形狀進行顯示的畫面的一例的圖。如圖29所示,在畫面中,通過進行再分割,可以將看起來幾乎是球體的立體形狀進行顯示?;旌暇W(wǎng)格數(shù)據(jù)和原來CAD數(shù)據(jù)相比,由于數(shù)據(jù)容量很少,因而即使在將原來的立體形狀詳細地再現(xiàn)的情況下,即使HDD103等的存儲容量小,也沒有問題。另外,由于通過再分割每生成多邊形數(shù)據(jù)時,提交給三維顯示用API140,因而沒有必要將再分割后的多邊形數(shù)據(jù)儲存到RAM102內(nèi),可以降低RAM102的使用量。即,即使是存儲容量很小的RAM102,也可以顯示CAD所作成的立體形狀。另外,在將立體形狀進行畫面顯示時,采用各面的端點所定義的法線矢量,可以進行陰影顯示。通過進行陰影顯示,構(gòu)成立體形狀的1個面即使用平面多邊形來顯示,也可以平滑地表現(xiàn)各面的邊界。另外,在本實施方式中,由于作為法線矢量采用了單位矢量,因而對一般的陰影顯示可以直接使用。另外,由于顯示立體形狀所必需的資源及處理負荷很少也不影響顯示,因而即使為非常復(fù)雜的立體形狀,也可以容易地進行畫面顯示。例如,在通過網(wǎng)絡(luò)的合作系統(tǒng)上進行采用了CAD的汽車的設(shè)計,各共同操作者也可以通過網(wǎng)絡(luò)參照表示汽車的結(jié)構(gòu)的立體形狀。圖30為表示汽車的立體形狀的顯示畫面的一例的圖。在圖30所示的畫面中,顯示了汽車的發(fā)動機室的結(jié)構(gòu)。即使象這樣復(fù)雜結(jié)構(gòu)的立體形狀,在各計算機上也可以很容易地進行顯示。這樣,可以以較少的處理負荷將復(fù)雜的立體形狀進行畫面顯示。另外,如圖10所示,在本實施方式中,是判斷在每個面有無視點和立體形狀的相對位置的變化,但也可以判斷每個立體形狀(物體)有無相對位置的變化。在該情況下,例如可以取代步驟S23的處理而進行判斷在步驟S14和S15之間有無視點和立體形狀的基準(zhǔn)位置的相對位置的變化的處理。如果相對位置發(fā)生變化,則進入到步驟S18的處理,如果相對位置沒有變化,則進入到步驟S15的處理。另外,在假設(shè)在三維空間內(nèi)只有視點可能移動的情況等下,也可以取代判斷有無視點和立體形狀的基準(zhǔn)位置的相對位置的變化而判斷有無視點的移動。在該情況下,例如可取代步驟S23的處理而進行判斷在步驟S13和S14之間有無視點的移動的處理。如果視點移動,則對所有的物體進行原數(shù)據(jù)顯示處理(步驟S18),結(jié)束處理。如果視點沒有移動,則進入到步驟S14的處理。這樣,通過在顯示畫面中將判斷物體是否移動的處理簡單化,可以達到處理的高速化。另外,上述的處理功能可以通過計算機來實現(xiàn)。在該情況下,提供記述了計算機應(yīng)有的功能的處理內(nèi)容的程序。通過在計算機上執(zhí)行該程序,可以在計算機上實現(xiàn)上述處理功能。記述了處理內(nèi)容的程序可以存儲到計算機可讀取的存儲介質(zhì)內(nèi)。作為計算機可讀取的存儲介質(zhì)有磁存儲裝置、光盤、光磁存儲介質(zhì)、半導(dǎo)體存儲器等。在磁存儲裝置中,有硬盤裝置(HDD)、軟盤(FD)、磁帶等。在光盤中有DVD(DigitaVersatileDisc)、DVD-RAM(RandomAccessMemory)、CD-ROM(CompactDiscReadOnlyMemory)、CD-R(Recordable)/RW(ReWritable)等。在光磁存儲介質(zhì)中,有MO(Magneto-Opticaldisc)等。在使程序流通的情況下,例如,將存儲了該程序的DVD、CD-ROM等可移動型存儲介質(zhì)進行銷售。另外,也可以將程序儲存到服務(wù)器計算機的存儲裝置內(nèi),通過網(wǎng)絡(luò)將該程序從服務(wù)器計算機轉(zhuǎn)送到其他的計算機上。執(zhí)行程序的計算機例如將儲存到可移動型存儲介質(zhì)內(nèi)的程序或由服務(wù)器計算機轉(zhuǎn)送來的程序儲存到自己的存儲裝置內(nèi)。然后,計算機從自己的存儲裝置中讀出程序,執(zhí)行依據(jù)程序的處理。另外,計算機也可以從可移動型存儲介質(zhì)中直接讀出程序,并執(zhí)行依據(jù)該程序的處理。另外,計算機也可以在每當(dāng)由服務(wù)器計算機將程序轉(zhuǎn)送來時,逐步執(zhí)行依據(jù)了所接收的程序的處理。如上所述,在本發(fā)明中,根據(jù)立體形狀數(shù)據(jù)預(yù)先所定義的面的頂點的位置和頂點的法線方向來決定曲面形狀,由于通過分割成沿該曲面形狀的多個面來顯示立體形狀,因而可以根據(jù)較少的數(shù)據(jù)量的立體形狀數(shù)據(jù)來顯示高精度的立體形狀。以上所述只是表示了本發(fā)明的原理。本
技術(shù)領(lǐng)域
的技術(shù)人員可以進行各種變形和變更,本發(fā)明不限于以上說明的標(biāo)準(zhǔn)的結(jié)構(gòu)及應(yīng)用例,所對應(yīng)的所有的變形例及等同實施方式均被認為是屬于本發(fā)明的權(quán)利保護范圍內(nèi)。權(quán)利要求1.一種立體形狀顯示程序,用于對物體的形狀進行立體顯示,其特征在于,使計算機執(zhí)行如下的處理,即根據(jù)在至少一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成所述立體形狀的所述面的分割模型,并且根據(jù)在所述立體形狀數(shù)據(jù)中被預(yù)先定義的所述面的頂點的位置和該頂點的法線方向,決定所述面的曲面形狀,根據(jù)所決定的所述分割模型來分割被決定的所述曲面形狀,生成沿所述曲面形狀的多個面,顯示由生成的所述多個面構(gòu)成的立體形狀。2.根據(jù)權(quán)利要求1所述的立體形狀顯示程序,其特征在于,在決定所述分割模型時,決定構(gòu)成所述面的每個邊的分割數(shù),根據(jù)所述每個邊的分割數(shù)來決定所述面的分割模型。3.根據(jù)權(quán)利要求2所述的立體形狀顯示程序,其特征在于,在決定所述分割模型時,根據(jù)與顯示精度相關(guān)的操作輸入來決定構(gòu)成所述面的所述邊的分割數(shù)。4.根據(jù)權(quán)利要求3所述的立體形狀顯示程序,其特征在于,與所述顯示精度相關(guān)的操作輸入為顯示倍率的指定。5.根據(jù)權(quán)利要求3所述的立體形狀顯示程序,其特征在于,與所述顯示精度相關(guān)的操作輸入為容許誤差的指定。6.根據(jù)權(quán)利要求3所述的立體形狀顯示程序,其特征在于,與所述顯示精度相關(guān)的操作輸入為顯示畫面內(nèi)的立體形狀的動作指示。7.根據(jù)權(quán)利要求3所述的立體形狀顯示程序,其特征在于,在決定所述分割模型時,通過根據(jù)與所述顯示精度相關(guān)的操作輸入增減對構(gòu)成所述面的所述邊預(yù)先設(shè)定的基底分割數(shù),來決定所述邊的分割數(shù)。8.根據(jù)權(quán)利要求7所述的立體形狀顯示程序,其特征在于,在決定所述分割模型時,決定適應(yīng)由操作輸入所指定的顯示倍率和容許誤差的系數(shù),根據(jù)用該系數(shù)乘以所述基底分割數(shù)所得出的值來決定所述邊的分割數(shù)。9.根據(jù)權(quán)利要求2所述的立體形狀顯示程序,其特征在于在決定所述分割模型時,從2的冪的值中決定所述邊的分割數(shù)。10.根據(jù)權(quán)利要求1所述的立體形狀顯示程序,其特征在于在決定所述曲面形狀時,根據(jù)對所述面的頂點預(yù)先設(shè)定的切線矢量來決定構(gòu)成所述面的邊的曲線。11.根據(jù)權(quán)利要求1所述的立體形狀顯示程序,其特征在于在顯示所述立體形狀時,判斷在顯示畫面內(nèi)的該立體形狀有無移動,在有移動的情況下,顯示由所述立體形狀數(shù)據(jù)預(yù)先定義的立體形狀。12.一種立體形狀顯示方法,用于對物體的形狀進行立體顯示,其特征在于,使計算機執(zhí)行如下的處理,即根據(jù)在至少一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成所述立體形狀的所述面的分割模型,并且根據(jù)在所述立體形狀數(shù)據(jù)中被預(yù)先定義的所述面的頂點的位置和該頂點的法線方向,決定所述面的曲面形狀,根據(jù)所決定的所述分割模型來分割被決定的所述曲面形狀,生成沿所述曲面形狀的多個面,顯示由生成的所述多個面構(gòu)成的立體形狀。13.一種立體形狀顯示裝置,將物體的形狀進行立體顯示,其特征在于,具有根據(jù)在至少一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成所述立體形狀的所述面的分割模型的分割模型決定單元;根據(jù)在所述立體形狀數(shù)據(jù)中被預(yù)先定義的所述面的頂點的位置和該頂點的法線方向,決定所述面的曲面形狀的曲面形狀決定單元;根據(jù)由所述分割模型決定單元所決定的所述分割模型來分割由所述曲面形狀決定單元所決定的所述曲面形狀,生成沿所述曲面形狀的多個面的面生成單元;和顯示由利用所述面生成單元生成的所述多個面構(gòu)成的立體形狀的顯示單元。14.一種記錄有立體形狀顯示程序的計算機可讀取的記錄介質(zhì),記錄有用于將物體的形狀進行立體顯示的立體形狀顯示程序,其特征在于,使計算機執(zhí)行如下的處理,即根據(jù)在至少一個面上定義了立體形狀的立體形狀數(shù)據(jù),決定構(gòu)成所述立體形狀的所述面的分割模型,并且根據(jù)在所述立體形狀數(shù)據(jù)中被預(yù)先定義的所述面的頂點的位置和該頂點的法線方向,決定所述面的曲面形狀,根據(jù)所決定的所述分割模型來分割被決定的所述曲面形狀,生成沿所述曲面形狀的多個面,顯示由生成的所述多個面構(gòu)成的立體形狀。全文摘要一種立體形狀顯示程序、立體形狀顯示方法及立體形狀顯示裝置??苫诒粔嚎s的數(shù)據(jù)高速地顯示立體形狀。根據(jù)至少在一個面上定義了立體形狀的立體形狀數(shù)據(jù)(2),決定構(gòu)成立體形狀的面的分割模型(步驟S2)。同時,根據(jù)立體形狀數(shù)據(jù)(2)預(yù)先所定義的面的頂點的位置和該頂點的法線方向,決定面的曲面形狀(步驟S3)。然后,根據(jù)所決定的分割模型來分割被決定的曲面形狀,生成沿曲面形狀的多個面(步驟S4)。然后將由所生成的多個面構(gòu)成的立體形狀進行顯示(步驟S5)。文檔編號G06T17/00GK1618087SQ0282792公開日2005年5月18日申請日期2002年2月6日優(yōu)先權(quán)日2002年2月6日發(fā)明者森博己申請人:Dipro株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
渭源县| 漳浦县| 扎囊县| 大城县| 保定市| 双辽市| 郎溪县| 盐亭县| 西盟| 祁连县| 太谷县| 延庆县| 道真| 桓仁| 宜兰市| 邮箱| 盐亭县| 射阳县| 普兰店市| 手游| 桐城市| 海城市| 白银市| 南皮县| 龙陵县| 汝阳县| 嘉峪关市| 灌阳县| 庆元县| 崇信县| 长丰县| 蒙山县| 张家港市| 台南县| 湘潭市| 乐亭县| 江陵县| 电白县| 鄂尔多斯市| 泸西县| 凌源市|