Archive for May, 2010

Google Maps News from Google I/O Conference

Posted on May 20, 2010. Filed under: GeoSpatial Training Services, Google Maps |

Lots of exciting news regarding Google Maps coming out of the Google I/O Conference this week.

Google Maps API V3 Graduates!
Google Maps API V3 was introduced as a Google Code Labs project, and at this year’s conference it has graduated out of labs and is now the recommended version for Google Maps application development efforts.  According to Google:

Version 3 was built from the ground up to offer a clean, fast, and powerful maps application development platform for both desktop web browsers and mobile devices.

It was also announced that StreetView is now available at Version 3 in addition to new features such as such as elevation, bicycling directions, and optimised routing.  StreetView is noticeably different at Version 3:

When you use Street View in v3 you will notice a number of differences with v2. The most significant change is that Street View is entirely implemented in HTML in order to accommodate all of the mobile devices on which v3 is supported. We have also added Pegman support to the map, and a number of new features, including markers, infowindows, and custom imagery.

The Maps API V2 and Mapplets have now been deprecated which indicates that no future development will take place on these versions.  However, they will be maintained and supported for a minimum of 3 years.

At GeoSpatial Training Services we are planning to release updated versions of our Introduction to the Google Maps API and Advanced Google Maps Programming courses this summer to reflect the many changes in the Google Maps API at Version 3.

Directions Web Service
The Directions Web Service is a companion to the existing Geocoding and Elevation Web Services, and allows applications to obtain Driving, Bicycling, and Walking directions through an XML/JSON REST interface. All of the features of the Map API v3 Directions service are supported, including “avoid highways”, “avoid tolls”, and waypoint optimization (travelling salesman solver). For more information, check out the Directions Web Services documentation.

New Nearby Places Widget
Today’s big announcement is the new Nearby Places widget.  The Nearby Places widget is a user interface element that will launch in the Google Maps API v3.  It combines the W3C Geolocation API with location based Place search to present the user with a list of Places in their immediate vicinity. The user can select a Place which the Maps API application can use as a check-in, or to tag content supplied by the user about that place. The application can also obtain more detailed information about the Place, such as the address, telephone number, and Place Page URL.

The Nearby Places widget is built on top of the Places Web Service, a new addition to the family of Google Maps API Web Services. The Places Web service offers search for nearby places to native mobile applications through an XML/JSON REST interface.

Read Full Post | Make a Comment ( None so far )

Arc2Earth Version 3 Released!

Posted on May 18, 2010. Filed under: Arc2Earth, ESRI, GeoSpatial Training Services, Google Earth, Google Maps, OpenLayers |

Arc2Earth Version 3 is now available as a general release.

Do you need to get your GIS data online in a hurry? Or export your complex maps in KML format for viewing in Google Earth?
There’s no need for servers or server software, all you need is a single ArcView seat and Arc2Earth. Export locally, directly to Amazon S3 or to your own Arc2Earth Cloud instance. Click and you’re done.

Arc2Earth is the premier ArcGIS extension for exporting and importing your data into the leading GeoWeb formats. Import or Export complex KML files, map tile caches or use the new Cloud services to host your data online. And new at Arc2Earth V3, live editing with Cloud Layers. Upload and manage your data in an Arc2Earth Cloud, Google Maps Data or Open Street Map.

GeoSpatial Training Services is an authorized reseller of Arc2Earth. More information on Arc2Earth here.

Read Full Post | Make a Comment ( None so far )

Summer Training Schedule

Posted on May 12, 2010. Filed under: AGIS Server API for Flex, ArcGIS Server, ArcGIS Server for Silverlight, ESRI, GeoSpatial Training Services |

We’ve rounded out our Summer 2010 Internet based, instructor led training schedule.

Programming the ArcGIS Server API for Flex
Next Session: June 7 – July 16

Updated for ArcGIS 10 and API 2.0 for Flex

