• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于WebGL的BIM輕量化關鍵技術研究

    2023-11-02 12:33:44黃丙湖徐幫樹張家寶何亞文
    計算機應用與軟件 2023年10期
    關鍵詞:字節(jié)輕量化坐標系

    黃丙湖 王 濤 徐幫樹 張家寶 何亞文

    1(中國石油大學(華東)海洋與空間信息學院 山東 青島 266580)

    2(山東大學齊魯交通學院 山東 濟南 250061)

    3(山東科技大學土木工程與建筑學院 山東 青島 266590)

    0 引 言

    BIM(Building Information Modeling)技術在AECO/FM(Architecture,Engineering,Construction,Operations and Facility Management)行業(yè)的廣泛運用[1]和Web 3D技術日漸成熟,掀起了一股WebBIM研究與應用熱潮。由于BIM中包含建筑全生命周期的幾何信息和語義信息,通過BIM服務器,可將信息實時更新和最大范圍共享,提高各個運營商之間的溝通效率,減少運營成本。

    在WebBIM的研究中,魏國富等[2]基于OBJ與SVG的ID映射,實現(xiàn)模型與平面圖紙的二三維聯(lián)動。Wei[3]通過將Autodesk Forge View、Dynamo與Flux的集成,開發(fā)了一款BIM參數(shù)化設計系統(tǒng),允許多人協(xié)同設計。Scully等[4]利用3D Repo云服務設計了基于X3DOM的3D BIM版本控制系統(tǒng)。劉小軍等[5]提出了一套面向手機網(wǎng)頁瀏覽大規(guī)模三維場景的漫游算法。Chen等[6]提出基于Bigtable和MapReduce的分布式系統(tǒng)框架用于存儲、瀏覽和計算大規(guī)模BIM數(shù)據(jù)。

    然而BIM有眾多的數(shù)據(jù)源,各數(shù)據(jù)依賴于軟件系統(tǒng)環(huán)境而無法直接被WebGL讀取和渲染,IFC(Industry Foundation Classes)標準的發(fā)布,有助于BIM數(shù)據(jù)在不同軟件平臺之間實現(xiàn)共享和交換。在這里,BIM模型可以劃分為IFC標準模型和專業(yè)軟件模型[7],對于這兩類模型的數(shù)據(jù)轉換,有眾多的學者做了相關研究。Xu等[8-9]利用IFCOpenShell工具實現(xiàn)對IFC數(shù)據(jù)的提取與格式轉換。針對專業(yè)軟件模型,除了眾多軟件生產(chǎn)商提供的解決方案如Autodesk Forge View、FME、BimAngle Engine和SimLab等,也同樣引起了相關從業(yè)者和學者的關注。Jeremy Tammik開源了RvtVa3c項目,對Revit數(shù)據(jù)的自定義導出具有很好的指導意義。陳志楊等[10]借助Revit API完成BIM屬性信息和幾何信息的提取。

    現(xiàn)今,隨著數(shù)據(jù)量激增,對本已經(jīng)包含大量信息的BIM數(shù)據(jù)而言,有限的存儲資源和計算能力成為技術發(fā)展的瓶頸,BIM輕量化成為關鍵技術[11-12]。Zhou等[13]基于IFC數(shù)據(jù),利用Delaunay三角剖分算法對B-rep(Boundary Representation)模型進行重構并通過實例復用實現(xiàn)BIM輕量化存儲。Zhou等[14]提出S-LPM框架,通過對Mesh分割和重復體素去除操作,實現(xiàn)模型輕量化,Liu等[15]將其運用至智慧城市可視化管理中。

    綜上所述,由于IFC作為一種開放的數(shù)據(jù)標準,有較多的學者對其進行深入的研究。但由于IFC涉及廣泛的應用領域和模型參數(shù)化設計給幾何數(shù)據(jù)重構與數(shù)據(jù)輕量化帶來一定的困難。作為商業(yè)模型數(shù)據(jù),往往有軟件廠商提供相應的解決方案和軟件接口服務。轉換的數(shù)據(jù)會用于特定的平臺,轉換的細節(jié)對于用戶來說是“黑箱操作”。借助IFC、IndoorGML、FBX、OBJ等一些中間數(shù)據(jù)進行交換會產(chǎn)生一定的數(shù)據(jù)冗余和數(shù)據(jù)損失,隨著轉換鏈的增長,這些風險發(fā)生的概率會增加。本文從應用的角度出發(fā),借鑒RvtVa3c開源項目,通過Revit API,設計RVT轉GLB數(shù)據(jù)的程序接口,實現(xiàn)BIM數(shù)據(jù)的輕量化存儲,在一定意義上減少信息在轉換過程中發(fā)生丟失的現(xiàn)象。

    1 Revit幾何信息描述

    Revit是一個記錄與設計的平臺,一份Revit數(shù)據(jù)中不僅包含模型的幾何信息,同時包含設計所需的明細表、設計圖紙與二維和三維的視圖信息等。在數(shù)據(jù)提取與轉換過程中,首先需要了解Revit坐標系和幾何數(shù)據(jù)結構。

    1.1 Revit坐標系

    Revit使用三種坐標原點,分別為測量點、項目基點和圖形原點。以測量點為原點的坐標系為測量坐標系,用于描述項目基點在真實世界中的位置;以項目基點為原點的坐標系為局部坐標系,用于描述建筑間的相對位置關系;而以圖形原點為坐標原點的坐標系為模型坐標系,用于描述三維視圖中各個構件的幾何位置,原點為(0,0,0)。在三維視圖中,族實例可用Transform表示為:

    (1)

    式中:O為距離圖形原點的位移;(a1,a2,a3)T、(b1,b2,b3)T、(c1,c2,c3)T為族實例本地坐標系的坐標軸在模型坐標系中的向量表示。

    其次,Revit在三維視圖中使用左手坐標系,以屏幕向右為X軸正方向,豎直向上為Z軸正方向,垂直屏幕向里為Y軸正方向;而WebGL多使用右手坐標系,即水平向右為X軸正方向,豎直向上為Y軸正方向,垂直屏幕向外為Z軸正方向,圖1表示Revit坐標系轉向WebGL右手坐標系的過程,其中當模型需要整體偏移或姿態(tài)調整時,可在GLTF的根節(jié)點Node中指定偏轉矩陣。

    圖1 坐標轉換

    1.2 Revit模型信息組織

    Revit建模是基于對象的,族(或稱為圖元)是一類相同構件的抽象,如單扇窗、雙扇窗、百葉窗等,族的參數(shù)定義了構件的行為。族類別是對族集合的分類,如窗、柱、墻等,而族類型是對族的細分,它定義了某一族的不同尺寸與材料等。在三維視圖中所看到的每個構件,都是某一族類型的實例,對于尺寸大小固定的族類型可以通過Transform矩陣來構建不同位置的構件。

    在BIM輕量化中需要獲得每個構件的圖形信息,如圖2所示,每個構件可以由任意一個圖形元素構成。在數(shù)據(jù)轉化過程中,需要獲取組成這些圖形元素的點坐標、索引和法向量等幾何信息以及變換矩陣信息。

    圖2 Revit圖形元素

    2 GLTF信息描述

    一個好的數(shù)據(jù)結構影響著傳輸、渲染和功能實現(xiàn)。GLTF(GL Transmission Format)作為面向圖形實時快速渲染,可擴展的數(shù)據(jù)傳輸格式。它因直接傳輸給圖形API,不需要二次轉換,格式開源而得到業(yè)界的廣泛認可。因此本文選用GLB作為BIM模型信息的存儲格式。

    2.1 GLTF數(shù)據(jù)結構

    通常,一個GLTF文件包含以JSON格式存儲的場景信息文件和一個存儲幾何信息的二進制文件,gltf文件中buffers數(shù)組的每個元素通過URI引用bin文件。如圖3所示,gltf文件中包含場景、相機、節(jié)點樹、材料信息、緩沖區(qū)信息等,各個鍵值元素之間通過索引進而描述整個場景需要繪制的信息,bin文件主要包含頂點坐標、頂點索引、法向量、關鍵幀、綁定姿勢的逆矩陣等。而紋理信息可以在gltf中的images元素通過URI引用外部的圖片文件,也可以同幾何信息一樣寫入bin文件中或者以base64編碼寫入gltf的buffers中。

    在gltf場景文件中,scene指定scenes數(shù)組中需要渲染的node節(jié)點,nodes數(shù)組中的每個node元素既可以指向一個mesh元素,也可以有子節(jié)點。多個node可以指定同一個mesh元素,實現(xiàn)幾何數(shù)據(jù)的復用,減少數(shù)據(jù)冗余。圖4顯示從gltf和bin文件中獲取信息繪制線段的過程。圖中indices和POSITION分別指向頂點索引和頂點坐標的accessor存取器元素,accessor描述從bufferView中獲取數(shù)據(jù)方式和數(shù)據(jù)類型。同樣,兩個accessors中的bufferView各自指向bufferViews中對應頂點索引和頂點坐標的bufferView元素,bufferView描述其在整個二進制緩沖區(qū)的位置,字節(jié)長度以及數(shù)據(jù)存儲的間隔等信息。meshes中mode指示獲取數(shù)據(jù)后的繪制方式,如點、線、三角扇等。其中componentType、type、mode和target屬性值均是常量枚舉值。

    圖4 GLTF數(shù)據(jù)解析

    每個node還可以指定該節(jié)點的4×4矩陣用于調整姿態(tài),在渲染時,所有的子節(jié)點都必須經(jīng)過父節(jié)點矩陣左乘。一般的,node中的矩陣還可以分解為T×R×S,T與S分別表示偏移和縮放,均為32位浮點值類型、長度為3的數(shù)組,而R表示四元數(shù)旋轉,為32位浮點值類型、長度為4的數(shù)組。

    相比于歐拉變換容易產(chǎn)生萬向節(jié)死鎖問題以及矩陣變換至少需要存儲9個參數(shù)參與計算,四元數(shù)變換只需存儲4個參數(shù)就可以完成復雜的旋轉。令旋轉單位四元數(shù)q=[w,x,y,z],向量p=[0,vx,vy,vz],則經(jīng)過q變換后的向量為:

    p′=qpq-1

    (2)

    p′=[wxyz]×[0vxvyvz]×

    [w-x-y-z]

    (3)

    (4)

    因此,四元數(shù)(右手性)轉換成3×3矩陣為:

    (5)

    根據(jù)式(5),可以求得旋轉矩陣對應的四元數(shù)。

    2.2 GLB數(shù)據(jù)結構

    如前所述,通常GLTF文件主要包含gltf和bin文件,就意味著至少要向服務器發(fā)送兩次Http請求,而將bin數(shù)據(jù)以base64編碼寫入gltf文件中則在渲染時需要額外的解碼時間。在考慮后期工作需要頻繁調度數(shù)據(jù),本文最終采用GLB數(shù)據(jù)格式。

    如圖5所示,GLB文件是將gltf和bin文件整合在一起以小端字節(jié)序存儲的二進制文件。它開始包含12字節(jié)頭,分別為magic、version和length,用于描述文件的GLTF ASCII碼、版本信息和整個文件所占的字節(jié)長度。Chunk 0與Chunk 1分別為JSON存儲區(qū)和bin存儲區(qū),length和type均占四個字節(jié),用于描述JSON和bin的字節(jié)長度與識別JSON和BIN字符的ASCII碼。Chunk 0和Chunk 1各存儲的字節(jié)長度缺省為4的倍數(shù),否則在Chunk 0和Chunk 1后分別用0x20和0x00占位以滿足規(guī)則。

    圖5 GLB數(shù)據(jù)結構

    2.3 通用GLTF數(shù)據(jù)轉GLB數(shù)據(jù)

    如下所示,為通用的GLTF數(shù)據(jù)結構,將buffer中的uri屬性設置為null,借助Newtonsoft將GLFT對象序列化并壓縮成不含空格、換行符的JSON字符串,并將該字符串轉換為UTF-8編碼的字節(jié)數(shù)組。根據(jù)2.2節(jié)GLB的數(shù)據(jù)結構,用對應的數(shù)據(jù)類型依次寫入0x46546C67、2(GLTF版本為2)、總字節(jié)長度值、JSON字節(jié)長度值、0x4E4F534A、JSON字節(jié)數(shù)組、BIN字節(jié)長度值、0x003E4942,以及每個BinaryData的幾何數(shù)據(jù)。其中在JSON區(qū)與BIN區(qū)用0x20和0x00所占位數(shù)計入總字節(jié)長度和各區(qū)的字節(jié)長度。

    public struct GLTF

    {

    public Asset asset {get;set;}

    public List scenes {get;set;}

    public List nodes {get;set;}

    public List meshes {get;set;}

    public List buffers {get;set;}

    public List bufferViews {get;set;}

    public List accessors {get;set;}

    public List materials {get;set;}

    public List textures {get;set;}

    public List images {get;set;}

    public List samplers {get;set;}

    }

    public struct BinaryData

    {

    public List vertexes=new List();

    public List normals=new List();

    public List uvs=new List();

    public List indexes=new List();

    }

    3 RVT數(shù)據(jù)轉換

    3.1 數(shù)據(jù)轉換

    在BIM輕量化的工作中,用于數(shù)據(jù)轉換所設計的功能主要封裝在以下幾個類中:

    GLTF:包含GLTF的數(shù)據(jù)結構以及常量枚舉。

    Map:GLTF中Node、Material、Mesh等數(shù)據(jù)的容器,用于索引的維護和數(shù)據(jù)的提取與復用。

    GltfMath:用于坐標轉換、四元數(shù)、包圍盒、最值、向量和矩陣等計算。

    GltfCheck:對GLTF數(shù)據(jù)的檢查,剔除不合格數(shù)據(jù),維護索引。

    GltfExportContext:繼承Revit IExportContext接口,實現(xiàn)數(shù)據(jù)的讀取與寫入操作。

    其中,Revit提供IExportContext接口以支持BIM數(shù)據(jù)的提取,基本流程如圖6所示。通過遍歷每個構件,實現(xiàn)坐標、法向量、材質等信息的提取。

    圖6 IExportContext遍歷數(shù)據(jù)流程

    根據(jù)接口函數(shù)遍歷的流程,本文在每個函數(shù)中設計了不同的功能:

    OnViewBegin:獲取并計算模型相對測量點的旋轉四元數(shù)R和偏移矩陣T并賦給RootNode。

    OnElementBegin:創(chuàng)建Node節(jié)點,計算構件在三維視圖中的包圍盒,提取屬性信息。

    OnInstanceBegin:對含有非Instance的幾何信息,創(chuàng)建子節(jié)點、Mesh、Accessor、BufferView、Buffer對象,并維護之間的索引關系;實例化Instance子節(jié)點,添加父節(jié)點對Instance子節(jié)點的索引;計算偏轉矩陣并將矩陣入棧。

    OnMaterial:在幾何表面的呈現(xiàn)上,GLTF是基于物理的渲染,即通過金屬度和粗糙度來計算表面的反射效果。該函數(shù)負責將Revit的材質信息轉換為GLTF的材質信息,并提取材料屬性;對已存在相同的Material,記錄該Material的索引,將賦給要創(chuàng)建的Mesh.Primitive中的Material屬性。

    OnPolymesh:坐標轉換,借助RvtVa3c中的VertexLookupInt類實現(xiàn)頂點去冗。對于存儲單個Mesh數(shù)據(jù),需要一定的頂點冗余,如圖7所示,Face1、Face2、Face3共用v1頂點,但v1點可能對應多個法向量或紋理坐標,因此頂點去冗范圍被限制于繪制單個面的幾何數(shù)據(jù)。提取坐標、法向量,并生成在當前Mesh的頂點索引。

    圖7 面幾何數(shù)據(jù)去冗

    OnInstanceEnd:每個Instance對應一個Mesh,并賦予一個由InstanceNode.NodeName與InstanceNode.getSymbolId().IntegerValue組成的ID。如圖8所示,①和②是具有相同ID、不同位置的構件,對已存在相同ID的Mesh,添加Node對Mesh的索引;否則創(chuàng)建Mesh、Accessor、BufferView和Buffer對象,維護之間索引。計算該Instance的四元數(shù)R和偏移矩陣T,并賦給Node節(jié)點,矩陣出棧。

    圖8 族實例幾何數(shù)據(jù)的復用

    另外,族的結構影響數(shù)據(jù)讀取的行為,對于同一個族實例,也可以實現(xiàn)內(nèi)部幾何元素的復用,如圖9所示,欄桿構件中包含①實例,①實例嵌套著②和③子實例。

    圖9 復合族實例

    OnElementEnd:對含有非Instance的幾何信息,創(chuàng)建子節(jié)點、Mesh、Accessor、BufferView和Buffer對象,維護索引。

    OnLinkBegin:Revit建模過程中,通常會將項目文件拆分成多個子文件,目的在于方便管理和減少系統(tǒng)運行負擔。通過OnLinkBegin函數(shù),將鏈接文件的坐標系轉到當前項目文件的模型坐標系中,切換當前document對象,矩陣入棧,將遍歷鏈接文件中的構件。

    OnLinkEnd:矩陣出棧。

    Finish:文件寫入前進行數(shù)據(jù)清洗,并檢查GLTF中各個屬性內(nèi)部的枚舉值、字節(jié)統(tǒng)計值、數(shù)據(jù)類型、字節(jié)偏移以及屬性內(nèi)部和屬性之間索引的正確性。文件寫入時動態(tài)分配內(nèi)存,例如索引一般不會超過兩個字節(jié)。

    3.2 數(shù)據(jù)清洗

    在數(shù)據(jù)導出過程中,容易產(chǎn)生空節(jié)點,造成數(shù)據(jù)不夠整潔、數(shù)據(jù)量增大的情況,甚至會在讀取時發(fā)生解析錯誤。增加條件判斷以應對發(fā)生空節(jié)點的情況往往會因為條件判斷不當而導致數(shù)據(jù)損失,索引錯位而難以維護,并且也很難預防各種出現(xiàn)空節(jié)點的情況。因此本文不再關注對發(fā)生不合格節(jié)點情況的判斷,而是最后將每個構件所對應的節(jié)點從數(shù)據(jù)集中單獨提取出來進行維護。圖10所示為從數(shù)據(jù)集中提取并維護索引的雙扇窗節(jié)點及其子節(jié)點,其中Node1、Node6為空節(jié)點,需要被識別和清除。任何一個空節(jié)點的清除將會影響其他節(jié)點位置的變化、潛在空節(jié)點的產(chǎn)生以及節(jié)點在父節(jié)點中索引的變化。

    圖10 節(jié)點清洗

    對每個節(jié)點進行檢查,算法流程如下所示。

    1) 初始化,獲得Nodes數(shù)組中的根節(jié)點RootNode,根據(jù)RootNode中的children數(shù)組遞歸循環(huán)整個Nodes數(shù)組,在遞歸循環(huán)中實例化Segment,每個Segment中包含當前Node、Node在數(shù)組中的索引Index、Node的父節(jié)點索引ParentIndex以及在父節(jié)點的children數(shù)組中的索引DeleteIndex,返回包含Segment的數(shù)組Segments。

    2) 遍歷Segments,對每個Segment.Node進行檢查,偽代碼如下:

    輸入:Seg

    輸出:none

    BEGIN

    1: Node←Seg.Node;

    2: If(Node.Children is not null and

    Node.Children.Count is 0) Then

    3: Node.Children←null;

    4: If(Node.Children is null and Node.Mesh is null)

    Then//節(jié)點不合格

    5: Index←Seg.Index;

    //該節(jié)點的刪除會導致后面節(jié)點位置的變化

    6: For I←Index+1 to Segments.Count

    7: Do TemSeg←Segments[I];

    8: TemSeg.Index←TemSeg.Index-1;

    9: ParentIndex←TemSeg.ParentIndex;

    //對不是根節(jié)點的父節(jié)點children數(shù)組進行維護

    10: If ParentIndex is not -1 Then

    11: ParentNode←Segments[ParentIndex].Node;

    12: DeleteIndex←TemSeg.DeleteIndex;

    13: ParentNode.Children[DeleteIndex]=TemSeg.Index;

    //對父節(jié)點在待刪節(jié)點之后,對父節(jié)點索引減1

    14: If ParentIndex>Index Then

    15: ParentIndex←ParentIndex-1;

    16: Delete Segments[Index];//節(jié)點刪除

    17: PIndex←Seg.ParentIndex;

    18: DIndex←Seg.DeleteIndex;

    //不合格節(jié)點刪除對其父節(jié)產(chǎn)生影響

    19: If PIndex is not -1 Then

    20: PNode←Segments[PIndex].Node;

    21: For J←DIndex+1 to PNode.Children.Count

    22: Do

    Segments[PNode.Children[J]].DeleteIndex=J-1;

    23: Delete PNode.Children[DIndex];

    //遞歸,對父節(jié)點進行檢查

    24: Seg←Segments[PIndex] Goto(1);

    END

    3) 遍歷Segments,提取Node,返回Nodes數(shù)組。

    4 實驗與展示

    本文采用C#語言和Visual Studio 2012工具對Autodesk Revit 2018進行二次開發(fā)。將教學樓、住宅小區(qū)和某施工場地BIM模型作為實驗數(shù)據(jù),使用插件分別將其導出為未執(zhí)行輕量化操作的GLB數(shù)據(jù)、執(zhí)行輕量化操作的GLB數(shù)據(jù)和屬性信息文件,并用Draco對輕量化后的GLB數(shù)據(jù)進行壓縮,處理結果如圖11所示。

    圖11 Revit文件、未輕量化、輕量化與壓縮文件大小對比

    在調試過程中分別統(tǒng)計了各GLB數(shù)據(jù)中Mesh的數(shù)量,如表1所示。Mesh數(shù)量在一定程度上體現(xiàn)數(shù)據(jù)輕量化的效果,每多一個Mesh,在GLB中的bin區(qū)至少多包含一份幾何數(shù)據(jù),與之對應,在JSON區(qū)多包含一份獲取該幾何數(shù)據(jù)的描述信息。另外,輕量化的結果因模型而異,對于富含相同構件的BIM模型,輕量化的結果較好。其中恒大場布模型包含214個Mesh,原因在于該模型大部分所用的是自定義的族,細分的粒度不如Revit內(nèi)建的族,例如,在塔吊的模型解析過程中,幾何數(shù)據(jù)作為一個整體被提取。

    表1 GLB中Mesh數(shù)量統(tǒng)計

    同時,將住宅小區(qū)模型與恒大場布模型的輕量化并經(jīng)過Draco壓縮處理的結果上傳至阿里云服務器,輕量化未經(jīng)過壓縮處理的結果上傳至Cesium Ion平臺進行測試,如圖12所示,左側為Three.js渲染結果,右側為Cesium的渲染結果。其中,渲染被Draco壓縮的GLB模型之前需要解碼,解碼時間內(nèi)會阻塞前端頁面響應,HTML5引入了WebWorker工作線程可以很好地解決此問題,并且Three.js內(nèi)置了子線程解碼模型并將解碼后的數(shù)據(jù)發(fā)送給主線程進行渲染的功能。

    圖12 模型在Three.js與Cesium引擎中的渲染效果

    在對屬性信息提取的工作中,基于RvtVa3c對構件工程信息提取工作的基礎上,進一步提取材料屬性、物理屬性,并將屬性信息以JSON格式寫入info文件中,屬性ID與GLB中node.name一一對應,教學樓模型的屬性信息如圖13所示。

    對數(shù)據(jù)損失進行評估時,發(fā)現(xiàn)住宅小區(qū)模型構件總數(shù)為7 489個,而渲染結果顯示7 480個,損失9個構件,如圖14所示,在轉換過程中會有較小的數(shù)據(jù)損失。

    圖14 住宅小區(qū)模型數(shù)據(jù)轉換損失評估

    5 結 語

    BIM模型作為建筑參數(shù)化的載體,具有空間不均勻、高度復雜、語義豐富和數(shù)據(jù)量大等特性。將BIM與互聯(lián)網(wǎng)技術相結合,需要從數(shù)據(jù)結構與算法、數(shù)據(jù)傳輸以及計算機圖形學等方向做相應的研究。但是BIM有眾多的數(shù)據(jù)源,增加了數(shù)據(jù)使用成本,給數(shù)據(jù)融合造成了一定的難度。而IFC作為BIM的數(shù)據(jù)標準,借助其進行數(shù)據(jù)交換,很大程度上受限于各個軟件平臺對標準的實現(xiàn)程度以及模型輕量化帶來的難度。本文借助Revit API實現(xiàn)BIM輕量化,仍有很大的不足:(1) 該轉換方法僅僅適用于Revit平臺,不具有普適性。(2) 數(shù)據(jù)在轉換過程中仍有少量幾何數(shù)據(jù)損失,需要進一步完善。(3) 需對數(shù)據(jù)的加載以及渲染策略進行優(yōu)化。因此這些不足也是以后需要研究方向。

    猜你喜歡
    字節(jié)輕量化坐標系
    汽車輕量化集成制造專題主編
    No.8 字節(jié)跳動將推出獨立出口電商APP
    No.10 “字節(jié)跳動手機”要來了?
    一種輕量化自卸半掛車結構設計
    智富時代(2019年2期)2019-04-18 07:44:42
    解密坐標系中的平移變換
    坐標系背后的故事
    簡談MC7字節(jié)碼
    基于重心坐標系的平面幾何證明的探討
    瞄準掛車輕量化 鑼響掛車正式掛牌成立
    專用汽車(2016年1期)2016-03-01 04:13:19
    用戶:輕量化掛車的使用體驗
    專用汽車(2015年4期)2015-03-01 04:09:07
    成人国产麻豆网| 一级片'在线观看视频| 少妇人妻久久综合中文| 校园人妻丝袜中文字幕| 色视频www国产| 成年女人在线观看亚洲视频| 一级毛片黄色毛片免费观看视频| 亚洲国产精品专区欧美| 99九九在线精品视频 | 亚洲精品aⅴ在线观看| 亚洲av成人精品一二三区| 一级毛片久久久久久久久女| 啦啦啦啦在线视频资源| 日韩欧美一区视频在线观看 | 国产淫片久久久久久久久| 亚洲av不卡在线观看| 中国美白少妇内射xxxbb| 国内少妇人妻偷人精品xxx网站| 97超视频在线观看视频| 国内精品宾馆在线| 亚洲丝袜综合中文字幕| 在线观看av片永久免费下载| 建设人人有责人人尽责人人享有的| 中文字幕人妻熟人妻熟丝袜美| 黄色一级大片看看| 精品一区二区免费观看| 亚洲婷婷狠狠爱综合网| 精品亚洲成国产av| 天堂中文最新版在线下载| 国产欧美日韩综合在线一区二区 | 建设人人有责人人尽责人人享有的| 免费在线观看成人毛片| 80岁老熟妇乱子伦牲交| 日韩av不卡免费在线播放| 一边亲一边摸免费视频| 五月天丁香电影| 欧美精品高潮呻吟av久久| 最近中文字幕2019免费版| 国产一区二区在线观看av| 少妇猛男粗大的猛烈进出视频| 三级国产精品片| 国产又色又爽无遮挡免| 日韩一本色道免费dvd| 一边亲一边摸免费视频| 秋霞在线观看毛片| 内射极品少妇av片p| 自拍偷自拍亚洲精品老妇| 伦理电影免费视频| 建设人人有责人人尽责人人享有的| 另类亚洲欧美激情| 日本与韩国留学比较| 少妇的逼好多水| 插阴视频在线观看视频| 纯流量卡能插随身wifi吗| 亚洲欧美中文字幕日韩二区| 又黄又爽又刺激的免费视频.| 最近中文字幕2019免费版| 自拍偷自拍亚洲精品老妇| 九九久久精品国产亚洲av麻豆| 成人漫画全彩无遮挡| av国产精品久久久久影院| 人妻人人澡人人爽人人| 成人亚洲欧美一区二区av| 精品一区二区三卡| 久久久久久久久久成人| 国产伦在线观看视频一区| av视频免费观看在线观看| 亚洲国产精品999| 国产视频内射| 18禁动态无遮挡网站| 欧美另类一区| 免费av中文字幕在线| 亚洲熟女精品中文字幕| 国产免费福利视频在线观看| 大香蕉久久网| 久久亚洲国产成人精品v| 日本欧美国产在线视频| 最近手机中文字幕大全| 夜夜骑夜夜射夜夜干| 国产免费视频播放在线视频| 久久午夜综合久久蜜桃| 五月伊人婷婷丁香| 欧美日韩在线观看h| 日本与韩国留学比较| 2022亚洲国产成人精品| 观看av在线不卡| av天堂久久9| 国产精品久久久久久精品电影小说| 久久影院123| 久久久久久久精品精品| 18禁动态无遮挡网站| 色5月婷婷丁香| 男女边摸边吃奶| 精品一区二区免费观看| 国产精品一区www在线观看| 国产色爽女视频免费观看| 人人妻人人爽人人添夜夜欢视频 | 国产永久视频网站| 午夜激情久久久久久久| 99九九线精品视频在线观看视频| 国产深夜福利视频在线观看| 久久久久国产网址| 婷婷色综合大香蕉| 夜夜骑夜夜射夜夜干| 成年av动漫网址| 在线播放无遮挡| 在线观看av片永久免费下载| 高清不卡的av网站| 99热这里只有是精品在线观看| 成年av动漫网址| 少妇精品久久久久久久| 男女无遮挡免费网站观看| 高清视频免费观看一区二区| 熟女av电影| 久久毛片免费看一区二区三区| 精品一区二区三卡| 亚洲久久久国产精品| 日韩熟女老妇一区二区性免费视频| 久久av网站| 国产日韩欧美在线精品| 午夜影院在线不卡| 久久婷婷青草| 免费人成在线观看视频色| 高清在线视频一区二区三区| 夜夜爽夜夜爽视频| 青春草视频在线免费观看| 亚洲av成人精品一区久久| 午夜福利,免费看| 色94色欧美一区二区| 亚洲精品日韩av片在线观看| 少妇猛男粗大的猛烈进出视频| 欧美3d第一页| 久久人妻熟女aⅴ| 少妇被粗大的猛进出69影院 | 精品午夜福利在线看| 亚洲欧美日韩卡通动漫| 99久久人妻综合| 99re6热这里在线精品视频| 永久网站在线| 日本vs欧美在线观看视频 | 校园人妻丝袜中文字幕| 日韩成人av中文字幕在线观看| 啦啦啦中文免费视频观看日本| 日韩强制内射视频| 高清av免费在线| 国国产精品蜜臀av免费| 人人妻人人添人人爽欧美一区卜| 嫩草影院入口| 99久久精品国产国产毛片| 老司机亚洲免费影院| 2021少妇久久久久久久久久久| 成年人午夜在线观看视频| 麻豆成人午夜福利视频| 亚洲精品456在线播放app| 免费看不卡的av| 欧美日韩一区二区视频在线观看视频在线| 天天操日日干夜夜撸| 日韩欧美 国产精品| 一区二区三区精品91| 婷婷色麻豆天堂久久| 菩萨蛮人人尽说江南好唐韦庄| 国产亚洲欧美精品永久| 亚洲va在线va天堂va国产| 午夜老司机福利剧场| 午夜激情福利司机影院| 国产精品一二三区在线看| 国产精品蜜桃在线观看| 三上悠亚av全集在线观看 | 亚洲内射少妇av| 亚洲成人手机| 午夜福利视频精品| 国产精品无大码| av一本久久久久| 简卡轻食公司| 国产色爽女视频免费观看| 欧美日韩亚洲高清精品| 久热这里只有精品99| av有码第一页| 看免费成人av毛片| 观看av在线不卡| av一本久久久久| 亚洲欧美清纯卡通| 国产精品久久久久久久久免| 国产成人freesex在线| 亚洲精品日韩在线中文字幕| 一级片'在线观看视频| 日日爽夜夜爽网站| 久久久久久久国产电影| 少妇的逼水好多| 内射极品少妇av片p| 国产av码专区亚洲av| 少妇人妻一区二区三区视频| 国产成人91sexporn| 少妇人妻久久综合中文| 自拍欧美九色日韩亚洲蝌蚪91 | 国产亚洲精品久久久com| 国产老妇伦熟女老妇高清| 亚洲高清免费不卡视频| a 毛片基地| 久久精品国产亚洲网站| 亚洲精品国产av蜜桃| 人妻 亚洲 视频| 国产探花极品一区二区| 老司机影院毛片| 亚洲伊人久久精品综合| 国产精品欧美亚洲77777| 国产日韩欧美视频二区| av有码第一页| 亚洲怡红院男人天堂| 大片免费播放器 马上看| tube8黄色片| 国产熟女欧美一区二区| 九色成人免费人妻av| 韩国av在线不卡| 国产一区二区三区综合在线观看 | 欧美高清成人免费视频www| av播播在线观看一区| 国产精品久久久久成人av| 亚洲国产毛片av蜜桃av| 亚洲av中文av极速乱| 六月丁香七月| 国产精品麻豆人妻色哟哟久久| 国产永久视频网站| 黄色怎么调成土黄色| 亚洲精品一区蜜桃| 亚洲熟女精品中文字幕| 日本欧美国产在线视频| 秋霞伦理黄片| 国产精品秋霞免费鲁丝片| 热99国产精品久久久久久7| 久热这里只有精品99| 免费播放大片免费观看视频在线观看| 男人和女人高潮做爰伦理| 中文资源天堂在线| 亚洲精品久久久久久婷婷小说| 99九九线精品视频在线观看视频| videos熟女内射| 国产探花极品一区二区| 3wmmmm亚洲av在线观看| 国产片特级美女逼逼视频| 伊人久久国产一区二区| av播播在线观看一区| 亚洲高清免费不卡视频| a级一级毛片免费在线观看| 人人妻人人澡人人看| 日韩免费高清中文字幕av| 欧美精品高潮呻吟av久久| 观看av在线不卡| 日韩免费高清中文字幕av| 欧美激情国产日韩精品一区| 国产欧美另类精品又又久久亚洲欧美| 久久99热6这里只有精品| 亚洲欧美日韩东京热| 九色成人免费人妻av| 久久精品夜色国产| 久久国产精品男人的天堂亚洲 | 国产乱人偷精品视频| 欧美激情国产日韩精品一区| 你懂的网址亚洲精品在线观看| 哪个播放器可以免费观看大片| 亚洲av福利一区| 久久国产亚洲av麻豆专区| 精品一区二区三区视频在线| 亚洲精品一区蜜桃| 国产毛片在线视频| 免费观看在线日韩| 久久精品国产自在天天线| 少妇的逼好多水| 一本久久精品| 免费人成在线观看视频色| 免费观看在线日韩| 美女国产视频在线观看| 久久午夜福利片| 久久精品国产亚洲av天美| 亚洲在久久综合| 日韩伦理黄色片| 黑人猛操日本美女一级片| 日韩免费高清中文字幕av| 国产精品蜜桃在线观看| 国产精品国产av在线观看| 天堂中文最新版在线下载| 最新中文字幕久久久久| 国产一区亚洲一区在线观看| 一二三四中文在线观看免费高清| 亚洲精品日本国产第一区| av在线app专区| 亚洲无线观看免费| 成人毛片a级毛片在线播放| 97超视频在线观看视频| 亚洲人与动物交配视频| 亚洲国产日韩一区二区| 18禁在线播放成人免费| videos熟女内射| 亚洲精品自拍成人| 男人爽女人下面视频在线观看| 一个人看视频在线观看www免费| 国产 一区精品| 最近2019中文字幕mv第一页| 亚洲成人av在线免费| 黄色怎么调成土黄色| 欧美丝袜亚洲另类| 日本黄大片高清| 亚洲精品久久午夜乱码| 又爽又黄a免费视频| 亚洲熟女精品中文字幕| 18禁在线播放成人免费| 精品99又大又爽又粗少妇毛片| 精品熟女少妇av免费看| 中文精品一卡2卡3卡4更新| 晚上一个人看的免费电影| 国产免费福利视频在线观看| 在线观看三级黄色| a 毛片基地| 人妻 亚洲 视频| 久久热精品热| 自拍欧美九色日韩亚洲蝌蚪91 | 成人美女网站在线观看视频| 国产女主播在线喷水免费视频网站| 久久久久久久精品精品| 成人二区视频| 少妇高潮的动态图| 草草在线视频免费看| av国产久精品久网站免费入址| 涩涩av久久男人的天堂| 亚洲精品视频女| 免费观看无遮挡的男女| 高清在线视频一区二区三区| 欧美三级亚洲精品| 天美传媒精品一区二区| 欧美成人精品欧美一级黄| 国产精品一区二区在线观看99| 一级毛片 在线播放| 国产精品一区www在线观看| 欧美日本中文国产一区发布| 亚洲av成人精品一二三区| 国语对白做爰xxxⅹ性视频网站| 久久国产精品男人的天堂亚洲 | av卡一久久| 又黄又爽又刺激的免费视频.| 人体艺术视频欧美日本| 一级片'在线观看视频| 欧美xxxx性猛交bbbb| 久久国产精品大桥未久av | 99久国产av精品国产电影| 欧美97在线视频| 国产成人精品无人区| 久久久久久久精品精品| 亚洲精品中文字幕在线视频 | 午夜av观看不卡| 一区二区三区免费毛片| 老熟女久久久| 2022亚洲国产成人精品| av国产精品久久久久影院| 十八禁高潮呻吟视频 | 六月丁香七月| 熟妇人妻不卡中文字幕| 亚洲成色77777| 亚洲精品乱久久久久久| 免费观看性生交大片5| 免费看日本二区| 人人妻人人澡人人爽人人夜夜| 91aial.com中文字幕在线观看| 大片免费播放器 马上看| 国产在线一区二区三区精| 美女脱内裤让男人舔精品视频| 夫妻午夜视频| 色视频www国产| 老司机影院毛片| 精品一区二区免费观看| av国产久精品久网站免费入址| 免费少妇av软件| av.在线天堂| 久久久久视频综合| 最近手机中文字幕大全| 伊人久久国产一区二区| 国产白丝娇喘喷水9色精品| 精品国产乱码久久久久久小说| 日韩欧美精品免费久久| 欧美亚洲 丝袜 人妻 在线| 搡女人真爽免费视频火全软件| 国产av国产精品国产| 国产无遮挡羞羞视频在线观看| 久久久久久久久久成人| 婷婷色综合大香蕉| 人人澡人人妻人| 99热全是精品| 少妇精品久久久久久久| 国产高清不卡午夜福利| 久久99蜜桃精品久久| 国产日韩一区二区三区精品不卡 | 不卡视频在线观看欧美| a级毛片免费高清观看在线播放| 国产深夜福利视频在线观看| 色吧在线观看| 九九爱精品视频在线观看| 日韩不卡一区二区三区视频在线| 中文字幕亚洲精品专区| 亚洲精品,欧美精品| 成人二区视频| 国产午夜精品久久久久久一区二区三区| 婷婷色av中文字幕| 国产亚洲5aaaaa淫片| 丰满少妇做爰视频| 色网站视频免费| 嫩草影院新地址| 欧美激情极品国产一区二区三区 | 又大又黄又爽视频免费| 免费在线观看成人毛片| 亚洲精品日韩在线中文字幕| 日韩 亚洲 欧美在线| 国产极品天堂在线| 亚洲精品成人av观看孕妇| 亚洲欧美精品专区久久| 99热6这里只有精品| 一区二区三区精品91| 最近的中文字幕免费完整| 一个人看视频在线观看www免费| 高清不卡的av网站| 人妻制服诱惑在线中文字幕| 能在线免费看毛片的网站| 性高湖久久久久久久久免费观看| av在线播放精品| h日本视频在线播放| 久久影院123| 国产精品99久久久久久久久| 青青草视频在线视频观看| 日韩欧美一区视频在线观看 | 国产成人午夜福利电影在线观看| 成人漫画全彩无遮挡| 国产午夜精品一二区理论片| 精品久久国产蜜桃| 久久亚洲国产成人精品v| 男女边吃奶边做爰视频| 午夜福利,免费看| 日韩强制内射视频| 一个人免费看片子| 日韩大片免费观看网站| 国产高清三级在线| av一本久久久久| a级一级毛片免费在线观看| 久久久久人妻精品一区果冻| 日韩在线高清观看一区二区三区| 搡老乐熟女国产| 精品人妻熟女毛片av久久网站| 一级毛片久久久久久久久女| 国产白丝娇喘喷水9色精品| 久久6这里有精品| 日日摸夜夜添夜夜添av毛片| 卡戴珊不雅视频在线播放| 国产精品国产av在线观看| 国产女主播在线喷水免费视频网站| a 毛片基地| 亚洲欧美一区二区三区黑人 | 在线观看www视频免费| 少妇被粗大猛烈的视频| 如何舔出高潮| 亚洲天堂av无毛| 在线亚洲精品国产二区图片欧美 | 校园人妻丝袜中文字幕| 日韩一区二区视频免费看| 又粗又硬又长又爽又黄的视频| 两个人免费观看高清视频 | 一级毛片我不卡| 久久久久国产网址| 大片电影免费在线观看免费| 久久久久久久久久成人| 久久精品久久精品一区二区三区| 夜夜看夜夜爽夜夜摸| 一区二区三区免费毛片| 欧美精品一区二区大全| 熟女人妻精品中文字幕| 亚洲国产精品一区二区三区在线| 亚洲av免费高清在线观看| 国产免费福利视频在线观看| 三级国产精品片| 国产精品国产三级专区第一集| 中文字幕制服av| 久久精品久久久久久噜噜老黄| a 毛片基地| 亚洲天堂av无毛| 特大巨黑吊av在线直播| 国产欧美另类精品又又久久亚洲欧美| 黄色欧美视频在线观看| 在线观看美女被高潮喷水网站| 亚洲久久久国产精品| 国产综合精华液| av天堂中文字幕网| 99久久精品国产国产毛片| 国产精品国产三级专区第一集| a级毛色黄片| 黄片无遮挡物在线观看| 久久精品国产a三级三级三级| 亚洲综合色惰| a级一级毛片免费在线观看| av一本久久久久| 大香蕉久久网| av在线播放精品| 欧美日本中文国产一区发布| 99久国产av精品国产电影| 中文天堂在线官网| 纯流量卡能插随身wifi吗| 搡女人真爽免费视频火全软件| 亚洲三级黄色毛片| av一本久久久久| 三级经典国产精品| 午夜老司机福利剧场| 久久久久久久久久久久大奶| 少妇熟女欧美另类| 国产精品成人在线| 亚洲av在线观看美女高潮| 国国产精品蜜臀av免费| 尾随美女入室| 一本久久精品| 成人毛片60女人毛片免费| 嘟嘟电影网在线观看| 美女主播在线视频| 国产一区有黄有色的免费视频| 九色成人免费人妻av| 国产在线一区二区三区精| 国产亚洲午夜精品一区二区久久| 国产又色又爽无遮挡免| 成人无遮挡网站| 夜夜看夜夜爽夜夜摸| 日本黄色片子视频| 国产 一区精品| 中文字幕免费在线视频6| 2022亚洲国产成人精品| 亚洲av免费高清在线观看| 日韩熟女老妇一区二区性免费视频| 久久 成人 亚洲| 尾随美女入室| 精品午夜福利在线看| 成人综合一区亚洲| 视频区图区小说| 欧美3d第一页| 亚洲天堂av无毛| 建设人人有责人人尽责人人享有的| 日产精品乱码卡一卡2卡三| 亚洲国产色片| 国产有黄有色有爽视频| 亚洲精品久久午夜乱码| 久久久久国产网址| 青青草视频在线视频观看| 欧美激情国产日韩精品一区| 国产精品女同一区二区软件| 国产乱人偷精品视频| 国产成人91sexporn| 内地一区二区视频在线| 自拍偷自拍亚洲精品老妇| 国产精品一区www在线观看| 伦理电影大哥的女人| av天堂久久9| 黄色欧美视频在线观看| 亚洲天堂av无毛| 免费观看的影片在线观看| 亚洲在久久综合| 精品久久国产蜜桃| 中文在线观看免费www的网站| 免费观看在线日韩| 一本大道久久a久久精品| 九草在线视频观看| 搡老乐熟女国产| 少妇精品久久久久久久| 爱豆传媒免费全集在线观看| 亚洲av不卡在线观看| 亚洲精品乱码久久久久久按摩| 午夜免费鲁丝| a级一级毛片免费在线观看| 婷婷色综合大香蕉| 久久久久久久大尺度免费视频| 亚洲欧美精品专区久久| 久久精品夜色国产| 成人免费观看视频高清| 亚洲成人手机| 人妻制服诱惑在线中文字幕| 一级毛片久久久久久久久女| kizo精华| 国产精品三级大全| 国产一区有黄有色的免费视频| 亚洲伊人久久精品综合| 国产欧美日韩一区二区三区在线 | 成人亚洲精品一区在线观看| 高清不卡的av网站| 精品少妇黑人巨大在线播放| 免费久久久久久久精品成人欧美视频 | 精品人妻熟女av久视频| 欧美精品人与动牲交sv欧美| 婷婷色av中文字幕| 日韩伦理黄色片| 国产色爽女视频免费观看| 国产精品人妻久久久影院| 国产精品.久久久| 亚洲av免费高清在线观看| 国产极品粉嫩免费观看在线 | 妹子高潮喷水视频| 亚洲av成人精品一二三区| 国产伦理片在线播放av一区| 好男人视频免费观看在线| 亚洲欧美精品专区久久| 亚洲图色成人| 一级毛片久久久久久久久女| 国产av精品麻豆| 成人二区视频| 亚洲一级一片aⅴ在线观看| 国产在线免费精品| 少妇 在线观看| 国产欧美日韩综合在线一区二区 | 久久99蜜桃精品久久| 国产深夜福利视频在线观看| 国产综合精华液| 国产精品久久久久久久电影| 晚上一个人看的免费电影| 各种免费的搞黄视频| 久久久久久久久久久免费av| 久久99热6这里只有精品|