Skip to content

Instantly share code, notes, and snippets.

💭
Working

# William Dollinsgeobabbler

💭
Working
• Sort options
Created Jul 18, 2012
Windows form showing the use of GeoIQ4Net to call analysis functions
View IntersectDemo.cs
 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using GeoIQ.Net; using GeoIQ.Net.Data;
Created Oct 4, 2012
Additional function for MapTiler to calculate ArcGIS tile coordinates
View AgsTile.py
 def AgsTile(self, tx, ty, zoom): #Converts TMS tile coordinates to ArcGIS Tile coordinates xhex = hex(tx) yhex = hex((2**zoom - 1) - ty) xhex = xhex.replace("0x", "") yhex = yhex.replace("0x", "") xhex = "C" + xhex.zfill(8) yhex = "R" + yhex.zfill(8) return xhex, yhex
Created Nov 2, 2012
Simple SQL Server test
View point_poly.sql
 DECLARE @pt geometry; SET @pt = geometry::Point(-82.655, 42.399, 4326) SELECT COUNT(GID) FROM lake_st_clair WHERE geom.STContains(@pt) = 1;
Created Nov 3, 2012
Example of using a trigger in SQL Server 2008 to test spatial relationship
View spatial_trigger_sqlserver.sql
 USE [MyDB] GO /****** Object: Trigger [dbo].[Locations_Insert] Script Date: 11/03/2012 08:50:48 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO /* This trigger makes sure that the data being inserted into the Locations falls within a specific polygon stored in another table. If it doesn't, the transaction is rolled back.
Created Dec 11, 2012
Snippet showing use of FGDB API extension methods
View ToGeoJSON_sample.cs
 var path = Server.MapPath("/App_Data/mvc_samples.gdb"); Geodatabase gdb = Geodatabase.Open(path); Table statesTable = gdb.OpenTable("\\us_states"); RowCollection rows = statesTable.Search("*", "STATE_NAME LIKE 'M%'", RowInstance.Recycle); var rval = rows.ToGeoJson(); gdb.Close(); Response.ContentType = "application/json"; object result = this.Content(rval); return result as ActionResult;
Created Dec 13, 2012
Script to read Wordpress export file, fetch images via URL, and write locally.
View extract_wordpress_images.py
 import sys import os import urllib from bs4 import BeautifulSoup #TODO: pass in xml path and output folder as args xml = open('C:\\Workspace\\blog\\geomusings_export.xml').read() doc = BeautifulSoup(xml) #attachments could technically be something other than images
Created Jan 11, 2013
Quick script to look for missing tiles in a cache.
View tile_inventory.py
 ## Copyright (c) 2013, William Dollins ## All rights reserved. ## ## Redistribution and use in source and binary forms, with or without ## modification, are permitted provided that the following conditions are met: ## ## Redistributions of source code must retain the above copyright notice, ## this list of conditions and the following disclaimer. ## ## Redistributions in binary form must reproduce the above copyright notice,
Created Jan 21, 2013
Script for counting/totaling number of tiles with user-supplied bounds in a Google tiling scheme.
View tilecalc.py
 ## Copyright (c) 2013, William Dollins ## All rights reserved. ## ## Redistribution and use in source and binary forms, with or without ## modification, are permitted provided that the following conditions are met: ## ## Redistributions of source code must retain the above copyright notice, ## this list of conditions and the following disclaimer. ## ## Redistributions in binary form must reproduce the above copyright notice,
Created May 6, 2013
Script to load IP blocks from MaxMind GeoLiteCity into a PostgreSQL database.
View load_ipblocks.py
 import site import psycopg2 import csv conn = psycopg2.connect("dbname=mydb host=myhost user=myuser password=mypass") cur = conn.cursor() cr = csv.reader(open("/path/to/my.csv","rb")) i = 0 for row in cr:
Last active Dec 19, 2015
View vlayers.json
 { "vlayers": [{ "vlayer": { "featureSources": ["feature1.json", "feature2.json"] } }, { "vlayer": { "featureSources": ["feature3.json",
You can’t perform that action at this time.