CAD图DWG解析WebGIS可视化技术分析总结

CAD图DWG解析WebGIS可视化技术分析总结 - vjmap - 博客园

背景

AutoCAD是国际上著名的二维和三维CAD设计软件,用于二维绘图、详细绘制、设计文档和基本三维设计。现已经成为国际上广为流行的绘图工具。.dwg文件格式成为二维绘图的事实标准格式。

但由于AutoCAD私有格式,只能在CAD软件上编辑查看,如何发布至Web上,并在上面做应用开发,如数据展示,GIS分析等,一直是业内头疼的事情。

解析DWG格式

DWG与DXF
DWG格式文件是Auto CAD 软件的专有格式,类似于doc,是封闭的不开放的,且是二进制的。而 DXF 格式则是文本格式的,用于交换数据的,使用Auto CAD软件本身就可将 DWG文件另存为 DXF文件。

现有的能解析DWG格式的开源 CAD项目:
1、FreeCAD:开源,2D支持较好,对DXF支持较好。

需要使用 TeighaFileConverter(商业软件)将 DWG格式转换为 DXF格式。因为 FreeCAD 基本不支持DWG格式。

参考:FreeCAD and DWG Import - FreeCAD Documentation

  1. 其它 github 解析、浏览CAD文件的一些项目,未验证是否有效:
    https://github.com/LibreCAD/LibreCAD
    https://github.com/janopontarollo/DXF2JSON
    https://github.com/wanttobeno/dwg2dxf
    https://github.com/apendua/dxf2svg
    https://github.com/haplokuon/netDxf
    https://github.com/mozman/ezdxf

  2. 采用OpenDwg Toolkit实现对DWG文件的解析。由于ObjectDBX应用程序只能在Windows平台上采用Visual C++来开发,而网络应用开发环境要比AutoCAD单个软件运行的环境要复杂的多。OpenDwg Toolkit简称ODT。

  3. GDAL中也部分支持dwg. AutoCAD DWG — GDAL documentation

解析完dwg文件是很重要的第一步,那如何Web展示?
下面就一些常见的方法做下分析和总结:

Web展示方法

方法根据实现的方式不同,大致可以分为两类:

有插件ActiveX方式

ActiveX控件是MicrosoftActiveX技术的一部分。是一种很早的技术。只能适合于windows平台。

实现原理大致是:

解析AutoCAD图形绘制,并封装成AcitveX控件,用于PC端和Web端显示。比较典型的有梦想CAD控件

优点:性能好,功能全,能编辑二次开发
缺点:Web端需要安装插件,只支持windows,而Chrome已不再支持ActiveX技术,同时无法利用html5做展示效果,效果一般

无插件Html5方式

HTML5是互联网的下一代标准,是构建以及呈现互联网内容的一种语言方式.被认为是互联网的核心技术之一。

实现原理大致是:

解析AutoCAD图形格式,然后转成html5所能绘制的格式如svg,geojson,栅格瓦片,在前端渲染。

这块如果从底层去实现,有很大的工作量。一般利用GIS生态圈的开源项目来搭建。

例如可以利用 GDAL把dwg或dxf格式导成shpGeoJson,后端利用 GeoServerMapServer发布成服务,前端利用LeafletOpenLayers去展示。

技术栈:
后端 GeoServer或 MapServer
前端 LeafletOpenLayers

但CAD与GIS在数据结构上存在较大的差异,CAD数据类型较为丰富,支持简单点、线、面、多义线、椭圆、块、文字等多种数据类型,而转换到GIS中,只转换为点、线、面、注记等类型,这使得CAD图形数据不能很好的满足GIS的要求,如:CAD中的Text数据类型,直接转换后只转换为GIS中的Point。通过这种转换去绘制,会导致和原始CAD图形绘制不太一样, 同时CAD里面有线型、字体也会导致绘制上的差异性。

同时对于GIS而言,有个地理坐标系的概念,而一些图纸,如户型图等就没有地理坐标系的概念。

此方案优缺点如下:

优点:能利用GIS生态圈,容易实现;能利用html5做应用开发,开发简单,效果好
缺点:存在着和真实CAD图形绘制差异的问题;坐标系也是个问题

结论

上述两种方案各有利弊,前者主要应用于图形的编辑展示,后面应用于基于图形的可视化开发展示。各有优缺点,貌似鱼和熊掌不可兼得!

那有没有一种方案,既能在Web端和真实CAD图形绘制一样,同时不能安装插件,也能利用html5做应用开发呢?

其实也是可以的。不过技术难度比较大。
实现原理大致是在后端解析CAD的图形数据不进行转换直接渲染,同时保存图形的几何数据至空间数据库用于以后查询分析;前端不用安装插件,加载渲染出的栅格和矢量数据,完美解决上述问题;
比较典型的有 唯杰地图vjmap
具体原因细节可查看 地图服务 | 唯杰地图-VJMAP

效果如下:

image-20211013154837821

还有一个方案是利用AutoCAD的自有云产品 Autodesk Forge,能在浏览器中渲染 3D 和 2D 模型数据,不过其数据得保存在AutoCAD公有云上。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
商场平面DWGCAD合集(54份): 一套小服装店的设计.dwg 中源商贸城建筑全套.dwg 临街商场方案设计.dwg 五层商场设计方案.dwg 五金批发市场建筑.dwg 六层商业建筑平立面方案.dwg 商业大厦建筑施工.dwg 商业楼1幢施工.dwg 商业楼4幢施工.dwg 商业楼全套建筑施工.dwg 商场全套建筑施工.dwg 商场全套施工.dwg 商场平立剖(05.2.25).dwg 商场平立面.dwg 商场平面施工.dwg 商场平面纸.dwg 商场平面建筑.dwg 商场平面设计方案.dwg 商场建筑平立面方案.dwg 商场建筑设计方案.dwg 商场整体平面布置.dwg 商场施工.dwg 商场设计全套.dwg 商场设计方案.dwg 商场设计方案.dwg 商场设计施工.dwg 商场门窗.dwg 商店设计建筑.dwg 商铺建筑施工.dwg 商铺设计扩出.dwg 多层商场建筑施工.dwg 大型商场全套.dwg 大型商场建筑施工.dwg 大型商场建筑施工1.dwg 小区超市建筑施工纸.dwg 小型超市全套建施.dwg 小型超市建筑.dwg 小超市施工.dwg 岳堤超市方案.dwg 新东方百货大楼.dwg 新铺位小商品市场施工.dwg 某商业城建筑设计.dwg 某商场全套纸.dwg 某商场平立剖面.dwg 某商场平面.dwg 某商场建施(附带地下二层停车场).dwg 某商场方案修改.dwg 某商场设计方案.dwg 某大型商场建筑施工.dwg 某大型商场方案.dwg 某欧式商场平立面建筑.dwg 浙江商城施工.dwg 综合贸易市场规划.dwg 银泰服饰城建筑结构.dwg

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值