top logo
 
  • Page 1 of 23 ( 446 posts )
  • >>

Tags

Last update:
Wed May 16 19:30:15 2012

A Django site.
May 12, 2012

opengis.ch
QGIS @ 4200m

One of the nice things of being freelance it that you can work on Sundays when the weather is horrible and get out on Tuesdays when it rocks ;) .
So Tuesday I decided to go test QGIS at high altitude and went to the Breithorn and the Pollux with my best friend for a nice winter end tour.

At the summit of Breithorn I took out my Galaxy, started QGIS and opened my basic project, turned on GPS and voilà… it all worked… even in high winds and -15°C ;)

Definitely time to get involved in using it and supporting its developement.

ciao Marco

Breithorn Screenshot_2012-05-08-11-31-24 Pollux

 

May 10, 2012

Linfiniti
Installing PostGIS 2.0 on ubuntu

PostGIS 2.0 is out and the awesomness continues! You can install PostGIS 2.0 on Ubuntu using packages which is exactly what I am going to show you here. Read on for details on how to get up and running and do your first simple raster analysis! Note: You should make good backups first!   Before we... Read more »


Underdark
Glowing Hot Maps – QGIS Meets Gimp

Waiting time is over, Gimp 2.8 is finally here. That is reason enough to take it for a quick test run!

How about a new look for the QGIS user map?

This “glowing hot” map was made using the Gimp filter of the same name:

For the user point layer, I selected a simple point style with high transparency and separately exported land and user points from print composer.

user points as exported from QGIS

In Gimp, I applied the “glowing hot” filter to the user points and combined the layers. The trick here is to first use “Color to alpha” on the user point layer and turn black to transparent. This way, the “glowing hot” filter will only be applied to the remaining points.

Gimp 2.8 RC1 is close enough to the previous version to get comfortable fast. I like the single-window mode even if it’s hard to tell which part of the GUI has the focus sometimes.

Open source GIS and image editing for a perfect work flow.


May 9, 2012

Underdark
Batch Shapefile Clipping

This is just a quick “note to self” on some interesting information I picked up from the QGIS mailing list today. Kudos to David J. Bakeman for sharing this:

If both the input and the output arguments to ogr2ogr are directories then it will clip all of the shapes in the source directory and write them to the output directory.

So: ogr2ogr -clipsrc mask.shp output source

Shapefiles are the default so you don’t even need the -f “ESRI Shapefile”.


May 5, 2012

Underdark
Loading Zipped Files Directly into QGIS

Today’s hot topic on the mailing list was a recently added feature which enables QGIS to load data directly from ZIP archives.

To get the contents of a ZIP archive display in the browser dock, it is necessary to activate this feature in the Options dialog. The setting is called “Scan for contents of compressed files (.zip) in browser dock” and is located right at the bottom of the first tab. Both “basic scan” and “full scan” settings seem to work fine:

Settings – Options

In the file browser panel, archives are now listed like any other folder and their content can be added to the map through both double click and drag and drop.

This can help save tons of disk space: The NaturalEarthData.zip in this example is 280 MB big while the unzipped folders take more than 700 MB.


May 3, 2012

Linfiniti
Quick Tip: Build the latest QGIS nightly build as a standalone installer for Windows

I’m running a training course next week and will be basing it on the nightly build of QGIS, so I wanted to quickly build an installer for use on the course. I simply ran these commands (starting in a checkout of the Quantum GIS source code). sudo apt-get install nsis cd ms-windows/osgeo4w ./creatensis.pl qgis-dev cd... Read more »

May 2, 2012

QGIS Dutch Community
Bar charts with legend

May 1, 2012

opengis.ch
QGIS on Android using external GPS receivers

Thanks to FORNAT AG which sponsored me I could spend some time lookign for solutions to make QGIS on android working with an external GPS receiver that sends NMEA strings.
It all boils down to the following:

  • via bluetooth works
  • via USB not yet (as soon as I get more sponsoring or time I’ll look more into it since I’ve some ideas).

To use an external bluetooth GPS you have to follow six easy steps:

  1. Turn of internal gps
  2. enable allow mock locations in settings>developer options
  3. install Bluetooth GPS app (there are others as well but I had some problems, this was the best for me)
  4. Pair the tablet and the gps receiver
  5. start Bluetooth GPS select enable mock locations provider and hit connect (here you can see if the connection works by checking the coords you see or even by looking on a google map)
  6. start QGIS, enable the GPS panel (view> panels > gps) and hit connect. that’s it