Mastering the ArcGIS Server JavaScript API
Next Session: June 7- July 16
Updated for ArcGIS 10 and API 2.0 for JavaScript

Programming ArcGIS Server with Silverlight
Next Session: June 21st – July 23rd

ArcGIS Server Bootcamp
Next Session: June7 – August 27
Only 9 Seats Left

GIS Programming 101: Mastering Python for Geoprocessing in ArcGIS
Next Session: July 19th – August 13th
Updated for ArcGIS 10

Programming ArcObjects with .NET
Next Session: July 19th – August 13th

Read Full Post | Make a Comment ( None so far )

Query Data with the ArcGIS Server API for Flex

Posted on May 10, 2010. Filed under: AGIS Server API for Flex, ArcGIS Server, GeoSpatial Training Services |

The next session of our Programming the ArcGIS Server API for Flex class begins June 7th.  There are still seats available.

ArcGIS Server can perform a number of different tasks.  In this article we will introduce the Query Task and you’ll see how it can be used with the ArcGIS Server API for Flex to query data in a map service.  A Query Task can be an attribute, spatial, or combination query that can be performed against the data layers in a map service.  Some examples would perhaps be illustrative at this point.  An attribute query might search for all land parcels with a valuation of greater than $100,000.  A spatial query could be used to find all land parcels that intersect a 100 year floodplain, and a combination query might search for all land parcels with a valuation of greater than $100,000 and whose geometry intersects the 100 year floodplain.

A Query object is used as input to a QueryTask and is defined by properties including geometry, where, and text.  The geometry property  is used to input a geometry that will be used in a spatial query and will be a point, line, or polygon geometry.  The where property is used to define an attribute query while the text property is used to perform a where clause containing a ‘like’ modifier.  The Query object can also contain a number of optional properties including the ability to define the fields that will be returned as a result of the query, the output spatial reference for the return geometry, and the actual geometry of the features that meet the query conditions.

Once you’ve defined the input properties in a Query object you can then use QueryTask to execute the query against a layer. You must provide a pointer to the layer that will be queried.  This pointer should be an integer based value.  Notice in the code example on this slide that we are pointing to the 6th layer in the ESRI_CENSUS_USA map service.  Although the integer shows a value of 5 it is actually the sixth layer since it is a zero based array.  In other words, the first layer has an integer value of 0.  Execute returns a FeatureSet object that contains the results of the query and these features are processed through a callback function which is specified in the execute( ) method.

As I mentioned earlier, the results of a query are stored in a FeatureSet object which is simply an array of Graphics which you can then plot on your map if you wish.  Using this object you can set field aliases for the returned fields as well as a display field name.
Here we provide a demonstration of using the query object in the ArcGIS Server API for Flex as well as the code that was used in the demonstration.  The code for this demonstration is provided by the ESRI Samples site.
Attribute queries can be specified using one of two properties on the Query class.  The ‘text’ property searches the display field of your layer in a literal fashion.  It functions as a ‘like’ operator.  The ‘where’ property is used to define a traditional where clause for your query.
Spatial queries use the geometry property to apply a spatial filter to the query.  The geometry used as input will need to have been determined before the query is executed.  In addition, a spatialRelationship property is also used to apply a spatial relationship to the input geometry with SPATIAL_REL_INTERSECTS being the default if not specified.  As you can see from the figure below there are many spatialRelationship tests that you can apply to filter your data based on a spatial relationship.
You can restrict the data returned by a query in a number of ways.  The fields, spatial reference, and geometry can all be restricted.  For performance reasons you should try to limit the fields returned by the query through the use of the outFields property.  This is simply a set of field names provided within an array.  To return all fields you can use an asterisk as a wildcard.  As I mentioned, you should attempt to limit the fields returned to only those that you will use as it will increase the performance of your application.  Depending upon your application you may or may not want to return the geometry of each feature that matched the query.  Using the returnGeometry property you can specify a true or false value to indicate whether or not you wish to return the geometry for each feature.  If you don’t need to plot the geometry on your application by all means do not return the geometry as it will increase the performance of your application.  You can also specify the spatial reference for any returned geometry through the outSpatialReference property.
Since queries return data sets you will often use the results of the queries in data binding.  For example, you may want to populate the contents of a grid with the information returned from a query.  Flex data binding provides an easy way of doing this without a lot of coding.  Data binding is a Flex feature, not an ArcGIS Server API for Flex feature, but you can easily put it to use in your applications.  Essentially, data binding is a way of passing information around in your application in a sort of publish-subscribe pattern.  Data is published in one way or another such as the result of a QueryTask, and then one or more components in your application can monitor for this data and consume it when it becomes available.

