Upload
tasha-adams
View
21
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Jessica Fendos MN Department of Employment and Economic Development University of Minnesota, CURA. Constructing an Open Source Powerhouse. - PowerPoint PPT Presentation
Citation preview
Constructing an Open Source Powerhouse
Jessica Fendos
MN Department of Employment and Economic DevelopmentUniversity of Minnesota, CURA
2007 FOSS4G Conference Sept. 25, 2007
Sept. 25, 2007 FOSS4G Conference
Background information Data source and dynamic interface Dynamic mapping and reporting Building blocks of Open Source bundle Observations on strengths and limitations Questions
Presentation Outline
2
Sept. 25, 2007 FOSS4G Conference
Minnesota 3D Overview
A GIS and internet-based mapping application aims to narrow the spatial mismatch between affordable housing and jobs for the Twin Cities metro area.
A portal that connects the general public, planners, developers, and public policy makers to employment, housing and economic development data.
3
4
Cross-Sector Data
5
Sept. 25, 2007 FOSS4G Conference
Developed by DEED and CURA, sponsored by Technology Opportunities Program grant.
Partner with the U.S. Census Bureau, Metropolitan Council, Housing Link, MN Department of Human Services, MN Child Care Resources,…
Launched in October of 2006, visited by users worldwide.
Partnership
6
Sept. 25, 2007 FOSS4G Conference
Built on an open source bundle integrating MapServer, PostgreSQL, and Chameleon
Interactive system that automates commute shed and labor shed maps and community profile reports generation.
The Technical Side ….
7
2007 FOSS4G Conference Sept. 25, 2007 8
PostGIS Data
Chameleon Application
Developer
M3D Users
The Open Source Framework
.phtml
.map
.html (CWC2, .js, .css)
*Based on Chameleon Web Mapping Framework, Tyler Mitchell, 2005.
Sept. 25, 2007 FOSS4G Conference
3 Dynamics
9
2007 FOSS4G Conference Sept. 25, 2007 10
Sept. 25, 2007 FOSS4G Conference
Census Origin Destination Data
11
Local Employment Dynamics Data
Job counts
Work block group Work X, Y Od04_wbg w
Home block group Home X, Y
w.hbg
Sept. 25, 2007 FOSS4G Conference
Map Commute shed and Labor shed
Dynamic Mapping
12
Select by Area Rectangle City Neighborhoo
d
Display by Dot (block group) City Both
2007 FOSS4G Conference Sept. 25, 2007 13
Sept. 25, 2007 FOSS4G Conference
Dynamic Reports
14
Select by Area Rectangle City Neighborhood
Select Report Workers Workplace Housing Demographics
2007 FOSS4G Conference Sept. 25, 2007
Sept. 25, 2007 FOSS4G Conference
Methodology - Building Blocks
16
M3D.map
M3D.phtmlM3D.html
SQL Connection String
MapServerMapfile
PostgreSQL
DatabaseChameleo
nTemplates
Sept. 25, 2007 FOSS4G Conference
LAYER # Begin Laborshed
NAME "Laborshed“
STATUS OFF
DATA "the_geom FROM dummypoint"
CONNECTION "user=XXXX password=XXXX dbname=M3D host=XXXX port=XXXX"
CONNECTIONTYPE postgis
TYPE POINT
CLASSITEM "all_jobs"
CLASS NAME ">100 Commuters" EXPRESSION ([all_jobs]>100) SYMBOL "circle" SIZE
12 COLOR 0 109 44 END …
END # End of Laborshedshed layer
Dynamic Mapping - Mapfile
17
Define Display Area Type
Sept. 25, 2007 FOSS4G Conference
LAYER # Selected Block Groups
NAME "BG_SELECT"
STATUS OFF
DATA "the_geom from censusbg_attributed"
CONNECTION "user=XXXXX password=XXXX dbname=M3D
host=XXXX port=XXXX"
CONNECTIONTYPE postgis
TYPE LINE
CLASS NAME "Selected Block Groups" STYLE SIZE 2 COLOR 0 255 255
SYMBOL "circle" END END
END # Selected Block Groups
Dynamic Mapping - Mapfile
18
Define Selection Area Type
<script language="JavaScript" type="text/javascript">
function SelectTool(){
for (var i=0; i < document.forms[0].rpt.length; i++) {
if (document.forms[0].rpt[i].checked)
{
rad_val = document.forms[0].rpt[i].value; }
}
document.forms[0].SelectValue.value=(rad_val);
}
</script>
Dynamic Mapping - M3D.html
19
<input type="hidden" name="SelectValue“ value="[$SelectValue$]">
2007 FOSS4G Conference Sept. 25, 2007 20
Dynamic Mapping - M3D_Report.html
<script language="JavaScript" type="text/javascript">
if(document.forms[0].SelectValue.value == 'LSHED')
{document.write('<input type="radio“ name="rpt“
onChange="SelectTool()" value="LSHED"
checked>Dot ');}
else
{document.write('<input type="radio" name="rpt“
onChange="SelectTool()“ value="LSHED">
Dot ');}
</script>
2007 FOSS4G Conference Sept. 25, 2007 21
Dynamic Mapping - M3D.html
<script language="JavaScript" type="text/javascript">function SelectRegion(){
for (var i=0; i < document.forms[0].area.length; i++) {
if (document.forms[0].area[i].checked) {
rad_val = document.forms[0].area[i].value; } }
document.forms[0].SelectType.value=(rad_val); }
</script>
<input type="hidden" name="SelectType" value="[$SelectType$]">
2007 FOSS4G Conference Sept. 25, 2007 22
Dynamic Mapping -M3D_Report.html
<script language="JavaScript" type="text/javascript"> if(document.forms[0].SelectType.value == 'RECT') {document.write('<input type="radio" name="area" onChange="SelectRegion()" value="RECT" onClick="ROIRectTool57()" checked="true">Rectangle (as drawn)<br/>');} else {document.write('<input type="radio" name="area" onChange="SelectRegion()" value="RECT" onClick="ROIRectTool57()">Rectangle (as drawn) <br/>');} </script>
<cwc2 type="ROIManager" mode="normal" onroichanged="myROIChanged()"/>
<cwc2 TYPE="ROIRectangleTool" Visible="false" Label="Select Area..." toolset="SelectArea"> </cwc2>
g
<cwc2 type="UpdateMap” IMAGEWIDTH="120" LABELALIGN="LEFT" styleresource="NavButtons" visible="true" imagetip="generate report based on selection" label="Generate Map/Report">
<image state="normal"/>
<image state="selected"/>
<image state="hover"/>
</cwc2>
Chameleon ROI Widgets
23
Dynamic Mapping- Chameleon MapDHTML Widget
24
if ($this->getVar( 'SelectValue' ) == "LSHED")
{
if ($this->getVar( 'SelectType' ) == "RECT") {
$oLayer = $poMap->getlayerbyname('Laborshed');
$oLayer->set("status", MS_ON);
$oLayer->set("data", " the_geom FROM (SELECT bg_centroid.the_geom AS the_geom, bg_centroid.objectid AS oid, w.all_jobs FROM bg_centroid right join (select w.hbg_fips, sum(w.jobs_all) as all_jobs from od04_wbg w where the_geom && SetSRID('BOX3D($rMinX $rMinY,$rMaxX $rMaxY)'::box3d,-1)
AND within(the_geom, SetSRID('BOX3D($rMinX $rMinY,$rMaxX $rMaxY)'::box3d,-1) ) GROUP BY w.hbg_fips ORDER BY all_jobs desc ) as od04_wbg w on bg_centroid.fips = w.hbg_fips) AS new_table USING UNIQUE oid USING SRID=-1");
}
}
Sept. 25, 2007 FOSS4G Conference
Strengths Free and Integrated:
Open source software bundle provides the foundation to construct spatial data powerhouse relatively quickly, e.g. MS4W package.
Support Network: Open source users’ group provides support.
Limitations Technical Consultation:
Long distance communication. Application Development Cost:
Takes efforts to integrate building blocks contributed from various sources.
Strengths and Limitations
25
Sept. 25, 2007 FOSS4G Conference
http://jessicafendos.com/FOSS07
Flash Website
26
2007 FOSS4G Conference Sept. 25, 2007 27
Acknowledgements
Oriane Casale, DEED, LMISteve Hine, DEED, LMI
Kris Nelson, University of Minnesota, CURAJeff Matson, University of Minnesota, CURA
Jessica Deegan, Metropolitan CouncilSteve Lime, Department of Natural
ResourcesJulien Samuel-Lacroix, MapGears
2007 FOSS4G Conference Sept. 25, 2007 28
The End….