The only caveat is that you can’t check satellites and signal strength directly from within QGIS since the GPS data is relayed over the mock locations provider.

but for the rest it works as expected, now it would be cool if somehow it would be possible to connect a magic usb-to-bluetooth converter to our beloved usb only gps units…

ciao

 

April 30, 2012

Linfiniti
Report back from the QGIS hackfest in Lyon, April 2012

Its been two weeks now since I returned from the QGIS Hackfest in Lyond, France, but I haven’t had the time to write up my experiences yet….until now. Read on for more! It was the first time that the hackfest (which is a twice yearly event) has been held in France. Lyon is a lovely... Read more »

April 23, 2012

Nathans QGIS and GIS blog
Using QGIS in local government

Something that I always find interesting is how people are using different open source tools to get their work done.  This post attempts to outline how I/we are using QGIS at work for different projects.

Kerb mapping, condition, and defect pickup

This project is currently being done by a 67 year old foreman who has worked for the council for a very long time and has great knowledge of the town.   QGIS, with the main working layers stored in PostGIS, was setup so that he can:

  • Digitize kerb lines from aerial photos.
  • Split the existing kerb lines into segments depending on different asset rules.
  • Give each segment an overall condition rating.
  • Add defect points along the each kerb segment e.g. broken, lifted, etc,

Each defect point is snapped to the underlying  kerb line and chainages (distance along line) is generated using a update statement at the end of the project (could be done using a insert trigger if needed) using ST_line_locate_point(line, point).

Defect points coloured by risk captured against the kerb line

Overall QGIS has been great for this project.  The built in data entry forms have been a great help to allow fast and correct data entry. Each form has four drop downs all with present values and descriptions to aid in data entry.

Flood damaged claim maps

We recently suffered, like the rest of Queensland, some really major flooding which caused large amounts of damage to our road infrastructure. We got off pretty light compared to some places, nevertheless we still had a lot of damaged assets.  And so began the process of collecting data that could be used for state government funding claims.

Anyway, onto the QGIS bit.  QGIS was installed on one of the main engineers computers in order for him to make maps for each claim.  Having the ability for him to have one map window but multiple frames in the composer helped him to create multiple  views of the same data with ease.

In total there are 42 QGIS project files with a main project file which served the base layers to the other projects, using the cool Embed Layers and Groups feature.  This means any change in main base project was reflected up(down?) to the other projects next time they are opened.  The main project file has things like, property layer; normal road layers, with labels; road layer with roads for claims.   The other 42 projects have a filtered, and styled, road layer to only show roads in that batch, and its composers (print layouts).

Normally we would use MapInfo for this kind of thing but consider this: There are at least 3 print layouts per claim, each layout could have more then one map frame.  Now with MapInfo only being able to have a 1:1 ratio between the map window and the map frame in the layout you would need at least 3 map windows per claim.  Quick calc:

42 * 3 =  126+n map windows + 126 print layouts (n = extra map frames in layouts)

Each map window has its own copy of every layer, making change once apply every where changes hard.  This of course doesn’t apply to styles as they are stored in the .map (tab) file, but does for labels, style overrides, etc.   I’ll pass.

QGIS is no means perfect for printing or print layouts but the 1:N map window to map frame ratio worked really well for this project.  The styling options in QGIS also helped to change the display of the map depending on what was needed to be shown quickly, one even used the rule-based rendering.

You get the point.
Moving on.

Processing GPS photos with road chainages

This one I am quite proud of.  It’s nothing fancy but still saves a lot of time.  While not really QGIS only but a combination of QGIS+Spatialite it process GPS photos and assigns them a road name and chainage.

The issue: A large influx of GPS photos for the different flood damage projects and the need to process them quickly so that they got assigned to the correct road and chainage.  Now you can map GPS photos easy enough but then you still have to go to each one and assign a road name, chainage, and move it into the correct folder.  To hell with doing that by hand, this is why we invented GIS.

