Skip to content

Instantly share code, notes, and snippets.

View bitner's full-sized avatar

David Bitner bitner

View GitHub Profile
CREATE OR REPLACE FUNCTION public.geocode_google(IN inaddress text, OUT address text, OUT longitude double precision, OUT latitude double precision)
RETURNS record AS
$BODY$
from geopy.geocoders import GoogleV3
geolocator = GoogleV3()
try:
address, (latitude, longitude) = geolocator.geocode(inaddress,timeout=1,exactly_one=True)
return address, longitude, latitude
except:
return None, None, None
@bitner
bitner / everynseconds.sql
Created April 5, 2012 15:34
PostgreSQL/PostGIS PL Functions for dealing with 4D Track Data
CREATE OR REPLACE FUNCTION everynseconds(geometry, integer)
RETURNS geometry AS
$BODY$
SELECT
st_makeline(st_locate_along_measure($1,g))
FROM
generate_series(0,floor(st_m(st_endpoint($1)))::int,$2) g;
$BODY$
LANGUAGE sql;
@bitner
bitner / gist:1248501
Created September 28, 2011 17:04
KNN GIST query
select
parcel_id,
address,
st_distance(geom,'SRID=3005;POINT(1011102 450541)') as distance
from
parcels
where
geom && (
select
st_extent(geom)