Kicking the tires of PostGIS 2.0 — Testing ST_MakeValid

The feature in PostGIS 2.0 that excited me most was not topology support, raster support, or 3D functions.  Ok, raster was near the top of my list.  But what I was really excited by was the ST_MakeValid function.  Sad, isn’t it?  Lack of vision probably– excited to try to solve recurring technical snafus in a computationally inexpensive way, rather than being more excited by the … Continue reading Kicking the tires of PostGIS 2.0 — Testing ST_MakeValid

Building simple clients for MapFish — Beginnings of a PL/pgSQL function

I’ve had a couple of other posts (1 and 2 and 3 and) on simple clients for MapFish.  I like the client server infrastructure for MapFish– with the client end of things built up in GeoExt, it makes for a really elegant combo.  But I’d like articulate my vision for simple clients for MapFish a little further.  One thing that seems quite feasible is to … Continue reading Building simple clients for MapFish — Beginnings of a PL/pgSQL function

Playing with new tools and old standards: GeoJSON, Leaflet, CartoDB across platforms

Leaflet, CartoDB, GeoJSON, and cross platform web map deployment. First some introductions: “Leaflet is a modern, lightweight open-source JavaScript library for interactive maps for desktop and mobile web browsers, developed by CloudMade to form the core of its next generation JavaScript API. Weighting just about 21kb of gzipped JS code, it still has all the features you will ever need for you web mapping needs … Continue reading Playing with new tools and old standards: GeoJSON, Leaflet, CartoDB across platforms

Building simple clients for MapFish — Underlying Infrastructure

In order to build simple clients for the MapFish print service, we have to understand what the protocols are that are invoked and how they function.  To do this we can read the MapFish Print Module Doc, and then modify and vamp from there.  While I was going to joke that this would be an excellent cure for insomnia, the joke fell apart when I … Continue reading Building simple clients for MapFish — Underlying Infrastructure

Ditching GeoExt– building simple clients for MapFish

I’ve been enamored with the GeoExt interface for grabbing MapFish based print services since I first saw it. It’s a slick little interface, and can even been extended for multi-page print layouts pretty easily, ala http://tinyurl.com/mapfishmultipageprint. But as I’ve started to give thought not to what an organization full of professionals needs but what a public interface should looks (and probably those interfaces for professional … Continue reading Ditching GeoExt– building simple clients for MapFish

PostGIS Cartographic Effects– Cartoonify Nearly Coincident Lines

In my previous post, a long 24-hours ago, I proposed some automatic modification of line for cartographic reasons. I had some flaws in my code. The points were over-rotated by 45 degrees. Can you spot why? Tip: it’s a basic trigonometric mistake. Here’s the corrected code (though there may be a better way): An alternate approach is to only move those points that are too … Continue reading PostGIS Cartographic Effects– Cartoonify Nearly Coincident Lines

PostGIS Cartographic Effects– Cartoonify Nearly Coincident Lines

I’m still working on this query, but I thought I’d post what I’ve done so far. My intent is to produce scale-dependent exaggeration of the distances between quasi-parallel lines. The reason for this is so that lines such as street lines which are nearly coincident at a particular viewing scale can be spread from each other, much in the same way great cartography lies a … Continue reading PostGIS Cartographic Effects– Cartoonify Nearly Coincident Lines

CartoDB, Leaflet, and a little anti-generalization

CartoDB is one of two hosted (read: cloud) PostGIS database implementations.  It has a maps API, an SQL API, and is some fun to use.  The other hosted PostGIS implementation is SpacialDB which has a Restful API, but can also take SQL.  I just got my key for the free version of that, so hopefully I will be reviewing use of that in the future … Continue reading CartoDB, Leaflet, and a little anti-generalization

PostGIS 2.0SVN and Raster

Got PostGIS 2.0 installed on a Debian machine, with Raster enabled, and put my first image in thanks to the directions in PostGIS In Action. Here’s the auto-generated SQL in pgAdmin: CREATE TABLE ldi_10ft ( rid serial NOT NULL, rast raster, CONSTRAINT ldi_10ft_pkey PRIMARY KEY ( rid ), CONSTRAINT enforce_srid_rast CHECK (st_srid( rast ) = 3734) ) WITH ( OIDS=FALSE ); CREATE INDEX ldi_10ft_rast_gis_idx ON … Continue reading PostGIS 2.0SVN and Raster

Postgis for breakfast: ST_Donut — Revision

A commenter on my last ST_Donut post pointed out that we were essentially using not one but two buffers and and ST_Intersection to test where a point lay.  Bad Spatial SQL. Very bad Spatial SQL. Actually, at Paul Ramsey’s PostGIS for Power Users presentation at FOSS4G this year, I think he mentioned not doing that very thing, and I chuckled to myself, “Well, even I … Continue reading Postgis for breakfast: ST_Donut — Revision