The result is a little (140 line) python script that:

  1. extracts the coordinates from each photos,
  2. finds the closest (within tolerance) road distance node (distance nodes are generated at 5m intervals along the road, around 800,000 in total for the whole shire),
  3. gets the road name, locality, and chainage for that node,
  4. creates a folder with that road name,
  5. renames the photo with {name} @ {chainage},
  6. moves it into the road name folder it is assign to.
  7. inserts a record for that photo into the spatialite database that can be viewed in QGIS.
The Spatialite database has a spatial index on the road distance nodes and with that in place it can process 148 photos in 8 seconds.  Not too bad at all. Now all we have to do to process the photos is stick them into a special folder and run process.bat.

Porting our planning scheme maps

I have been involved in creating, and maintaining, our planning scheme maps for the council.  It’s been a pretty fun project, apart from the constant moving target that is the state planning specifications, but I digress.

Planning scheme in QGIS

This project was done, and still is, in MapInfo. While there is nothing technically wrong with that, it has become a bit more of a pain to maintain then one would hope.  The planning scheme is not just one map but rather a series of different maps all with different scales and requirements.  I’m sure by now you can start to see the issues that can arise:

  1. No dynamic scale bar for layouts (not even a scale bar object rather just text and boxes made to look like a scale bar. With no group items feature moving these around is a pain).
  2. 1:1 map window to map frame means excessive map windows when the data is all the same with just different views.
  3. Legends don’t support ordering, adding items, or groups.
  4. With no embedding base maps feature like in QGIS it’s hard to change one thing and apply it to all the map windows/workspaces.
The specifications also ask for lines with symbols along them to show things like bikeways, footpaths etc, something that can’t be done in MapInfo, well it can by using the line style editor but I would rather stab myself in the eye.
The one thing I haven’t fully worked out how to do in QGIS yet is fully automate the printing process. Currently I open MapInfo using a batch file and pass it a workspace and MBX which prints the layouts and exits. I do this for each map type.    In QGIS I have a few options:
  1. Create a plugin that runs though each project and prints off its composers.
  2. Create a python script that runs from a batch file using qgis.core and qgis.gui QGIS python bindings.
  3. add a –code option to the command line of QGIS so that you could run: qgis.exe –noplugins –code “print.py”, which would open QGIS and run the python code and exit.
I’m yet to explore what option is the best for this project but I’ll get back to you on that.  Once I have the above issue sorted I plan on creating the maps in QGIS to see how it would turn out (time permitting)

Custom asset data collection program

This one would have to be my favourite.  I really love programming (most days), and being able to create our own data collection program using QGIS and MS SQL 2008 has been great.

While it is only very very young I’m already seeing some great potential.  Using an open source base (apart from MS SQL) has given us a lot of power, power to change stuff that we don’t like (which so far has been one minor bug), and the power to get exactly what we need.

I can’t talk about this project a lot as it is only very new and still only in design/testing/prototyping stage.

The main things for me are:

  • Ease of use. If I get asked how to do something over and over I have failed the users. And no 100 page training manuals.
  • Fast
  • No menus, or right-click menus! I’m a power user and even I hate navigating menus on a tablet.
  • Easy to build custom forms
  • Online/Offline syncing
  • Ease of use. Oh did I say this already!? Well it’s important.
  • Easy to configure by admins.
  • Limited use of dialogs. It’s NOT ok for an app to ask users to confirm 100 dialogs to do one thing.

Overall I think using QGIS and PyQt I can hit all the targets listed above quite well. In fact I know I can because I have already hit most of the them in the last couple of weeks.

Summary

So that is my list of QGIS uses in my local government situation, hopefully it wasn’t TL;DR and you found it interesting.  I’m sure there will be plenty more to add at the end of 2012.


Filed under: Open Source, qgis Tagged: case study, FOSSGIS, gis, local gov, Local government, mapinfo, Open Source, osgeo, qgis, Quantum GIS

April 16, 2012

Spatial Galaxy
what's new in qgis plugins

