2010-11-18 41 views
0

Je travaille sur une application web .net mvc. Une fonctionnalité de base est la nécessité de prendre un fichier DWG (AutoCAD) et de le restituer sur l'application Web, de telle sorte que l'utilisateur puisse zoomer/dévier et se déplacer dans le dessin. J'ai également besoin d'ajouter des superpositions au dessin pour représenter diverses choses. J'essaye de trouver la meilleure manière de faire ceci. Il existe différentes bibliothèques .net CAD, mais le mieux que vous pouvez obtenir sur le navigateur sont des outils qui vont convertir le fichier en une image sur le serveur et le rendre sur la page.Idées pour le rendu de dessins 2d autocad dans un navigateur

Mon idée actuelle est de convertir le dwg en image, utiliser quelque chose comme google maptiler pour hacher l'image à différents niveaux de zoom, puis utiliser quelque chose comme openlayers.org pour présenter cela à l'utilisateur.

Existe-t-il d'autres/plus faciles/meilleures solutions?

Répondre

0

Vous voudrez peut-être regarder l'application Freewheel d'Autodesk, qui vous permet de rendre des fichiers 2D et 3D sur le serveur.

Une autre possibilité serait de convertir les parties pertinentes du fichier de dessin dans votre propre format, et de les restituer avec Javascript. Vous pouvez utiliser une bibliothèque comme Dojo pour faciliter cela. Cette approche est plus de travail, mais vous obtiendrez une compatibilité entre les navigateurs et plus de contrôle sur l'affichage.

+0

La roue libre est un peu limitée pour nos besoins. L'autre option fonctionnerait bien que, comme vous l'avez dit, c'est beaucoup plus de travail et je ne pense pas que cela nous offrirait beaucoup plus que d'utiliser OpenLayers –

1

Vous pouvez convertir le format DWG au format SIG comme une image géoréférencée (par exemple, geoTIFF), puis utiliser un serveur de carte pour diffuser l'image dans OpenLayers ou Google Maps. Essentiellement, le serveur de carte découpe les dalles pour vous à la volée, comme elles sont demandées. Cela signifie que vous pouvez prendre en charge le zoom et le panoramique arbitraires.

C'est la façon la plus «pure» de faire les choses avec OpenLayers - et c'est beaucoup plus facile que cela puisse paraître. MapServer & GeoServer sont de bons serveurs de carte open source gratuits, ce sont des choses de vanille pour eux. Par le passé, je découpais moi-même des images dans des tuiles Google Maps, mais je ne reviens pas.