How do I convert a 2D section drawn in CAD into 3D polyline in ArcGIS. By 3D polyline I mean PolylineM(Z).

I have 300 sections. Drafting it manually seems a bit laborious.

Any Ideas?

  • 1
    Are these sections referenced? (Grid, Coordinate System) If these sections have been drawn in plan view, do you need to convert from plan view to vertical sections? What is the goal here? 3D visualization? – Jakub Sisak GeoGraphics Aug 9 '11 at 13:35
  • Sections have been drawn in CAD, as regular 2D sections (with use of regular polyline not 3D). Sections are not referenced in the section drawing. However I do have .shp file which contains sections in plan view (this is referenced). Yes, I need to convert it from plan to vertical. The goal is to reconstruct river bed in 3D from 2D sections for further processing. – Tomek Aug 10 '11 at 5:46

Convert your CAD polylines to a shapefile or feature class then:

Using ArcGIS 9.3.1 the 3D Analyst toolbar in ArcScene you could use the Convert Feature to 3D tool.

Using ArcGIS 10 you could use the Feature To 3D By Attribute tool.


You can also use the Shape to ShapeZ tool from ET Geowizards.

  • Appreciate an advice, though I can't see this working with the datas I have. I do have typical river x-section which contains profile in 2D. It is described by distance of x-section and heights at certain distance. I do have lines in .shp that mark location in plan. The problem is that heights are described in CAD text and I do not have them in any sort of organized structure. I can move section around in ACAD to match Y with heights described by text, but still, how to get it in to ARCGIS??? Thanks, T. – Tomek Aug 9 '11 at 12:09
  • 1
    @Tomek, so the height info are contained in the text annotation layer in CAD? If so, I think in ArcCatolog you can right click the text/annotation layer and export it out to a point shp. I believe the heights info will be included in the shp dbf. You could then interplote the point shp to a elevation raster that can be used to assign Z info to your polyline layer. – artwork21 Aug 9 '11 at 13:04
  • @Tomek, also you will have to add a new numeric field to the point layer and field calulate the text numbers over to before interplotating. – artwork21 Aug 9 '11 at 13:11
  • right direction @artwork21 – Brad Nesom Aug 9 '11 at 15:02
  • ok. I'll give it a shot. – Tomek Aug 10 '11 at 6:49

If I had FME (or the Data Interoperability Extension) then I would use the CoordinateSwapper transformer to switch the Y and Z axes. The NeighborFinder transformer could be used to pick the nearest text label in order to determine the elevation.

  • Sadly, I do not have FME or Data Interoperability Ext. I'll give a shot with trial version of FME and will see, if it works. If it does it will be add on my "to buy" list. Thanks. – Tomek Aug 10 '11 at 6:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.