Here’s a summary of recent additions and updates to plugins in the QGIS repository.

  • FlowMapper (0.1.1) - Generates flow lines between discreet nodes for depicting spatial interaction data (e.g. migration).
  • Query By Example (0.2) - Select features by location.
  • Item Browser (1.6.0) - Browse a multiple selection with auto-zooming to feature and an option to open feature form.
  • Custom Launcher (1.1.0) - Customize your own actions to launch your preferred apps or commands within QGIS.
  • Profile Tool (3.3.1) - Plots terrain profile
  • qSearch (1.3.0) - Produces a friendly interface to perform and save searches in a layer.
  • Quick Finder (1.0.0) - Dockable dialog to find a feature by its ID in a layer.
  • SEXTANTE (1.0.3) - SEXTANTE for QGIS
  • Link It (1.1.1) - Link It is a QGIS plugin to link a feature to another. By clicking on map, the plugin will then automatically save the feature’s ID in the appropriate field defined by the user. This plugin requires ItemBrowser.
  • QuickMultiAttributeEdit (0.8) - QuickMultiAttributeEdit plugin provides a very quick and handy way to update a feature for the selected attributes into the current/active layer.

Installing Plugins

To install any of these plugins:

  1. Open the Python plugin installer: Plugins->Fetch Python Plugins
  2. Check to see if you have the new Official repository in your list of plugins by clicking on Repositories tab. The URL is http://plugins.QGIS.org/plugins/plugins.xml.
  3. If the new repository isn’t in the list, add it by clicking the Add button. Give it a name and insert the URL http://plugins.QGIS.org/plugins/plugins.xml
  4. Some plugins may be flagged experimental. Make sure you have allowed experimental plugins on the Options tab of the plugin installer
  5. Click on the Plugins tab
  6. Select the desired plugin from the list and click Install

April 9, 2012

Linfiniti
A new sphinx theme

During the Zurich QGIS hackfest we had some extended discussions about migrating our documentation away from LaTeX to sphinx because the latter offers a more approachable syntax for casual documentation writers and has good support for internationalisation via gettext. This week I am going to our first 2012 QGIS hackfest (to be held in Lyon,... Read more »

April 6, 2012

Underdark
QGIS Server on Windows7 Step-by-step

After my successful experiment with QGIS Server on Ubuntu, I took a shot at Windows7. These are my notes on installing QGIS Server following the instructions on the wiki.

Installation

Using OSGeo4W installer it is easy to install QGIS Server: Just mark qgis-server for installation from “Web” category (in the “Advanced” installation).

All other necessary packages will be selected automatically.

As mentioned on the wiki, the next step is to tell Apache which port number to use. Apache (2.2.14-4 from OSGeo4W) does not have any default IP/port set and it fails to start. To fix this, we need to edit the file

c:/osgeo4w/apache/conf/httpd.conf

and change

Listen @apache_port_number@

to our needs, e.g. to listen on port 80

Listen 80

The last thing I had to do to get QGIS Server working was to copy two files
libeay32.dll and ssleay32.dll
from C:\OSGeo4W\apache\bin
to C:\OSGeo4W\apps\qgis\bin.

The GetCapabilities request should work now

http://localhost/qgis/qgis_mapserv.fcgi.exe?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities

Adding a QGIS project file

To add a project file to the server, we stay in C:\OSGeo4W\apps\qgis\bin. If we put a project file in this directory, it will be served by default (without having to pass the optional map parameter).

For this test, I added my vienna.qgs project file. This is how my QGIS bin folder looks like (notice the .dll files we copied from Apache/bin and the project file):

Next, we have to restart Apache to force QGIS Server to load the project file. The OSGeo4W installation provides a handy “Apache-Monitor” GUI to restart Apache. If it fails, try to reboot ;)

The project layers are now available through WMS and can be loaded into your client.

QGIS "Add WMS Layer" dialog with my newly created WMS

Conclusion

That wasn’t bad. The wiki page was very helpful and I didn’t encounter any real problems. Editing a config file and copying a few .dlls is easy enough.

Since linking files is not one of Windows’ strengths, I’d expect a server with multiple projects to get quite messy. But it certainly works for home use and experiments.



Spatial Galaxy
QGIS Plugin of the Week: qNote

This week we look at a newly arrived plugin named qNote. This plugin allows you to create a note and store it in a QGIS project file. When the project is loaded, the note is restored and can be viewed in the qNote panel.

This little plugin provides a way to attach metadata to a project. Things you might want to include in a note are:

  • Content of the project
  • Purpose
  • Area of interest
  • Where the data came from
  • Who created the project

This information can be helpful when sharing a project or when you forget what you did six months after the fact.

Here is a screenshot showing qNote in action:

qNote Plugin

Installing the Plugin

