3D Building polygons to a Raster dataset

4816
4
04-08-2010 05:47 PM
DarrenMurphy1
New Contributor
Thanks in advance to to anybody willing to help me out here.

Background:

I have these two building structures (Washington DC) in two formats: a polygon shapefile (with a height field) and a Multipatch Features (I haven't any luck on using this one).

Current Issue:

My goal is to incorporate one of these two building structures into a raster dataset. I would like to perform a "realistic" urban environment Viewshed Analysis with Spatial Analyst. I also have a multipoint feature class that might work for this too.

I am thinking of a couple approaches here:

Option 1

1. Convert the multipoint feature class to a TIN > convert the TIN into a Raster
2. Building Polygons extrude (height) with ArcGlobe > convert 3D polygon into a Raster (this is where I'm treading on water)
3. Spatial Analyst, Map algebra - merge (boolean operation) the two rasters together

Option 2

1. Convert the multipoints to a Raster dataset and be done with it. I would get the same feel.

Again thanks for the help,
Darren
0 Kudos
4 Replies
EricRice
Esri Regular Contributor
Hi Darren,

If I'm understanding your question correctly it seems akin to asking how to incorporate tree canopy heights into a surface to have a more realistic Viewshed analysis in a non urban environment. Would you agree?

If the goal is to incorporate the building heights (basic obstructions to visibility) I would use the polygon you have with the height field. I'm assuming this is the footprint of said building... Convert your polygon to a raster using the height field in the Value field parameter. When you do this make sure you set the output extent to that of your DEM. This is a critical step. Next you will have to add the DEM and this new raster together. Its not as simple as just adding them together though. You're on the right track with using Map Algebra. Basically you want to say where my building raster is null, replace it with the value of the DEM, and where it is not null, add the two rasters together. It looks like this. [newsurf] = CON(ISNULL([polygrid]),[dem],[dem] + [polygrid])

If you're using ArcGIS 10, the syntax is somewhat different so please reference the Help. Also, if you're using ArcGIS 10 you may want to look at 3D Analyst Line of Sight tools. They now accept multipatch features as obstructions in the analysis.

Hope this was helpful.
0 Kudos
AthenaWong
New Contributor II
Hi, I'm stumbling upon the same problem.. except that I'm still using ArcGIS 9.3.
I've a building feature with elevation value and converted it to Raster dataset attempting to merge it onto an existing dem. 

I don't quite follow what you suggested above:

"Basically you want to say where my building raster is null, replace it with the value of the DEM, and where it is not null, add the two rasters together. It looks like this. [newsurf] = CON(ISNULL([polygrid]),[dem],[dem] + [polygrid])"

Do I have to set my building raster to null before running the above conditional statement?
I've done it using Map Algebra -> SIngle Output Map Algerbra but what happened was the new surface cropped out half of my existing dem (leaving an area where my buildings reside).  

Hope you can give me a hand here....
THANKS!
0 Kudos
JakubSisak
Occasional Contributor III
I never tried the folowing script but it might be what you need:
http://arcscripts.esri.com/details.asp?dbid=15173

Also, have you tried modeling the buildings into a TIN surface then converting the TIN to Raster and running viewshed?
Building can be put into a TIN surface but i believe that the walls need to be very slightly slanted. Create the footprint and give them an elevation then create the top outlines (i tried buffer -0.1m) and give elevation value. Convert TIN to nodes, remove all nodes that intersect footprints. Then create the tin again using the nodes and the footprint and top of building outlines. After this you might need to add just the footprint breaklines to the TIN to correct any triangulation anomaly. Finally conver TIN to raster and run viewshed analysis. I have not tried this with viewsheds nor have i tried converting such TIN results into a raster but i frequently model man-made structures into surface TIN models using similar techniques then use the resulting surfaces for various analysis.
0 Kudos
TonyMorone
New Contributor
Darren1, you mention that you have a building shapefile with height field. Is that publicly available? I downloaded BldgPoly from dcgis but I don't see a height field.
0 Kudos