In the figure below you’ll see a depiction of how data binding can be used with queries in Flex.  Here, the FeatureSet returned by our QueryTask is bound to a Flex grid component.  The contents of the grid will automatically be populated with the contents of the FeatureSet without the need for a lot of coding.  As you can see from the code snippet, data binding is accomplished through the use of curly braces that surround the data to be bound to the component.  Data binding in Flex is specified with these curly braces.

As I mentioned, curly braces are used to define the binding between a data source and the component that it will be bound to.  In the example code below we are binding the results of a QueryTask to a Flex DataGrid.
Read Full Post | Make a Comment ( None so far )

New Course: Programming ArcGIS Server with Silverlight

Posted on May 6, 2010. Filed under: ArcGIS Server, ArcGIS Server for Silverlight, GeoSpatial Training Services |

GeoSpatial Training Services is pleased to announce the availability of a new instructor guided, Internet based Virtual GIS Classroom course entitled “Programming ArcGIS Server with Silverlight“. With our unique combination of hands-on exercises, Flash based lecture materials containing audio, video, code samples, and demonstrations you will be creating next generation web-based GIS applications in a matter of days using Silverlight with ArcGIS Server.

Course Modules

  • ArcGIS Server for Developers
  • What is Silverlight?
  • ESRI ArcGIS Silverlight API Introduction
    • Adding Maps and Layers
    • Creating Base Maps with ArcGIS Online
    • Adding Layers
    • Map Navigation
    • Navigation Tools
    • Map Events
  • Adding Graphics
    • Creating a Graphics Layer
    • Using a Graphic Feature
    • Adding Maptips
    • Drawing Graphics
    • Adding a Feature Layer
    • Working with Symbols and Renderers
  • Working with Tasks
    • Query
    • Find
    • Identify
    • Address Locator
    • Geometry Services (Buffering, Measurements, Selections)
    • Geoprocessing
    • Routing
  • Using Bing Maps
  • Working with Expression Blend 3
  • Capstone Project

The first session of this course will be taught June 21st through July 23rd.

Cost is $567 if you register before May 15th. Regular price for this course will be $715.

You may also register by downloading the registration form and sending back to use via one of the methods listed on the registration document.

We do accept purchase orders!

Read Full Post | Make a Comment ( None so far )

5th Anniversary Sale on E-Learning Courses

Posted on May 4, 2010. Filed under: GeoSpatial Training Services |

Five years ago we formed GeoSpatial Training Services to bring affordable training options to the GIS industry.  Thanks to your support we have been successful in doing so.

We are distinct from other GIS training providers in that we offer our courses in a variety of e-learning and traditional instructor led training formats. We cover the full gamut of training formats including Internet based/instructor guided, self-paced CD/DVD courseware, and traditional instructor led options

Each of our courses are 100% custom developed by experienced GIS instructors, each with 15+ years experience using and teaching about these products.
So, it’s time once again for our annual anniversary sale.  During the month of May you can save up to 25% on many of our e-learning bundles and courses!
See below for a full listing of courses that have been discounted.

During the month of May you can save up to 25% on selected e-learning bundles courses.

Bundles – Save 25%

Individual Courses – Save 10% or More

Read Full Post | Make a Comment ( None so far )

Liked it here?
Why not try sites on the blogroll...