To convert 2d contours from shp files you can use this script
{ ///////// Convert Contour Polylines and polygons imported from a GIS ShapeFile to 3D Polys and set height from Record Elevation, assumes Record Field for height to called ELEV ///////
© 2012 Nemetschek Vectorworks. Distribute freely.
(*jcf*)
/////////////}
PROCEDURE GISContoursTo3DPolys; {main}
PROCEDURE my_polyline(H:HANDLE);
VAR
My_Poly: HANDLE;
BEGIN
My_Poly := ConvertTo3DPolys(H);
END;
PROCEDURE My_Height(H:HANDLE);
VAR
HT:REAL;
BEGIN
HT := Str2Num(GetRField(H,GetName(GetRecord(H,1)),'ELEV'));
HT := HT*12;
Move3DObj(H,0,0,HT);
END;
BEGIN
foreachobject(HUngroup,T=GROUP);
foreachobject(my_polyline,T in [POLYLINE,POLY]);
foreachobject(HUngroup,T=GROUP);
foreachobject(My_Height,T=POLY3D);
END;
Run (GISContoursTo3DPolys) ;