The Integration of GIS with 3D / Animation Software for Presentations to Local Government

Scott E. Dickison

Louie T. Greenwell

 

Abstract

Recently, FMSM Engineers has been involved in the development of presentations for local governments and other municipal organizations using large quantities of spatial data. A three-dimensional approach was used to illustrate several of the spatial issues rather than the traditional two-dimensional (map) approach. It was found that in presentations to local governments a greater understanding of the spatial issues was achieved when 3D/animations were used. Through the integration of GIS technology with 3D/animation software, a more effective presentation can be prepared. This paper addresses that preparation and illustrates the smooth integration of GIS with 3D/animation Software.

Introduction

FMSM Engineers has been tasked by various government agencies with the preparation of three-dimensional (3D) animations for use in their internal presentations and their presentations to local governments. The United States Army Corps of Engineers, Huntington District, is developing a flood protection plan for the city of Marlinton, West Virginia. Marlinton lies at the confluence of the Greenbrier River and Knapp Creek and has a history of severe flooding. The Corps asked FMSM to produce two flyby animations. One animation details the existing conditions at Marlinton and the other details the proposed flood protection measures.

This paper addresses the preparation of the existing conditions flyby animation and shows the integration of GIS with 3D/animation software. The 3D/Animation software packages used in the creation of these flybys are the World Construction Set (WCS) by 3D Nature and 3D Studio Max (3DSMax) by Kinetix. The GIS software used was ARC/INFO 7.2.1 and ArcView 3.2 by Environmental Research Systems Institute.

Steps of Preparation for the Marlinton Existing Conditions Flyby

There are several steps involved in the creation of a three dimensional animation. The Digital Elevation Model (DEM) must be prepared for import into WCS. In the case of the Marlinton existing conditions flyby the DEM, was developed from an ARC/INFO GRID. This GRID was a combination of data provided by the Corps of Engineers for the detailed study area and two USGS 7.5 minute DEM’s. A Triangulated Irregular Network (TIN) of the detailed study area was generated with contours and spot elevations. The, the TIN was then converted to a GRID within ARC/INFO and merged with two USGS 7.5 minute DEM’s to provide terrain outside of the detailed study area. The GRID was converted into an ASCII GRID using ARC/INFO for import into WCS.

The 3D objects were created using WCS and 3DSMax. The building footprints were first separated into individual polygon shapefiles using ArcView 3.2. During this process each building footprint polygon was assigned an unique identifier. Next, using an ARC/INFO 7.2.1. AML, the building footprint polygons were imported as lines and were densified. These resulted in the arcs being assigned an ID and sequenced as shown in Figure 1.

Figure 1: Arc ID sequencing

The resulting arc coverage was then projected so that its polygon label had coordinates of 0,0. This new, projected coverage was converted into a DXF file that was then imported into 3DSMax. Once in 3DSMax a script extruded the building footprint and exported this as a 3Dmax, three-dimensional object. For an example of an extruded building footprint see Figure 2. For more information on the AML or the script used to extrude the building footprints see Appendix A.

Figure 2: 3D Studio Max extruding building footprint

Vector data was imported into WCS. This vector data represented the points that the buildings were associated with and also the roads, streams, and foliage.

Figure 3: Vector import into World Construction Set

The fourth step is was to set up path that the camera traveled along. This was accompished by digitizing a vector over the digtial elevation model within WCS. After this arc was digitized the camera’s orientation was locked so that it was aligned to the path of travel.

The final step is to render the animation. Render times vary based on desired level of reality and the number of three-dimensonal objects. It was noted that on a computer with an Intel Celeron 400mhz processor running Windows NT that it took two hours to render a frame that contained 880 individual 3D objects and twelve minutes to render a frame that contained only four 3D objects.

Figure 4: Example of a completed frame.

 

 

Data Issues

GIS Data Integration

There were two types of GIS data used in the development of the existing conditions flyby. The first data type was vector data. Vector data, in the form of points and lines, was used to place features on the digital elevation model. The vector data for the detailed study area came from the data provided to FMSM Engineers by the Corps of Engineers. This data was in Microstation DGN format and was converted to ARC/INFO coverages using ARC/INFO 7.2.1 Points were used to place the individual 3D objects. In the case of the Marlinton existing conditions flyby the 3D objects were the buildings and the bridges. Lines were used to define and place linear features such as roads and streams. Lines were also used to form polygons that defined areas of foliage on the DEM. To facilitate ease of integration it was necessary to insure that the vector data was projected into the Geographic projection and that the correct attributes were assigned. It was necessary in the attributing to make sure that the name of the 3d-object that was to be assigned to the individual point was present to insure association. This can be a critical point in WCS when dealing with a large number of objects. Attributes were assigned in ArcView 3.2 with an Avenue script.

 

 

 

Vector Data Import Formats

World Construction Set

3D Studio Max