To install the plugin:

  1. Open the Python plugin installer: Plugins->Fetch Python Plugins
  2. Check to see if you have the new Official repository in your list of plugins by clicking on Repositories tab. The URL is http://plugins.qgis.org/plugins/plugins.xml.
  3. If you have it, skip to step 6. If the new repository isn’t in the list, add it by clicking the Add button. Give it a name and insert the URL http://plugins.qgis.org/plugins/plugins.xml
  4. qNote is currently flagged experimental. Make sure you have allowed experimental plugins on the Options tab of the plugin installer
  5. Click on the Plugins tab
  6. Enter qNote in the Filter box
  7. Select the qNote plugin and click Install

You can control the visiblity of the qNote panel from the View->Panels menu.

The README for the plugin can be viewed on the qNote GitHub page.

April 5, 2012

Spatial Galaxy
Getting Support for QGIS

The QGIS project has a number of support channels. Like many open source projects, these are loosely coupled. Recently the forum was made read-only and this has prompted a number of questions and concerns about how to receive support. This post outlines the ways in which you can get your questions answered.

Home Page

The QGIS home page has links to all the documentation and community resources. The navigation panel on the left has links to both the Community resources and the manual.

To quickly see links to all the resources, click the Need Help? button on the home page. You’ll find links to:

  • User Manual
  • Wiki
  • Mailing Lists
  • StackExchange

StackExchange

GIS StackExchange allows you to ask questions and get answers from a wide range of users and experts in the GIS realm. If you have a question specific to QGIS, tag it with the qgis keyword, otherwise use an appropriate tag.

Since StackExchange is question-based, you should not ask multiple questions in a single posting.

Also, make sure you flag the question as answered once you receive a satisfactory response.

Mailing Lists

The QGIS project maintains a number of mailing lists. For most people, the two of interest are qgis-user and qgis-developer:

  • qgis-user: Use this list for discussion of QGIS in general, as well as specific questions regarding its installation and use.

  • qgis-developer: Used for discussion of development issues, plans, and features. If you plan to contribute code or patches to the project or write your own Python plugins, you’ll find this list useful.

If you just want to browse or search the mailing lists without subscribing, they are available on Nabble.

IRC

IRC (Internet Relay Chat) is a method of communication used widely by open source communities. On any given day you will find both developers, contributors, and users monitoring the #qgis channel on irc.freenode.net.

To use IRC, you’ll need a client application for your computer, tablet, or smartphone.

Here are a couple of guidelines for using the #qgis channel:

  1. If you have a question, don’t ask if you can ask, just state your question
  2. If no one responds, it’s not because they hate you or think you are a dullard, but are busy or don’t know the answer to your question

The QGIS IRC community is very friendly and helpful. Give it a try.

Search the Internet

All of the web resources for the QGIS project are indexed by search engines. Searching for your specific question can often lead you to the answer you are looking for, whether it be in a blog, on a mailing list, or the QGIS web site itself.

In addition to your favorite search engine, try DuckDuckGo for more targeted search results.

Shameless Plug

If you need a good introduction to open source GIS applications, tools, and scripting, take a look at my book.

March 31, 2012

GFOSS
GRASS GIS Community Sprint 2012 - 23-28 May 2012, Prague, Czech Republic

The next "GRASS GIS Community Sprint" will take place from May 23 to May 28, 2012 in Prague, Czech Republic directly following the Geoinformatics FCE CTU 2012 conference.

This GRASS Community Sprint is a great occasion for you to support the development by actively contributing to the source code, manuals or likewise. It is a get together for GRASS project members and supporters to make decisions and tackle larger problems. For this meeting, we welcome people committed to improving the GRASS GIS project. This includes developers, documenters, bug reporters, translators and others.

Timing and Duration:

May 23, 2012 (day of arrival) - May 28, 2012 (day of departure)

Venue:

Department of Mapping and Cartography Faculty of Civil Engineering, Czech Technical University in Prague

For more detailed information, please visit
http://grass.osgeo.org/wiki/GRASS_Community_Sprint_Prague_2012


Spatial Galaxy
QGIS Forum Is Closed—What Do You Think?

