A Sample Print Web Service Utilizing ArcGIS Server and ArcObjects Cheryl Spencer, IndyGIS Marianne Cardwell, Woolpert.

Slides:



Advertisements
Similar presentations
WEB DESIGN TABLES, PAGE LAYOUT AND FORMS. Page Layout Page Layout is an important part of web design Why do you think your page layout is important?
Advertisements

Geo GIS Practicuum Introduction to ArcGIS 8 Exercise 5 - ESRI Virtual Campus Chapters 1-2, ArcGIS Methods …
Intro to ArcMap. What is ArcMap? Accessing ArcMap Data used by ArcMap SymbologyLabelsGraphics Printing/Exporting maps.
Creating Map Books ArcMap 10 Data Driven Pages
Introduction to Geographic Information Systems Spring 2013 (INF 385T-28437) Dr. David Arctur Lecturer, Research Fellow University of Texas at Austin Lectures.
Map Making Made Easy in ArcGIS
Understand the Macromedia Flash environment Open a document and play a movie Create and save a movie Work with layers and the timeline Plan a Web site.
Intro to ArcGIS for New Users. ArcGIS Desktop Advanced GeoprocessingArcInfo ArcReader Data Access Map Viewing Query Advanced EditingArcEditor ArcView.
Fireworks MX. 2 Lesson 1a—Create Slices & Hotspots n Fireworks allows you to add animation (behaviors) already written in ___________. n However, users.
Introducing ArcGIS Desktop
For Mapping Biodiversity Data Data Management Options.
Unit One: GIS Concepts In this unit… ► What is GIS? ► Types of GIS data ► What can you do with GIS? ► ArcGIS 9 license levels ► Basics of the ArcGIS 9.
Development of a Web Based B&B Reservation System Elizabeth Gates 22July04.
Technical Support: (989) GIS and Mapping Procedures in ArcMap 9.x Creating an ArcMap Project Editing an ArcMap Project Printing an ArcMap Project.
Tuesday Session 2 – Intro to ArcMap Starting Arc Map – Empty Map – Map Template – Project Data View – Display – Source – Selection Layout View – Draft.
ModelBuilder at ArcGIS 9.2 Lyna Wiggins Rutgers University May 2008.
19 th Advanced Summer School in Regional Science Overview and more advanced directions with ArcGIS.
Lab 8: Map Layout window- use asset up to Print Maps You have been asked to create a professional looking map of your study area. The map must include.
ESRM 250 & CFR 520: Introduction to GIS © Phil Hurvitz, KEEP THIS TEXT BOX this slide includes some ESRI fonts. when you save this presentation,
Layouts: Creating maps and figures using ArcMap 1 GIS for Planetary Mappers June 2012, Planetary Mappers Meeting.
Introduction To ArcMap ArcMa p. ArcMap is a Map-centric GUI tool used to perform map-based tasks Mapping –Create maps by working geographically and interactively.
With Alex Conger – President of Webmajik.com FrontPage 2002 Level I (Intro & Training) FrontPage 2002 Level I (Intro & Training)
Introduction to ArcGIS Add-Ins Exercises GIS/LIS Conference, 2014 Rochester, MN.
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
1 ADVANCED MICROSOFT WORD Lesson 15 – Creating Forms and Working with Web Documents Microsoft Office 2003: Advanced.
Designing a map layout Purpose of map Audience Map elements.
Publications, design sets, web pages
Indianapolis GIS Service-Oriented Architecture
WorkPlace Pro Utilities.
GIS Tutorial 1 Lecture 3 GIS outputs.
Dm 11 – Intro. To Flash Macromedia Flash MX GETTING STARTED WITH.
Python Map Automation: Introduction to arcpy.mapping / arcpy.mp
ArcGIS: ArcMap Layout View. Agenda Layout interface Using templates Page properties Data frame properties Toolbars Layout elements Fine-tuning Finishing.
Introduction to ArcGIS for Environmental Scientists Module 2 – Fundamentals Chapter 7 – Queries.
An Introduction To Websites With a little of help from “WebPages That Suck.
Coastal Web Atlas Design and Usability Liz O’Dea Coastal & Marine Resources Centre, University College Cork.
Web Mapping Seth Peery, Senior GIS Architect
Enabling High-Quality Printing in Web Applications
ATN GIS Support ArcGIS: ArcMap Layout View.
Introduction to ArcGIS for Environmental Scientists Module 1 – Data Visualization Chapter 4 - Layouts.
Esri UC 2014 | Technical Workshop | Python Map Automation – Beyond the Basics of arcpy.mapping Jeff Barrette Jeff Moulds.
Return to Outline Copyright © 2011 by Maribeth H. Price 3-1 Labeling and annotation.
The Web Wizard’s Guide to HTML Chapter One World Wide Web Basics.
Unit 2, Lesson 7 Creating Web Pages and Web Documents.
Automated Map Generation in Indianapolis Chuck Carufel, IndyGIS Joe LaCombe, Woolpert, Inc.
Chapter 27 Getting “Web-ified” (Web Applications) Clearly Visual Basic: Programming with Visual Basic nd Edition.
Presented by: Marianne Cardwell, Woolpert, Inc. Cheryl Spencer, City of Indianapolis February 23, 2010 Voter Information Portal.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Python Map Automation.
Esri UC 2014 | Technical Workshop | Python Map Automation – Introduction to arcpy.mapping Michael Grossman Jeff Barrette.
Desktop Publishing Lesson 1 — Working with Documents.
Business Analyst Web App and ArcGIS Online Anna Hou Julia Holtzclaw.
Getting Started with HTML
Lecture 3 Interacting with Data.
Key Terms Label Annotation.
Chapter Lessons Understand the Macromedia Flash workspace
Cartography and Labeling
Introduction to ArcGIS Add-Ins
MapServer In its most basic form, MapServer is a CGI program that sits inactive on your Web server. When a request is sent to MapServer, it uses.
GIS Lecture: Basic Mapping
Voter Information Portal
PowerPoint Basics Eric Prebys.
TC 310 The Computer in Technical Communication
Introduction To ArcMap
Python Map Automation – Beyond the Basics of arcpy.mapping
Building Map Books in ArcGIS
Web AppBuilder for ArcGIS
Python Map Automation – Beyond the Basics of arcpy.mapping
Building Map Books in ArcGIS
TC 310 The Computer in Technical Communication
Desktop Mapping: Building Map Books
Presentation transcript:

