Adding Elements to the GSD Metropolitan Model
As you have seen in the introduction to the Boston Metropolitan Model, and in the first tutorial, the Boston Metropolitan Model consists of a repository of lots of 3d models of places, and procedures for retrieving the apropriate models to render a model of time or design-specific scenario. This tutorial discusses how the Model repository serves as a framework for organizing existing CAD models, or as a big head start for the cration of for new models representing existing conditions, proposed future scenarios or representations of places that do not exist any more.
We begin by pulling a scenario out of the model repository, which yields a model of the ground condition in our area of interest and every building. Some of the buildings are rough, and we will also get any detailed models of buildings apropriate to our scenario that have been uploaded to the model repository. These are all exported to Sketchup, which provides us with an excellent starting place for making improved models of existing, historic or proposed buildings. Because the Sketchup model is georeferenced, and allows us to export our new 3d elements back to GIS, all of our efforts will be saved back to the model repository so that next time we pull out data for this area, we can build on our existing work rather than starting all over again from scratch each time!
Right-Click Here to download the tutorial dataset. This is exactly the same dataset that is described in the tutorial, Extracting Scenario Models from the Model Repository. To make this more interesting we have removed the Gund Hall models from the multipatch table so that we can get some experience assimilatig CAD models into the repository from Sketchup.
The tutorial dataset also inludes a dxf model of gund hall thanks to
Harvard Planning and Real Estate, and a historic map of the context
of Gund Hall frm a 1903 Map of Cambridge by G.W. Bromley, thanks to
the Harvard Map Collection and David Rumsey. YOu can find lots of
information about Sources of Geographic
You will need to have the
Sketchup5 GIS Plugin installed and the Sketchup toolbar added to ArcMap.
The metropolitan model schema is relatively simple as relational
data models go, and yet it is not completely self-explanitory. To
explain it completely is beyond the scope of this tutorial.
For an in-depth description of the Metromodel Schema
to download a paper all about this model and its schema.
You will need to have the Sketchup5 GIS Plugin installed and the Sketchup toolbar added to ArcMap.
The metropolitan model schema is relatively simple as relational data models go, and yet it is not completely self-explanitory. To explain it completely is beyond the scope of this tutorial. For an in-depth description of the Metromodel Schema click here to download a paper all about this model and its schema.
This tutorial will include these major milestones:
Install the Sketchup Plugin for ArcGIS
You will find sketchup installed on all of the public computers at the GSD, but because of peculiarities of the sketchup arcgis plugin, each user must install the ArcGIS plugin on the computer and load the special sketchup tool into ArcGIS. The resources and instructions for installing Sketcup and the ESRI ArcGIS plugin are available in the GSD software directory L:\public\software\winapps\sketchup\sketchup5. If you are using a lab machine the only thing you need to do is load the sketchup plugin into ArcGIS.
Loading the Sketchup plugin to ArcGIS
- Choose Tools->Customize
- Click the Toolbars tab at the top of the customize dialog then click Add from File button.
- Find the place on your computer where you installed the sketchup plugin files -- which on public computers is c:\program files\arcgis\Sketchup5
- Choose the file, FeaturesToSkp.dll
- You will now have an option in your toolbars menu for the Sketchup tools. Check it and the sketchup toolbar will appear.
Arrange Data for Export to Sketchup
To begin, we need to arrange our 2d data in ArcMap in preparation to exporting to sketchup. We will use the Current Multipatch View and the Current Roofprint View which were created with a model in the Scenarios toolbox. We will use these views to select the apropriate roofprints and 3d models to export to sketchup, along with the TIN (triangulated irregular network) and the aerial photo covering our study area.
- Open the Clipped_2d.mxd arcmap document in your tutorial folder.
- Right-click the Current Multipatch View layer and select all of the elements
- Similarly select the elements from the Current Roofprints View
- Use the Add Data Button to add the image 1903_Bromley0.tif to your map.
- Click the Export to Sketchup button and export the Roofprints extruding to the value of their Roof attribute. Export the Multipatches and the TIN, and make sure to export the Orthophoto Raster as a TIFF.
- This should give you a nice sketchup model of the existing condition with the aerial photo underneath.
- Select the orthophoto, right-click on it, and chose Explode, to ungroup the image.
- While the Ortho is still selected, right-click again and choose Texture->Projected to make this image projectable.
- Pick the Paintbucket Tool from the toolbar, and hold the alt key to access the Eyedropper Tool. Click on the Orthophoto image to sample this as the active texture.
- Now double click on the TIN, to open this group for editing, and triple-click on it so that all of its connected faces become selected.
- Now grab the Paintbucket again and click on the TIN. YOu have now mapped the image to the TIN.
- If you like, you can now right-click the TIN and choose Smooth-Soften Edges to get rid of those unsightly TIN-Edges!
Import CAD DataWhile sketchup is not a good tool for organizing data that covers entire cities in all sorts of temporal and thematic dimensions it does have a great advantage of being able to assimilate 3d information from all sorts of sources, it also have a terrific interface for editg and creating and organizing three dimensional models. Since our repositoryt schema is based on enterprise-scale relational database managament systems, it is scalable witout limit. This suggests an arcitecture where the repository can be used to deliver base context models -- and more detailed assets where available -- to sketchup, and users can use this model in sketchup for making more articulated models of places or for importing existing models that may have been created for specific projects. The new elements created in sketchup can then be uploaded to the repository!
Overview of the Metromodel Workflow
Registering a CAD Model with the model Schema
- In Sketchup choose File->Import 3d Model, set your Files of Type pulldown to ACAD files, and choose the 378_GUND.dwg file from your tutorial dataset folder. (thanks to Peter Siebert of Harvard Planning for this model!)
- The Gund model uses feet as its units, so use your import options to specify this. We will talk about the other options here in class. If you are curious, or have problems importing a CAD file, you may want to experiment with these.
- The Model gets inserted in soem wierd place. SOmetimes the CAD data is interted somwehere very far away and you must use the Zoom Extents tool to find it. In any case, the next step is to use the Move Tool to move the CAD model somewhere above its final ground position.
- Orthophotos can be tricky, they are corrected for errors of displacement for ground features, but rooftops may be significantly displaced because of their relative position between the camera's lense and the ground. In order to get the GUnd Model into the correct postition, we will use the North-East corner of the back steps which we can see clearly on the ground in the orthophoto.
- Use the Move Tool to click on the NE corner of the stairs, then drag and snap this corner to the right position on your sketchup terrain.
- Congratulations! you have just georeferenced your CAD model!
Importing your New Model Element to the Repository
The next step is to convert your new gund Hall model to an ESRI multipatch so that it can be imported to the Metromodel schema. The multipatch data format is means of encapsulating 3d geometry with textures into a simple data object that does not require any external resources for its rendering. As such the multipatch of gund hall can be inserted into our metropolis-wide multipatch table. THen we can update the attribute columns for this new feature to identify such attributeeas as its name, the date it was built, etcetera. The attributes for each multipatch allow us to use a simple query to select the apropriate elements to reconstruct the scene for a given date or design scenario.
Exporting a Buillding from Sketchup to a ESRI Multipatch Featureclass
- In Sketchup, select your gund Hall model. It is grouped so that the entire thing can be selected with one click.
- Choose File->Export->3d Model
- In thefirst dialog box set the Export Type pulldown, choose ESRI Multipatch, then browse to your tutorial folder, and enter a name for the personal geodatabase that will be created to hold your new multipatch feature class.
- In the next dialog box, make sure the checkboxes for Store Sketchup Data with Feature and Use Selected Items Only are checked and click the Create button to create a new feature class to temporarily store your new multipatch object.
- IN the next dialog box, you get to choose a name for your featureclass. It doesn't really matter. Call it Gund.
Insert your Multipatch into the Metromodel Schema
- Use the Add Data button in ArcMap to add your new feature-class to your Acrmap document.
- Open the Attribute table for your new feature and inspect its attributes. Select your new multipatrch and observe that it turns blue on the map.
- Now open the attribute table for the Multipatch layer that is part of your clip of the metromodel database. Inspect the attributes here.
- Add your ArcToolbox panel, find the wizard at Data Management->General->Append.
- In the Append dialog, choose your new Gund featureclass as your Input Features and choose your Multipatch table for your Output Features. Change the Schema Type option to No Test.
- Click OK to append your new multipatch to your clip of the Multipatch Table.
Update the Attributes of your new Multipatch
- Add your Editor toolbar
- Start Editing, and choose your Boston_Multiscene geodatabase as your workspace.
- Open the attribute table of your Multipatch layer.
- The last row in this table should be your new multipatch. Click the box at the far left of this row to select it and check the map to see if this is your GUnd Hall.
- YOu can type in the cells of this table to edit the values.
you need not set them all. Just set these as follows:
- Name = Gund Hall
- Skyline = N
- Scenario_Name = Built
- Project_Name = Gund
- Date_Min = 1/1/1972
- Date_max = 1/1/2100
- Date_d = Y (this is the date dependency flag)
- ID = pbc50 (it is just important that this ID is unique.)
- Choose Save Edits from your Edit Menu
About the Substitutions Table
An important part of the metropolitan model scehma is that it contains a complete seamless model of the metropolitan area with all of the buildings as LIDAR-derived roofprint models. There also may be any number of detailed models of a given building or site. When the user specifies a date or a design scenario, the correct multipatches are selected, and then based on this selection, the apropriate roofprint models are selcted to fill in the rest of the model. In order for this to work, all that is necessary is to store the information about which roofprints should not be selected when a specific multipatch is going to be rendered. This information is stored in the multipatch table. If it is updated when your multipatch is put into the database, then we never have to worry about it again. When we want to render a scenario, we need only specify which multipatches we need.
Updating the Substitutions Table
- In ArcMap, Set your Table of Contents to Source Mode so that you can see the non-graphic Substitutions Table
- Open this table and examine its attributes.
- Turn on your Roofprints layer and use the Information Tool to learn the ID of the roofprint that covers Gund Hall. hint: it is 15506.
- You should still be Editing in your Boston_Multiscene Schema.
- Enter 15506 in the Roofprint_IDfield of a new row in the substitutions table.
- Enter pbc50 (the ID of your new Gund Hall multipatch) in the multipatch_ID field.
- Save your edits
Checking Your Work
The benefit of moving your data from sketchup to the GIS-based metropolitan model is that this gis based model is that these models can be much bigger in spatial and temporal scope than a sketchup database. We are wormking with a clip of the metroplitan-wide model, and this clip is convenisnt since we can work on it locally and easily edit it, and we can fly through it in 3d taking advantage of very quick disk access. Even though our sample clip is relatively small, it could easily cove an area much larger than could be easily rendered in sketchup. So if wa have questions incolving very large areas, it makes sense to move data from Sketchup to our clipped GIS database. Also, once we have integrated our new models from sketchup into this portable clipped data model, it is very easy to upload these models into the central on-line model-scehma so that they will be safe and part of our collaborative shared model infrastructure. To do this we merely have to append the new wors from the multipatch and substitutions table to the on-line tables.
The next and final step in this tutorial will be to use some of the prepared queries in our metropolitan model tutorial database to check that our new multipatch and its attributes are working properly.
Retrieving a Scenario Using Queries
- Open the ArcGlobe project, Clipped_3d.3dd that is in your tutorial folder.
- Refresh all of the layers
- Open your toolbox panel and add the Scenarios Toolbox from your tutorial folder (if necessry)
- Double-Click on your Create Current Scenario model. If you like, you can look at the SQL for selecting multipatches.
- Observe how the SQL for selecting roofprints uses a nested sub-select clause to select the roofprints that are not reflected in the substitutions table as being related to any of the multipatches that are selected with the same SQL logic that was used in our Multipatch query.
- When we click OK on this model, two new view layers are created. When we refresh these, and set their extrusion properties as necessary, we can see if our queries and attributes are working properly.