The forum (http://forum.qgis.org) has been closed for new registrations and marked read-only. Users have been encouraged to use http://gis.stackexchange.com instead.

If you have an thoughts on the closure, good, bad, or otherwise, please comment.

QGIS Forum Is Closed---What Do You Think?

The forum (http://forum.qgis.org) has been closed for new registrations and marked read-only. Users have been encouraged to use http://gis.stackexchange.com instead.

If you have an thoughts on the closure, good, bad, or otherwise, please comment.

March 30, 2012

opengis.ch
QGIS on Android Phone

At FOSSGIS I was asked to try to install qgis on a very small android phone, I think it was a 3.2″ screen. the install went smoothly after making some space but then the problems came because of the small screen.
Eventually I thought about setting a smaller font size to make the UI scale more, the problem was that it was impossible to get to the size setting because the UI was to big.
As a workaround I created a QGIS.conf file with this content
[General]
IconSize=32
fontPointSize=4
and pushed it to the device using the android debug bridge like this:
adb push myQGISConfigFile.conf /data/data/org.qgis.qgis/files/Settings/QuantumGIS/QGIS.conf
On the next start the whole gui was nice and small and fitted the screen.

Here some screenshots from my Samsung galaxy 9000 with 4″ screen and a video demonstrating digitising (with pen and fingers), GPS, compass and zooming on the phone.

This video shows QGIS on a Samsung I9000 Galaxy S Android smartphone with 4.0″ screen. the point size in settings->option->general is set to 4


Underdark
QGIS Server on Ubuntu Step-by-step

This post summarizes my notes about installing QGIS Server on Ubuntu, adding a QGIS project file to the server and using the WMS in an OpenLayers application.

Installation

First, it’s useful to figure out the Ubuntu version:

lsb_release -a

Since my server runs “lucid”, I add the following package sources to /etc/apt/sources.list (as described in the QGIS installation documentation)

deb http://qgis.org/debian lucid main
deb-src http://qgis.org/debian lucid main

Before we can install anything, we need to add the key and update the package list

gpg --keyserver keyserver.ubuntu.com --recv 1F9ADD375CA44993
gpg --export --armor 1F9ADD375CA44993 | sudo apt-key add -
sudo apt-get update

Now we can install QGIS Server and the necessary Apache package

sudo apt-get install qgis-mapserver libapache2-mod-fcgid

It never hurts to restart Apache :)

sudo /etc/init.d/apache2 restart

Let’s test the installation before we proceed. The GetCapabilities request should already work

http://10.101.21.28/cgi-bin/qgis_mapserv.fcgi?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities

Adding a QGIS project file

It’s time to add a QGIS project to our server. To do that, we move to the QGIS Server folder

cd /usr/lib/cgi-bin

where you should find qgis_mapserv.fcgi and wms_metadata.xml.
I’ve decided to have one folder for each project file. My first project is “vienna”.

sudo mkdir vienna
cd vienna

qgis_mapserv.fcgi and wms_metadata.xml can now be linked into this new folder

sudo ln -s ../qgis_mapserv.fcgi .
sudo ln -s ../wms_metadata.xml .

The only thing that’s missing anymore is a QGIS project file. It can be copied or linked into the folder. After restarting Apache, we should be good to go.

Let’s test the setup using “Add WMS Layer” in QGIS by adding the service URL such as

http://10.101.21.28/cgi-bin/vienna/qgis_mapserv.fcgi

and ticking “Ignore GetMap URI …” and “Ignore GetFeature URI …”.

After clicking “Connect”, all layers from the project file we added should get listed and we can select and load them.

QGIS Server can serve as many project files as you want. There a different ways to organize your server but I would simply add a new folder (like the “vienna” folder in this example) and link in the executable and project file.

Using QGIS Server WMS in OpenLayers

Of course QGIS Server doesn’t just talk to QGIS Desktop but to any other WMS client that conforms to the standard. One classic use case is to add the WMS layers to an OpenLayers application. This is rather simple but I’ll add it here for the sake of completeness:

I used to have a Geoserver WMS base layer in my application. The only lines of code that needed to be changed to migrate to QGIS Server were the service URL and the layer names.

    wms = new OpenLayers.Layer.WMS(
        'roads', "http://10.101.21.28/cgi-bin/vienna/qgis_mapserv.fcgi",
        {
            layers: 'roads', 
            format: 'image/png';
            bgcolor: '#fafafa'
        }, 
        {
            buffer: 1, 
            isBaseLayer: true, 
            graphicZIndex: 0, 
        }
    );

Standardized services are great!


  • Page 1 of 23 ( 446 posts )
  • >>

bottom

Powered by Django!