AutoCad DXF

AutoCad DWG

Esri Shapefiles

AutoCad DXF

USGS ASCII DLG

 

The second data type was a digital elevation model (DEM). WCS is able to handle several different formats of DEM but requires that the DEM be in the geographic projection. The other important issue is grid resolution. Smaller cell sizes generally result in better appearing DEM’s but often result in longer rendering times.

Figure 5: Digital Elevation Model for Marlinton, WV. Study area outlined in yellow.

Three Dimensional Objects

A three dimensional object is most often used to provide a realistic representation of a man-made feature but is not limited to that. In the case of the Marlinton existing conditions flyby, he building footprints were extruded to create realistically shaped buildings that were in their correct locations and had the correct orientation. The 3D objects were centered at coordinates 0,0 in "object space." Their source vectors were stored in UTM projection and had meters as the unit of measurement. The vectors were first projected so that the centers of the building footprints, represented by the polygon labels in ARC/INFO, were centered on 0,0 in UTM coordinates. This was done so that when the vectors were imported into 3DSMax they centered on 0,0 in "object space." After the objects were created it was exported back to WCS and was attached to it’s corresponding point.

Appendix A

This is the dxfbuilder.aml used to convert the shapefiles to DXF files with their arcs properly sequenced.

/***********************************************************

/* DXFBUILDER.AML

/*

/* Author(s): Scott Dickison

/*

/* Fuller, Mossbarger, Scott and May Engineers, Inc.

/* 1901 Nelson Miller Parkway

/* Louisville, KY 40223

/***********************************************************

/*

/* Program: dxfbuilder.aml

/*

/* Description: Takes a list of shapefiles supplied by an info file calld bldgslist

/* (bldgslist has a single field (name,16,16,C)) densifies the arcs so

/* they get resquenced in order, projects them so they center around

/* 0,0 and then converts them to a DXF.

/*

/* Output: A single DXF file, centered on 0,0, for every building footprint

/* in the bldgslist info file.

/*

/* Usage: &r dxfbuilder.aml

/*

/* Variables:

/*

/* Routines Called:

/*

/* Author/Revisions: Scott Dickison / 5-14-00 (original coding)

/**********************************************************

&severity &error &ignore

cursor bldgs declare bldglist info ro

cursor bldgs open

cursor bldgs first

&do &while %:bldgs.AML$NEXT%

display 0

/* Convert shapefile to line coverage

shapearc %:bldgs.name% [before %:bldgs.name% .] line

/* Densify arcs so they are resequenced in order from a start node

densifyarc [before %:bldgs.name% .] # 50 arc

copy [before %:bldgs.name% .] temp

build temp poly

createlabels temp

centroidlabels temp

&s covername = temp

arcedit

ec %covername%

ef labels

sel all

put temp2

quit

build temp2 point

arcplot

&s coords = [show select temp2 point 1 XY]

quit

&describe [before %:bldgs.name% .]

[unquote '']

/* Get coordinates of polygon label

&s xval [extract 1 %coords%]

&s yval [extract 2 %coords%]

/*

/* Projection information may change depending upon the projection of your

/* source data. This sets center of polygon to 0,0

project cover [before %:bldgs.name% .] dxfbld

input

projection utm

units meters

zone 17

datum nad83

parameters

output

projection utm

units meters

zone 17

datum nad83

xshift -%xval%

yshift -%yval%

parameters

end

/* Convert coverage to DXF file.

arcdxf [before %:bldgs.name% .].dxf dxfbld dxfbld

kill [before %:bldgs.name% .] all

kill dxfbld all

kill temp all

kill temp2 all

cursor bldgs next

&end

/**************************************************************************

 

This is the 3D Studio Max script that extruded the building footprints and exported them out as 3D-objects.

files = getFiles "x:\\marlinton\\covers\\dxf\\*.dxf"

for f in files do

(

resetmaxfile #noprompt

importfile f

theShapes=shapes as array

for i = 2 to theShapes.count do (addAndWeld theShapes[1] theShapes[i] .1)

max modify mode

modPanel.SetCurrentObject $

modPanel.addModToSelection (Extrude ())

$.modifiers[#Extrude].amount = 3

exportFile ("x:\\marlinton\\covers\\bldgs-3d\\"+ (getFileNameFile f) +".3ds") #noprompt

)

 

 

 

Author Information

Scott E. Dickison

GIS Programmer

FMSM Engineers, Inc.

1901 Nelson Miller Parkway

Louisville, KY 40223

Phone: (502)212-5030

FAX: (502)212-5055

e-mail: sdickison@fmsmengineers.com

 

Louie T. Greenwell

GIS Manager

FMSM Engineers, Inc.

1901 Nelson Miller Parkway

Louisville, KY 40223

Phone: (502)212-5000

FAX: (502)212-5055

e-mail: lgreenwell@fmsmengineers.com