0

我正在开发一个 .net mvc Web 应用程序。核心功能是获取 DWG (AutoCAD) 文件并在 Web 应用程序上渲染它,这样用户就可以放大/缩小并在图形中移动。我还需要在绘图中添加叠加层以表示各种事物。

我正在尝试找出最好的方法来做到这一点。那里有各种 .net CAD 库,但您可以获得的最好的基于浏览器的工具是将文件转换为服务器上的图像并在页面上呈现。

我目前的想法是将 dwg 转换为图像,使用 google maptiler之类的东西以各种缩放级别分割图像,然后使用 openlayers.org 之类的东西将其呈现给用户。

还有其他/更简单/更好的解决方案吗?

4

2 回答 2

1

您可以将 DWG 转换为地理参考图像(例如 geoTIFF)等 GIS 格式,然后使用地图服务器将图像提供给 OpenLayers 或 Google 地图。

本质上,地图服务器会根据您的请求即时为您切碎图块。这意味着您可以支持任意缩放和平移。

这是使用 OpenLayers 做事的“最纯粹”的方式——而且它比听起来容易得多。MapServerGeoServer是很好的免费开源地图服务器,这对他们来说是普通的东西。过去,我曾经自己将图像切碎成 Google 地图图块,但我现在不会回去了。

于 2010-12-03T12:10:54.150 回答
0

您可能想查看 Autodesk 的Freewheel应用程序,它允许您在服务器上渲染 2D 和 3D 文件。

另一种可能性是将绘图文件的相关部分转换为您自己的格式,并使用 Javascript 渲染它们。您可以使用像Dojo这样的库来促进这一点。这种方法工作量更大,但您将获得跨浏览器兼容性和对显示的更多控制。

于 2010-11-19T01:10:29.660 回答