Archive for May, 2009
We’ve wrapped up the redesign of the Geospatial Training Services website so head on over to http://geospatialtraining.com to view the site.Read Full Post | Make a Comment ( None so far )
According to the Google Geo Developers blog the primary motivation behind this new version was speed, especially for rendering maps on mobile browsers.
Changes for v3 according to the blog include:
- Chrome and iPhone Safari mobile added to our supported browsers.
- Your mashups will also work on Android-based phones with the recent update, but you may notice some issues, like the “View/Save Image” dialog showing unexpectedly. We’re working with the Android team to fix this and improve the end user’s experience in interacting with the map. We could’ve waited until it’s perfect, but we really wanted to get an early release in your hands and start getting feedback while we fix up a few remaining issues.
- No keys required. You can now copy ‘n paste code easily or embed in RSS readers, for example, without getting key errors.
- Default UI is enabled automatically. We’ll provide default UI controls and behavior (and we’ll update them) so your mashup can keep up with the latest and greatest changes we make to Google Maps. Of course, if you’ve got customized controls you’re happy with, you can disable the default UI updates.
- Namespaces. Everything is always in the google.maps.* namespace and there is no “G” prefixed variables in the global scope.
- Geocoding API has been overhauled based on the feedback we’ve received with the existing implementation over the past three years
1. References in the <head> section to:
A. Dojo style sheet you intend to use
2. Set the class for the <body> tag to the Dojo style sheet you have selected
3. Add dojo.require statements for the ArcGIS Server and Dojo resources you intend to use
A reference to the style sheet provided by Dojo is provided mainly to control the look and feel of the graphic elements in your map as well as any user interface dijits that you add to your application. This is accomplished by adding the following line of code in the <head> section of your application.
Step 2: Set the Class of the Map <div> Tag
Next, you’ll need to set the class of the map to match the theme of the style sheet that you referenced in Step 1. Notice in the code example below that we are referencing the “tundra” theme. If you had referenced the “soria”, “nihilo”, or your own custom style sheet you’d reference this theme here instead of “tundra”.
For the past 4 years at GeoSpatial Training Services we have provided e-learning and instructor led GIS training courses. We specialize in ESRI, Google Earth, Google Maps, and GPS subject material. From time to time we like to provide samples of the courses that we develop. Below you will find a number of samples from several courses that we have developed.
Mastering Python for Geoprocessing in ArcGIS
This course is designed to teach the fundamental programming constructs of the Python language and how it can be integrated with ArcGIS Desktop to automate geoprocessing tasks.
- Lecture Sample – This sample is from Module 8: Cursor Objects and deals with adding, updating, deleting, and selecting records from tables and feature classes.
- Exercise 8A
- Exercise 8B
- Module 1: Getting Started with Python in ArcGIS
- Module 2: Basic Python Language Features
- Module 3: The Geoprocessor ArcObject
- Module 4: Reading the Geoprocessor Object Model Diagram
- Module 5: Accessing Geoprocessing Tools
- Module 6: Tool Messaging, Results and Error Handling
- Module 7: Obtaining Descriptive Information About ArcGIS Data
- Module 8: Using Cursor Objects to Select, Edit, and Add Records to Tables and Feature Classes
- Module 9: Creating Lists of GIS Data
- Module 10: Miscellaneous Objects
- Module 11: Creating Custom Script Tools
- Module 12: Geoprocessing History
What you learn in this course
- Python language fundamentals
- How to read and use the Geoprocessor Object Model Diagram in your scripting tasks
- Use the PythonWin integrated development environment
- Integrate ArcToolbox and custom tools into your Python geoprocessing scripts
- Retrieve and create messages from the geoprocessor
- Gracefully handle errors in your scripts
- Obtain descriptive information about your GIS data
- Search for data in your feature classes and tables
- Insert, update, and delete data from feature classes and tables
- Read and write feature geometry in feature classes
- Create lists of data in your script for further geoprocessing
- Create custom script tools that can be integrated with ArcToolbox and shared with others in your organization
- Schedule scripts to run after hours
- Obtain historical geoprocessing informatio
Mastering KML for Google Earth
KML is an XML based file format used to display geographic data in Google Earth, Google Maps, and Google Maps for Mobile. Data displayed in Google Earth is contained in KML files, and in our e-learning course you will master the use of KML for creating advanced applications.
Lecture Sample – This sample is from Module 3: Advanced KML Elements
Modules – See full syllabus here
- Introduction to KML
- Basic KML Elements
- Advanced KML Elements
- Miscellaneous Topics
New skills acquired through this course:
- Learn how KML is used by Google Earth and other Earth browsers to display geographic data
- Create Placemarks, Paths, Polgyons
- Attach descriptive information to Placemarks in the form of Balloons
- Symbolize your geographic data with Styles
- Overlay raster images and photos on the Google Earth terrain
- Add legends and logos
- Control the Google Earth Camera
- Create dynamic data feeds with Network Links
- Use Regions for displaying large data sets
- Use KML Generation tools
- Package, distribute and enable Internet searching of your KML files
Introduction to the Google Maps API
This has been our most popular course over the past 3 years. It is designed to enable you to take advantage of Google Maps for your website. You will learn how to create maps, add map controls for user interactions (zooming, and panning), programmatically alter the map extent, add points of interest to the map, add custom icons, geocode addresses on the fly, read addresses from a database or XML file, and display imagery.
Lecture Sample – This sample is from Module 2: Basic Google Maps API Concepts.
- Module 1: Introduction to Google Maps
- Module 2: Google Maps Basics
- Module 3: Geocoding
- Module 4: Reading Data from XML Files and Databases
- Module 5: Google Maps Utility Classes
- Module 6: Driving Directions, Traffic Conditions, and Street View
- Module 7: Integration with Google Earth
- Module 8: Integrating Local Search with Google Maps
New skills acquired in this course:
- Create and add dynamic Google Maps to your website
- Add various map types including aerial imagery, terrrain, hybrid, and default maps
- Add navigational controls
- Create markers and info windows for your data and add them to your map
- Create polylines and polygons
- Add your own custom imagery to the map
- Read data from XML, JSON, KML files
- Geocode your addresses and add to the map
- Use utility classes such as MarkerManager, ProgressbarControl and others
- Use Street View, add driving directions and traffic information
This course focuses on getting GPS data into a GIS. It will cover what equipment to use, how the equipment dictates the workflows, pros and cons of each workflow, and how to incorporate GPS data collecting in your organization.
Lecture Sample – Sample from Lesson 4: GPS/GIS Workflows
- Overview of GPS
- Overview of GIS
- Planning for GPS Data
- The Right Equipment for the Job
- Toosl and Workflows
- Best Practices
New skills acquired in this course
- Recreational vs. Commercial receivers
- Differential GPS
- Database design and storage of GPS data
- Equipment preparation and maintenance
- Identifying your needs in terms of accuracy, attributes, photos, and mapping software
- Post processing of your data
- ArcPad and Trimble workflows
- Recreational receiver workflows
What is Dojo?
What does it do?
Dojo is perhaps best known for the HTML user interface components, called Dijits, which you can plug into your application. You can see some examples of these components by reviewing the Dojo Feature Explorer provided by DojoCampus.org. This alone would be good reason to use Dojo, but this toolkit provides so much more. In addition, to the user components Dojo also provides the following:
- Fixes browser incompatibilities and memory leaks (no more browser dependent code)
- Normalizes the browser event system across browsers
- DOM utilities
- Build system that divides your code into small, manageable chunks for development and a packaging system for optimal download performance
- Internationalization, localization, and accessibility
- Support for asynchronous programming
- Remote scripting with XHR, script, and iframe
- Drivers for accessing data in JSON, XML, CSV, and other formats including web services such as Flickr and Picasa
Three Projects (Dojo, Dijits, DojoX)
What we call Dojo is actually three projects: Dojo, Dijits, and DojoX.
Dojo core is the foundation for all three projects and handles browser normalization, fixes browser incompatibilities, allows DOM querying, remote scripting, drag and drop, data store API, localization and internationalization, Firebug integration, cookie handling, accessibility, and much more.
Dijit includes the Dojo framework along with roughly 40 HTML user interface widgets including buttons, text boxes, grids, tree views charts, color pickets and many others. Tundra is the default CSS theme for Dijit and is designed to blend into existing color palettes and design. An additional theme, Soria, is available as well and you can certainly build your own if neither the Tundra or Soria themes fit your needs.
DojoX are Dojo extensions and includes projects such as the grid widget, a graphics library, charting, image handling and more. These often include some very sophisticated projects which are not necessarily as stable as what you’ll find in Dojo or Dijit.
ESRI and Dojo
In fact, the ESRI zoom slider was built with the Vertical Slider Dijit.
In coming posts we’ll take a look at how you can integrate a number of other dijits into your web applications.
Using Dojo with Google Maps API
Your other options for downloading Dojo to your local environment include:
- You can also download the current release to your local environment through http://dojotoolkit.org/downloads
- Get current, previous, binary, and source builds from http://download.dojotoolkit.org
- Anonymous checkout from SVN repository at http://svn.dojotoolkit.org/src