A Sample Print Web Service Utilizing ArcGIS Server and ArcObjects Cheryl Spencer, IndyGIS Marianne Cardwell, Woolpert

Overview IndyGIS background Current web service use Why the need for a print web service? Business reasons Technological reasons Nuts and bolts Components of the Print Web Service How components are used Challenges & Lessons Learned

IndyGIS Background Numerous internal applications and public applications ArcGIS Server purchased in 2004 Currently migrating to version 9.2 Until recently have used ArcGIS Server behind the scenes to perform spatial analysis (non-map centric applications)

Current Web Services Address Validator Geocode Point In Polygon Find Nearest Find Within Radius Polygon Analysis Buffer …and Print

Example Applications Using Web Services

Business Reasons for a Print Web Service Target audience – Developers Reusable print component can be used for all ArcGIS Server applications developed Plug and Play Saves time…and money Consistent user experience when printing from a variety of applications.

Technological Reasons for a Print Web Service Current ArcGIS Server technology does not provide for map printing functionality. Printing the page using the browser’s print functionality does not provide very good quality print-outs. Web service clearly separates out the print logic from the rest of the code. Print WS returns ArcMap-styled PDF map, including all elements one can expect in a map: scale, North arrow, legend, map, overview map, as well as text elements.

Components of the Print Web Service

How components are used The first step is to create a layout in ArcMap. The second step is to export the layout to an XML file.

XML Configuration File Custom ArcMap tool wizard created to convert an ArcMap layout to an XML document using a custom schema. Schema is read by Print Web Service to recreate the layout.

XML Configuration File

Example Use of Print Web Service A web site utilizing an ArcGIS Server map control can use the Print WS to request a PDF map. Multiple parameters are requested, including the map description(s), map scale, map extent, text elements, and XML configuration file name.

Sample Web Interface

Print Web Service Process Get all parameters ready for the Web Service call: Public Function ExportForUrl(ByVal textElements As TextElement(), _ ByVal pageConfigName As String, _ ByVal pageSize As String, _ ByVal pageOrientation As String, _ ByVal extent As Envelope, _ ByVal webMapScale As Double, _ ByVal mapServices() As MapService, _ ByVal overviewMapServices() As MapService, ByVal graphicElements() As GraphicElement, ByVal limitLegendLayers As Boolean, _ ByVal legendLayers() As String) As String

Print Web Service Process (cont’d) Print WS goes through the following steps: Create a Server Object Manager Create an empty Server Context Create (a) new IMap(s) Add layers to the map (re-created from MapDescription) Add graphics to the map

Print Web Service Process (cont’d) Set up the page layout and the extent of the map Add all the page elements to the layout. These include: Map frames Legends North arrows Scale bars Text elements Neatlines Pictures Scale texts Export the map to PDF.

Challenges ArcObjects does not always respond the same way in a Web Service as it does in the Desktop environment. Don’t make too many assumptions. Legend was tricky. Spent a lot of time trying to get it right and required a lot of manual coding to resize it to the correct dimensions. Graphic layers with transparencies are not supported in ArcObjects (ArcMap) whereas they are in ArcGIS Server map controls (think of buffer overlays). Solution was to export the graphics to temporary shapefiles to apply transparency.

Lessons Learned Do your homework. Document! Make it flexible. Put thought into web service signature. Think about error handling. Consider wrapping fine-grained ArcObjects calls into separate DLLs.

Questions?