barton 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -0
- data/AUTHORS +7 -0
- data/Gemfile +6 -0
- data/LICENSE +22 -0
- data/README.md +125 -0
- data/Rakefile +13 -0
- data/barton.gemspec +22 -0
- data/bin/barton +38 -0
- data/config.ru +4 -0
- data/data/.DS_Store +0 -0
- data/data/README.md +31 -0
- data/data/geo/nsw-federal.yaml +21965 -0
- data/data/geo/nsw-local.yaml +95263 -0
- data/data/geo/nsw-state.yaml +33353 -0
- data/data/geo/qld-federal.yaml +15019 -0
- data/data/geo/qld-state.yaml +20997 -0
- data/data/geo/vic-federal.yaml +8097 -0
- data/data/geo/vic-local.yaml +35686 -0
- data/data/geo/vic-state.yaml +14445 -0
- data/data/nsw-federal.yaml +337 -0
- data/data/nsw-local.yaml +2472 -0
- data/data/nsw-state.yaml +663 -0
- data/data/qld-federal.yaml +220 -0
- data/data/qld-state.yaml +643 -0
- data/data/vic-federal.yaml +149 -0
- data/data/vic-local.yaml +2255 -0
- data/data/vic-state.yaml +665 -0
- data/lib/.DS_Store +0 -0
- data/lib/barton/.DS_Store +0 -0
- data/lib/barton/app.rb +68 -0
- data/lib/barton/core.rb +174 -0
- data/lib/barton/version.rb +3 -0
- data/lib/barton.rb +3 -0
- data/pkg/barton-0.0.1.gem +0 -0
- data/specs/.DS_Store +0 -0
- data/specs/data/.DS_Store +0 -0
- data/specs/data/data-processed.yaml +39 -0
- data/specs/data/data-raw.yaml +43 -0
- data/specs/data/geo/data-processed.yaml +256 -0
- data/specs/data/geo/data-raw.yaml +256 -0
- data/specs/data/master/data-processed.yaml +39 -0
- data/specs/data/master/data-raw.yaml +31 -0
- data/specs/data/master/geo.yaml +256 -0
- data/specs/data/master/trap.txt +0 -0
- data/specs/route_spec.rb +36 -0
- data/specs/search_spec.rb +60 -0
- data/specs/setup_spec.rb +77 -0
- metadata +139 -0
data/lib/barton/core.rb
ADDED
@@ -0,0 +1,174 @@
|
|
1
|
+
require 'yaml'
|
2
|
+
require 'digest/sha1'
|
3
|
+
require 'tire'
|
4
|
+
require 'rest_client'
|
5
|
+
require 'uri'
|
6
|
+
require 'json'
|
7
|
+
|
8
|
+
module Barton
|
9
|
+
class Core
|
10
|
+
|
11
|
+
@api_url = 'http://barton.experiementsindemocracy.org/api'
|
12
|
+
|
13
|
+
# Parses a electorate yaml file, merges it with a geo yaml file,
|
14
|
+
# loads them to the datastore and resaves the yaml files
|
15
|
+
def self.parse_yaml( filename )
|
16
|
+
data = YAML::load_file( filename ) if File.exist?( filename )
|
17
|
+
geofile = "#{File.dirname( filename )}/geo/#{File.basename( filename )}"
|
18
|
+
geo = YAML::load_file( geofile ) if File.exist?( geofile )
|
19
|
+
if data.respond_to?( 'each' )
|
20
|
+
data.each do |e|
|
21
|
+
e['id'] = Digest::SHA1.hexdigest( [e['name'], e['tags'].join].join )[0..5] unless e['id'] or not e['name'] or not e['tags']
|
22
|
+
# make geobox and update geo.yaml if boundaries present
|
23
|
+
if e.has_key?( 'boundaries')
|
24
|
+
e['geobox'] = self.create_geobox( e['boundaries'] )
|
25
|
+
# else merge geo if no boundaries are present
|
26
|
+
elsif geo and geo.has_key?( e['id'] ) and geo[e['id']].has_key?( 'boundaries' )
|
27
|
+
e['boundaries'] = geo[e['id']]['boundaries']
|
28
|
+
e['geobox'] = geo[e['id']]['geobox']
|
29
|
+
end
|
30
|
+
end
|
31
|
+
# save parsed yaml
|
32
|
+
data_yaml = Array.new
|
33
|
+
geo_yaml = Hash.new
|
34
|
+
data.each do |e|
|
35
|
+
# remove geo from data
|
36
|
+
geo_yaml[e['id']] = Hash['boundaries' => e['boundaries'], 'geobox' => e['geobox']] if e.has_key?( 'boundaries' )
|
37
|
+
data_yaml.push( e.select { |k,v| not ['boundaries', 'geobox'].include? k } )
|
38
|
+
end
|
39
|
+
File.open( filename, 'w+' ) { |f| f.puts( YAML.dump( data_yaml ) ) }
|
40
|
+
File.open( geofile, 'w+' ) { |f| f.puts( YAML.dump( geo_yaml ) ) }
|
41
|
+
data
|
42
|
+
else
|
43
|
+
nil
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# Creates a minimum bounded box encapsulating the boundary polygons
|
48
|
+
def self.create_geobox( boundaries )
|
49
|
+
return nil unless boundaries.instance_of? Array
|
50
|
+
box = Hash.new
|
51
|
+
boundaries.each do |b|
|
52
|
+
b.split( ' ' ).each do |c|
|
53
|
+
coords = c.split( ',' )
|
54
|
+
box['north'] = coords[1].to_f if box['north'].nil? or coords[1].to_f > box['north']
|
55
|
+
box['south'] = coords[1].to_f if box['south'].nil? or coords[1].to_f < box['south']
|
56
|
+
box['east'] = coords[0].to_f if box['east'].nil? or coords[0].to_f > box['east']
|
57
|
+
box['west'] = coords[0].to_f if box['west'].nil? or coords[0].to_f < box['west']
|
58
|
+
end
|
59
|
+
end
|
60
|
+
box
|
61
|
+
end
|
62
|
+
|
63
|
+
# Purge electorate data from elasticsearch
|
64
|
+
def self.purge_es
|
65
|
+
self.query_es( 'purge' )
|
66
|
+
end
|
67
|
+
|
68
|
+
# Load electorate data to elasticsearch
|
69
|
+
def self.update_es( electorates )
|
70
|
+
self.query_es( 'update', electorates )
|
71
|
+
end
|
72
|
+
|
73
|
+
# Query elasticsearch
|
74
|
+
def self.query_es( action, data=nil )
|
75
|
+
begin
|
76
|
+
Tire.index "#{ENV['RAKE_ENV']}electorates" do
|
77
|
+
delete if action == 'purge'
|
78
|
+
create if action == 'purge'
|
79
|
+
import data if action == 'update' and not data.nil?
|
80
|
+
end
|
81
|
+
rescue => e
|
82
|
+
puts e
|
83
|
+
nil
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
# Returns an array of electorates
|
88
|
+
# :id
|
89
|
+
# :tags
|
90
|
+
# :geo
|
91
|
+
# :address
|
92
|
+
def self.electorates( query={} )
|
93
|
+
results = Array.new
|
94
|
+
terms = ["id:#{query[:id]}"] if query.has_key?( :id )
|
95
|
+
terms = query[:tags] if query.has_key?( :tags )
|
96
|
+
geo = query[:geo] if query.has_key?( :geo )
|
97
|
+
geo = self.address( query[:address] ) if query.has_key?( :address ) and not query.has_key?( :geo )
|
98
|
+
s = Tire.search "#{ENV['RAKE_ENV']}electorates" do
|
99
|
+
query do
|
100
|
+
boolean do
|
101
|
+
if geo
|
102
|
+
long, lat = geo.split( ',' )
|
103
|
+
must { range :north, { :gte => lat } }
|
104
|
+
must { range :south, { :lte => lat } }
|
105
|
+
must { range :east, { :gte => long } }
|
106
|
+
must { range :west, { :lte => long } }
|
107
|
+
elsif terms
|
108
|
+
terms.each { |t| must { string t } }
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
112
|
+
# apply filters only with geo search
|
113
|
+
if geo and terms
|
114
|
+
filter :terms, :_all => terms
|
115
|
+
end
|
116
|
+
size 100
|
117
|
+
end
|
118
|
+
s.results.each do |e|
|
119
|
+
e = e.to_hash
|
120
|
+
e.keys.each { |k| e.delete( k ) if k.match( /_|geobox|boundaries|highlight|sort/ ) }
|
121
|
+
e[:url] = "#{@api_url}/electorates/#{e[:id]}"
|
122
|
+
results.push( e )
|
123
|
+
end
|
124
|
+
results
|
125
|
+
end
|
126
|
+
|
127
|
+
# Geocode lookup to google
|
128
|
+
def self.address( address )
|
129
|
+
# http://maps.googleapis.com/maps/api/geocode/json?address=address&sensor=false®ion=au
|
130
|
+
begin
|
131
|
+
google = RestClient.get "http://maps.googleapis.com/maps/api/geocode/json?address=#{URI.escape( address )}&sensor=false®ion=au"
|
132
|
+
json = JSON.parse( google )
|
133
|
+
if json['status'] == 'OK'
|
134
|
+
puts google
|
135
|
+
return "#{json['results'][0]['geometry']['location']['lng']},#{json['results'][0]['geometry']['location']['lat']}"
|
136
|
+
else
|
137
|
+
return nil
|
138
|
+
end
|
139
|
+
rescue => e
|
140
|
+
puts e
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
# Ray casting algorithm to find if point is in polygon
|
145
|
+
def self.point_in_poly?( geo, boundaries )
|
146
|
+
# get pairs of points of boundaries
|
147
|
+
long, lat = geo.split( ',' )
|
148
|
+
long, lat = long.to_f, lat.to_f
|
149
|
+
boundaries.each do |b|
|
150
|
+
coords = b.split( ' ' )
|
151
|
+
length = coords.length
|
152
|
+
first, second = coords.shift, coords.shift
|
153
|
+
cuts = 0
|
154
|
+
while length > 1
|
155
|
+
cuts += self.crosses?( first, second, lat, long )
|
156
|
+
first = second
|
157
|
+
second = coords.shift
|
158
|
+
length -= 1
|
159
|
+
end
|
160
|
+
return cuts.odd? ? true : false
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
# this fails edge cases where lat,long < ax,by & > bx,ay
|
165
|
+
# ie when it crosses just in front or behind diagonally
|
166
|
+
def self.crosses?( a, b, lat, long )
|
167
|
+
ay, ax = a.split( ',' )
|
168
|
+
by, bx = b.split( ',' )
|
169
|
+
ax, ay, bx, by = ax.to_f, ay.to_f, bx.to_f, by.to_f
|
170
|
+
return 0 if ay < long and by < long
|
171
|
+
return ( ( ax < lat and lat < bx ) or ( bx < lat and lat < ax ) ) ? 1 : 0
|
172
|
+
end
|
173
|
+
end
|
174
|
+
end
|
data/lib/barton.rb
ADDED
Binary file
|
data/specs/.DS_Store
ADDED
Binary file
|
Binary file
|
@@ -0,0 +1,39 @@
|
|
1
|
+
---
|
2
|
+
- name: Ashgrove
|
3
|
+
tags:
|
4
|
+
- Queensland
|
5
|
+
- State
|
6
|
+
- Legislative Assembly
|
7
|
+
- Brisbane North
|
8
|
+
members:
|
9
|
+
- name: bob smith
|
10
|
+
- tags:
|
11
|
+
- transport
|
12
|
+
- roads
|
13
|
+
id: e07a89
|
14
|
+
- name: Aspley
|
15
|
+
tags:
|
16
|
+
- Queensland
|
17
|
+
- State
|
18
|
+
- Legislative Assembly
|
19
|
+
- Brisbane North
|
20
|
+
id: f6586f
|
21
|
+
- name: Brisbane Central
|
22
|
+
tags:
|
23
|
+
- Queensland
|
24
|
+
- State
|
25
|
+
- Legislative Assembly
|
26
|
+
- Brisbane North
|
27
|
+
id: 69dc24
|
28
|
+
members:
|
29
|
+
- name: Greg Yrok
|
30
|
+
tags:
|
31
|
+
- stuff
|
32
|
+
- water
|
33
|
+
- name: Clayfield
|
34
|
+
tags:
|
35
|
+
- Queensland
|
36
|
+
- State
|
37
|
+
- Legislative Assembly
|
38
|
+
- Brisbane North
|
39
|
+
id: '801187'
|
@@ -0,0 +1,43 @@
|
|
1
|
+
---
|
2
|
+
- name: Queensland
|
3
|
+
tags:
|
4
|
+
- State
|
5
|
+
- Queensland
|
6
|
+
members:
|
7
|
+
- name: Campbell Newman
|
8
|
+
roles:
|
9
|
+
- Premier
|
10
|
+
- Member for X
|
11
|
+
id: 83a0a8
|
12
|
+
- name: Ashgrove
|
13
|
+
tags:
|
14
|
+
- Queensland
|
15
|
+
- State
|
16
|
+
- Legislative Assembly
|
17
|
+
- Brisbane North
|
18
|
+
members:
|
19
|
+
- name: Some dude
|
20
|
+
address: some place
|
21
|
+
web: www.stuff.com
|
22
|
+
id: e07a89
|
23
|
+
- name: Aspley
|
24
|
+
tags:
|
25
|
+
- Queensland
|
26
|
+
- State
|
27
|
+
- Legislative Assembly
|
28
|
+
- Brisbane North
|
29
|
+
id: f6586f
|
30
|
+
- name: Brisbane Central
|
31
|
+
tags:
|
32
|
+
- Queensland
|
33
|
+
- State
|
34
|
+
- Legislative Assembly
|
35
|
+
- Brisbane North
|
36
|
+
id: 69dc24
|
37
|
+
- name: Clayfield
|
38
|
+
tags:
|
39
|
+
- Queensland
|
40
|
+
- State
|
41
|
+
- Legislative Assembly
|
42
|
+
- Brisbane North
|
43
|
+
id: '801187'
|
@@ -0,0 +1,256 @@
|
|
1
|
+
---
|
2
|
+
e07a89:
|
3
|
+
boundaries:
|
4
|
+
- 153.0068296754392,-27.43696154039627 153.0062182004481,-27.43565517700658 153.0055129544807,-27.43344757029832
|
5
|
+
153.0051111217854,-27.43259917848863 153.0050963570713,-27.43141004772982 153.0053602989078,-27.43000656231877
|
6
|
+
153.0034313365449,-27.4285927858784 153.0025961023514,-27.42773496831722 153.0005564147037,-27.42448096722211
|
7
|
+
152.9997076803313,-27.42241309620244 152.9995680547386,-27.42087539521013 152.9994646270209,-27.42013645268729
|
8
|
+
153.000072417145,-27.4169928534019 153.0002379418539,-27.41662444396342 153.0006426046373,-27.4161048380352
|
9
|
+
153.0013811331126,-27.41531811697499 153.001117,-27.414711 153.000699,-27.414478
|
10
|
+
153.00068,-27.41445300000001 153.000266,-27.414064 153.000184,-27.414074 152.999866,-27.414278
|
11
|
+
152.999587,-27.414252 152.999138,-27.413849 152.998533,-27.412496 152.998154,-27.41222
|
12
|
+
152.997576,-27.411896 152.99755,-27.411881 152.997063,-27.411585 152.996946,-27.411519
|
13
|
+
152.996384,-27.411315 152.996015,-27.411315 152.995758,-27.411057 152.995504,-27.410966
|
14
|
+
152.995286,-27.411031 152.994901,-27.41116 152.994473,-27.411265 152.994186,-27.411075
|
15
|
+
152.994074,-27.411079 152.993765,-27.41122800000001 152.993289,-27.411578 152.992736,-27.412052
|
16
|
+
152.992442,-27.412531 152.992406,-27.412588 152.992135,-27.412916 152.991716,-27.413263
|
17
|
+
152.991337,-27.413767 152.990964,-27.41434200000001 152.990726,-27.414473 152.990536,-27.414463
|
18
|
+
152.990376,-27.414325 152.989772,-27.413734 152.98954,-27.413172 152.989091,-27.412913
|
19
|
+
152.988823,-27.412557 152.988401,-27.41138 152.987859,-27.410773 152.987545,-27.410582
|
20
|
+
152.9872565744697,-27.41255383124928 152.986515,-27.412457 152.98645,-27.412803
|
21
|
+
152.986067,-27.414891 152.985706,-27.416857 152.985456,-27.418222 152.983962,-27.418003
|
22
|
+
152.983786,-27.417977 152.983402,-27.417921 152.982764,-27.41769 152.981748,-27.417184
|
23
|
+
152.980231,-27.416432 152.979301,-27.416006 152.97671,-27.414627 152.975843,-27.414238
|
24
|
+
152.975357,-27.413964 152.974067,-27.413324 152.972773,-27.412689 152.972547,-27.412588
|
25
|
+
152.971634,-27.412107 152.97079,-27.411706 152.969823,-27.411203 152.969644,-27.41111
|
26
|
+
152.968838,-27.41066 152.967798,-27.410149 152.966813,-27.409812 152.96666,-27.409911
|
27
|
+
152.965714,-27.410499 152.964873,-27.411144 152.964183,-27.411425 152.963732,-27.41156300000002
|
28
|
+
152.962726,-27.411946 152.9619985331991,-27.41237119035507 152.9614205146763,-27.41287466517536
|
29
|
+
152.9600781413066,-27.41427884372851 152.9596314823972,-27.41444423007416 152.9589242246845,-27.41460970040138
|
30
|
+
152.957318,-27.422258 152.952613,-27.421605 152.952511,-27.421575 152.952537,-27.423051
|
31
|
+
152.953681,-27.42457900000001 152.954049,-27.425435 152.954557,-27.425683 152.955559,-27.426044
|
32
|
+
152.9567,-27.42741 152.95831,-27.428297 152.958426,-27.428361 152.958133,-27.428309
|
33
|
+
152.956031,-27.429184 152.953586,-27.430201 152.952051,-27.43084 152.949056,-27.43023000000001
|
34
|
+
152.9488025296305,-27.43018437878719 152.9483,-27.4283 152.9466,-27.428 152.9453,-27.4273
|
35
|
+
152.9433,-27.4274 152.943,-27.4276 152.9428,-27.4281 152.9422,-27.4277 152.9325,-27.4258
|
36
|
+
152.9304,-27.4268 152.9291,-27.4266 152.9276,-27.425 152.925,-27.42470000000001
|
37
|
+
152.9239,-27.4312 152.9232,-27.4319 152.9235,-27.4343 152.9226,-27.4345 152.9214,-27.4342
|
38
|
+
152.9188,-27.4342 152.9173,-27.4334 152.9158,-27.4337 152.9142,-27.4335 152.9129,-27.4326
|
39
|
+
152.9115,-27.4326 152.9105,-27.4333 152.9088,-27.4333 152.9062,-27.4325 152.9052,-27.4318
|
40
|
+
152.9044,-27.4319 152.9053,-27.4265 152.9037,-27.42630000000001 152.904,-27.4254
|
41
|
+
152.9047,-27.4245 152.9049,-27.4239 152.9044,-27.4229 152.905,-27.4216 152.9018,-27.4212
|
42
|
+
152.9022,-27.4185 152.8992,-27.4181 152.8996,-27.4154 152.8976,-27.4151 152.8972,-27.4173
|
43
|
+
152.8727,-27.4138 152.8721,-27.4131 152.8648,-27.4179 152.8631,-27.4177 152.8624,-27.4212
|
44
|
+
152.8625,-27.42180000000002 152.8611,-27.4221 152.8584,-27.4209 152.8556,-27.4209
|
45
|
+
152.8531,-27.4205 152.8516,-27.4216 152.8494,-27.42170000000001 152.8473,-27.4195
|
46
|
+
152.8453,-27.4191 152.8443,-27.4179 152.8427,-27.4175 152.8378,-27.4185 152.8364,-27.41860000000001
|
47
|
+
152.8312,-27.4168 152.8294,-27.4151 152.828,-27.4144 152.826,-27.4118 152.821,-27.4101
|
48
|
+
152.8182,-27.4072 152.8174,-27.4071 152.8165,-27.4061 152.8152,-27.4041 152.8148,-27.4021
|
49
|
+
152.8125,-27.4013 152.812,-27.4016 152.8088,-27.401 152.8087,-27.4007 152.8076,-27.401
|
50
|
+
152.8062,-27.4009 152.8042,-27.3999 152.803,-27.3998 152.8021,-27.3987 152.8014,-27.3984
|
51
|
+
152.8006,-27.3994 152.7997,-27.3995 152.7992,-27.4011 152.7987,-27.4015 152.7993,-27.4016
|
52
|
+
152.7987,-27.4051 152.798652764664,-27.40520002492694 152.799629888044,-27.40535194070279
|
53
|
+
152.7995619003265,-27.40581442334322 152.8007806813098,-27.40732128576283 152.8000130203041,-27.40841325362887
|
54
|
+
152.7995054171357,-27.40860330211971 152.7993764383861,-27.4094675995744 152.7997257117075,-27.40984883933115
|
55
|
+
152.8000020070857,-27.41043406504444 152.8016508143096,-27.41095246385641 152.8022077219359,-27.41175347428867
|
56
|
+
152.802672306969,-27.41276292773835 152.8031411769698,-27.41308427333362 152.8038584016281,-27.41472794361081
|
57
|
+
152.8055364880773,-27.41669216148194 152.8060557278225,-27.41674199383346 152.8083334275578,-27.41469325477526
|
58
|
+
152.8087858706367,-27.41492589905869 152.8092609172203,-27.4159178576716 152.8099500586532,-27.41645819264785
|
59
|
+
152.8105875001278,-27.41722812392476 152.8112632254592,-27.41737566366433 152.812048070384,-27.41733393389153
|
60
|
+
152.8124926311122,-27.41866398604895 152.8134850456183,-27.41962930334253 152.8150628015678,-27.42002454322918
|
61
|
+
152.8152167567834,-27.42013026505915 152.8156242734413,-27.42009803928344 152.8162069143592,-27.41958296594725
|
62
|
+
152.8165646828267,-27.41955020060664 152.817089900964,-27.41959074880812 152.81804637017,-27.42041014939694
|
63
|
+
152.8187152195232,-27.42082863558937 152.8197821431089,-27.42122480382497 152.8210581123564,-27.42258465742216
|
64
|
+
152.8218667197118,-27.42229186896077 152.8220579005144,-27.42239578804096 152.822606919614,-27.42294217933456
|
65
|
+
152.8230970073991,-27.42360522834262 152.8239564839647,-27.42390584623005 152.8240904460275,-27.42402857076867
|
66
|
+
152.8240372175926,-27.42473674736098 152.8239272287179,-27.42500786404741 152.8239139529661,-27.42590770127884
|
67
|
+
152.8241362742346,-27.42626757518016 152.8248751005129,-27.42673173678898 152.8250148139589,-27.42694177680053
|
68
|
+
152.8250236270453,-27.42752645392601 152.8252227900537,-27.42817760719403 152.8258136407488,-27.42923225382863
|
69
|
+
152.8276162446026,-27.43061317969635 152.8278000374736,-27.43089939508258 152.8279276452851,-27.43193295470372
|
70
|
+
152.8284723571387,-27.43257949537456 152.8278628060313,-27.43346960467795 152.8270389793252,-27.43396238909471
|
71
|
+
152.8265066864501,-27.43498081157146 152.8268006419918,-27.43644689632388 152.8257733734803,-27.43869389602025
|
72
|
+
152.82661343294,-27.4396100366373 152.8265704598875,-27.44069645000909 152.826806237312,-27.44164027652422
|
73
|
+
152.8264554284342,-27.44250190683412 152.8309174445801,-27.44243599249728 152.8342446464777,-27.44278869017602
|
74
|
+
152.8389868741764,-27.44576562654201 152.8425969129517,-27.44651530983251 152.8477691311028,-27.44659989062237
|
75
|
+
152.849592352952,-27.4469658851783 152.8509867425289,-27.4468116022525 152.8527160927988,-27.44598217070839
|
76
|
+
152.8548867246839,-27.44608727301367 152.8566440813072,-27.44560946134507 152.8579720999292,-27.44633782940138
|
77
|
+
152.8596663735761,-27.44652775155395 152.8608144242638,-27.44615787307279 152.8636228401979,-27.44301483741806
|
78
|
+
152.8654146842546,-27.44373663533762 152.8671066684076,-27.44525080592968 152.8696488875516,-27.44621160551551
|
79
|
+
152.8716309326698,-27.44762859768057 152.8740672470425,-27.44735283619642 152.8802424441661,-27.45494156288159
|
80
|
+
152.8852376927694,-27.45165655029731 152.8892766695038,-27.45646675654779 152.8895518692535,-27.45625839508792
|
81
|
+
152.8915734186027,-27.45872588341309 152.8920714799485,-27.45842983039021 152.8924506245028,-27.45785943248418
|
82
|
+
152.8964214132621,-27.456895213846 152.8980673332974,-27.45820237149108 152.9024134829952,-27.45978320478463
|
83
|
+
152.9037050322373,-27.45951225004208 152.9068127114662,-27.45730304516268 152.9090033457165,-27.45624425723156
|
84
|
+
152.9114555194408,-27.45652041743488 152.9127131488104,-27.45641600410778 152.9139654748695,-27.45644242791373
|
85
|
+
152.9147562499314,-27.45736234672225 152.9158539422289,-27.45739919653024 152.9173075267353,-27.4570666113448
|
86
|
+
152.9186301969232,-27.45786578597806 152.9194310188937,-27.45861990161008 152.9200687124458,-27.45990194468569
|
87
|
+
152.9202107270614,-27.45993959839147 152.9201893906059,-27.46143888770366 152.9196964141803,-27.46282997565059
|
88
|
+
152.9205266624495,-27.46313281782403 152.9211717551101,-27.46385076812012 152.9234186364556,-27.4637266451885
|
89
|
+
152.924693161936,-27.46485302078589 152.926406120488,-27.46506421194812 152.9277417994476,-27.46492325871211
|
90
|
+
152.9281301388552,-27.46529317924679 152.9287588005009,-27.4653986557154 152.9293507518904,-27.46550175086193
|
91
|
+
152.930232330497,-27.46424463781197 152.9304231199455,-27.46365384971102 152.9317705645213,-27.46375479601874
|
92
|
+
152.9324924582613,-27.4635647298974 152.9330686747703,-27.46464639138419 152.934585765234,-27.46558447601242
|
93
|
+
152.9348252395965,-27.46551338853131 152.9352346145955,-27.46325925415395 152.9357776665484,-27.46255972205865
|
94
|
+
152.9377761223839,-27.46280120251331 152.9440806575983,-27.46374014928006 152.9449443363521,-27.45899985814678
|
95
|
+
152.9578076065504,-27.46076423033213 152.9583000219562,-27.45799999587813 152.9589999852774,-27.45459994138427
|
96
|
+
152.962381710663,-27.45500082647872 152.9629999920575,-27.45129999726046 152.9650000093636,-27.45159999353901
|
97
|
+
152.9653090743719,-27.44990017418864 152.9669822525794,-27.44989410557328 152.9677612986875,-27.45060589198971
|
98
|
+
152.9671447636814,-27.45154067296991 152.9658721073074,-27.45209856620908 152.9657945492645,-27.45229391264167
|
99
|
+
152.9662522774694,-27.45275698441521 152.9673779371095,-27.45289290016937 152.9674083022551,-27.45320982864797
|
100
|
+
152.9676993449072,-27.45327480121724 152.9677692665279,-27.45288179864467 152.9692806084383,-27.45309925767617
|
101
|
+
152.9692623562309,-27.45339861733627 152.9704343556772,-27.4535566630167 152.9705024239027,-27.45332259070619
|
102
|
+
152.9717439792416,-27.45351211734405 152.9723416486536,-27.4526014453287 152.9735068257981,-27.45301618089912
|
103
|
+
152.974385003061,-27.45295698294721 152.9750056760188,-27.45331080337325 152.9758662966793,-27.45462968957798
|
104
|
+
152.9773354823289,-27.45498943690687 152.9779748011064,-27.45484503842479 152.9783242350708,-27.45458586652278
|
105
|
+
152.9778335663482,-27.45389533634693 152.978257495468,-27.45318358576344 152.9784862655671,-27.45240330907407
|
106
|
+
152.978967,-27.451592 152.979196,-27.451758 152.979343,-27.45191300000001 152.979699,-27.452284
|
107
|
+
152.980921,-27.453323 152.981578,-27.454173 152.98167,-27.45433 152.982495,-27.455778
|
108
|
+
152.983117,-27.456032 152.984476,-27.456417 152.985767,-27.457015 152.9884999786892,-27.45437883674868
|
109
|
+
152.9882752069327,-27.45333905400984 152.9892589108621,-27.44904428922023 152.9898720144651,-27.44935340019254
|
110
|
+
152.9909388001116,-27.44893336662114 152.9920919997236,-27.4492166108634 152.9936590781372,-27.44884379764874
|
111
|
+
152.9951436299709,-27.44868425699783 152.9948825408951,-27.44780678243568 152.9944593332784,-27.44756707318917
|
112
|
+
152.99539242508,-27.4469802787713 152.9956317080787,-27.44620196122167 152.9963747914543,-27.44600790209203
|
113
|
+
152.9970182459066,-27.44653173959854 152.9975383187334,-27.44673050486059 152.9980196417814,-27.44711123067646
|
114
|
+
152.9978038890582,-27.44788866843211 152.9973609366049,-27.44864758042616 152.997619107749,-27.44895611696033
|
115
|
+
152.9985024332259,-27.44881906680146 152.9987659413971,-27.4483761600557 152.9992657457425,-27.4484142715441
|
116
|
+
152.9992835108361,-27.44893173283537 153.0002880737435,-27.44901509295941 153.0008538891726,-27.44805342734437
|
117
|
+
153.0004392996405,-27.44711084422466 153.0003082845174,-27.44630956340576 153.0008083746387,-27.44588341277659
|
118
|
+
153.0013136399448,-27.44565385485453 153.0019729302158,-27.44499889121277 153.0016328199843,-27.44480768613072
|
119
|
+
153.001327349232,-27.4443276304552 153.0014226878713,-27.44363992064423 153.0017886555186,-27.44362762090262
|
120
|
+
153.0021681937215,-27.44346826451389 153.0024904680785,-27.44314411858885 153.0027884933192,-27.44245459962717
|
121
|
+
153.0027354990758,-27.44200567720838 153.0025456401126,-27.44178979649606 153.0022957573782,-27.4413959845179
|
122
|
+
153.001999122394,-27.44133489513702 153.0011787654193,-27.44006807821909 153.0012541195053,-27.43989076019304
|
123
|
+
153.0019288547097,-27.43936170101258 153.0023102913831,-27.43920298583237 153.0026290654083,-27.43920966454203
|
124
|
+
153.0030465355376,-27.43937678976348 153.0034752418972,-27.43965024177337 153.0040063405542,-27.4397487910026
|
125
|
+
153.0053187252689,-27.43971197861989 153.0059302312682,-27.43952276405063 153.0062875521537,-27.43918536563777
|
126
|
+
153.0064601924022,-27.43817301903762 153.0071901109249,27.43830745233188 -153.0068296754392,-27.43696154039627,0
|
127
|
+
geobox:
|
128
|
+
north: 27.3984
|
129
|
+
south: -27.46558447601242
|
130
|
+
east: 153.0071901109249
|
131
|
+
west: -152.798652764664
|
132
|
+
f6586f:
|
133
|
+
boundaries:
|
134
|
+
- 153.0148,-27.2877 153.0144,-27.28900000000001 153.0141,-27.2922 153.0131,-27.29510000000001
|
135
|
+
153.0128,-27.2972 153.0116,-27.2976 153.011,-27.2972 153.0104,-27.2973 153.0094,-27.298
|
136
|
+
153.009,-27.2989 153.0098,-27.3 153.0103,-27.3003 153.0133,-27.3011 153.0139,-27.3019
|
137
|
+
153.0136,-27.3023 153.0102,-27.302 153.008,-27.3025 153.008,-27.3019 153.0073,-27.3015
|
138
|
+
153.0067,-27.30130000000001 153.0055,-27.3018 153.0051,-27.3015 153.0048,-27.3007
|
139
|
+
153.0059,-27.3003 153.0061,-27.2999 153.0056,-27.2993 153.0044,-27.2992 153.0039,-27.2992
|
140
|
+
153.0035,-27.29970000000001 153.0032,-27.30130000000001 153.0024,-27.302 153.0015,-27.3023
|
141
|
+
152.999,-27.3018 152.998,-27.3019 152.9971,-27.3023 152.9969,-27.3033 152.9972,-27.3041
|
142
|
+
152.9972,-27.30580000000001 152.9967,-27.3078 152.9955,-27.3087 152.9956,-27.30890000000001
|
143
|
+
152.9962,-27.30890000000001 152.9965,-27.3093 152.996,-27.3099 152.9959,-27.3107
|
144
|
+
152.9978,-27.3112 152.9983,-27.3118 152.9984,-27.3121 152.9979,-27.3125 152.9983,-27.3129
|
145
|
+
152.9993,-27.3126 152.9997,-27.31200000000001 152.9997,-27.3115 152.9991,-27.3099
|
146
|
+
152.9985,-27.3095 152.9983,-27.309 152.9985,-27.3078 152.9991,-27.3076 152.9994,-27.309
|
147
|
+
153.0005,-27.3102 153.0007,-27.3109 153.0005,-27.3127 153.0012,-27.3137 153.0015,-27.3152
|
148
|
+
153.0022,-27.3158 153.0025,-27.3167 153.0029,-27.3178 153.0031,-27.3194 153.0028,-27.31960000000001
|
149
|
+
153.0018,-27.3198 153.0015,-27.3203 153.001,-27.3203 153.0005,-27.3209 153.0003,-27.3213
|
150
|
+
153.0005,-27.322 152.9998,-27.3235 152.9991,-27.3238 152.9979,-27.3238 152.997,-27.32420000000001
|
151
|
+
152.9975,-27.32560000000001 152.9968,-27.3264 152.9959,-27.3268 152.9951,-27.3277
|
152
|
+
152.9951,-27.3304 152.9942,-27.334 152.9936,-27.3351 152.9912,-27.336 152.9884,-27.3361
|
153
|
+
152.9873,-27.3374 152.986,-27.33780000000001 152.9859,-27.3385 152.9852,-27.3388
|
154
|
+
152.9849,-27.3397 152.9839,-27.3401 152.9832,-27.34 152.983,-27.3404 152.9825,-27.3406
|
155
|
+
152.9828,-27.3411 152.9823,-27.3418 152.9815,-27.342 152.9813,-27.3423 152.9813,-27.343
|
156
|
+
152.9808,-27.3434 152.9805,-27.3441 152.9811,-27.3449 152.9812,-27.3459 152.9795,-27.3463
|
157
|
+
152.9791,-27.3468 152.9793,-27.3478 152.9804,-27.3487 152.9802,-27.349 152.9792,-27.3492
|
158
|
+
152.9791,-27.3497 152.98,-27.3502 152.981,-27.3503 152.9816,-27.3512 152.9822,-27.3514
|
159
|
+
152.9824,-27.35300000000001 152.9829,-27.35300000000001 152.9833,-27.3526 152.9847,-27.3528
|
160
|
+
152.9857,-27.35310000000001 152.9861,-27.3538 152.987,-27.354 152.9875,-27.35470000000001
|
161
|
+
152.9871,-27.3553 152.9878,-27.3555 152.9885,-27.35770000000001 152.9878,-27.3582
|
162
|
+
152.9879,-27.3593 152.9877,-27.3595 152.9817,-27.3586 152.9807,-27.3641 152.9837,-27.3645
|
163
|
+
152.9831,-27.3681 152.9806,-27.3678 152.9801,-27.3702 152.9803,-27.3708 152.9799,-27.3707
|
164
|
+
152.9802,-27.3719 152.9803,-27.3752 152.981,-27.3801 152.9829,-27.38210000000001
|
165
|
+
152.9832,-27.38360000000001 152.9839,-27.3849 152.9848052406098,-27.38624494567978
|
166
|
+
152.9847981426125,-27.38718750209596 152.99879,-27.389226 153.0003277972087,-27.38133642512532
|
167
|
+
153.0041031934372,-27.38183283631371 153.0053726983958,-27.38279636125359 153.0065215099073,-27.38298012714732
|
168
|
+
153.007786,-27.382467 153.0218490599467,-27.38451843892112 153.0227999184683,-27.37950049103706
|
169
|
+
153.0234999538228,-27.37530000732409 153.0237003614899,-27.37490616271741 153.024191,-27.37439
|
170
|
+
153.024555,-27.374277 153.024556,-27.374276 153.024898,-27.374481 153.026276,-27.375442
|
171
|
+
153.027416,-27.376406 153.028323,-27.377579 153.029469,-27.379202 153.031030861157,-27.37885689939309
|
172
|
+
153.0326846229447,-27.3780910543758 153.0352812532173,-27.37447192342412 153.0354197499465,-27.37412595889357
|
173
|
+
153.0368633598745,-27.36684008360935 153.0264508006231,-27.36529614261344 153.0279,-27.3579
|
174
|
+
153.0265,-27.35770000000001 153.0272,-27.3537 153.0281,-27.3533 153.0298,-27.3532
|
175
|
+
153.0308,-27.3538 153.0325,-27.35300000000001 153.0311317762465,-27.35206135327331
|
176
|
+
153.0301225936114,-27.35104755732755 153.0297226002588,-27.35001550894809 153.0281608876154,-27.34542833937457
|
177
|
+
153.0189986014033,-27.33326990052585 153.0172006296593,-27.32975011720755 153.0173825262883,-27.32975820759978
|
178
|
+
153.0172007075046,-27.32929117274638 153.0184569091798,-27.32239031484036 153.0183151923336,-27.32235382577387
|
179
|
+
153.0189179832615,-27.31903557892197 153.0187460805811,-27.31723513475955 153.018119575618,-27.31629450326489
|
180
|
+
153.0180617545236,-27.31385933393851 153.0194074192074,-27.3118041202696 153.0208620203749,-27.31078939454977
|
181
|
+
153.0224609267154,-27.31012912154233 153.0124350353285,-27.30872715292606 153.0130920980145,-27.30679970402369
|
182
|
+
153.0150340438349,-27.30466960988999 153.016375882955,-27.30129431407136 153.0178913362124,-27.29532843276984
|
183
|
+
153.019100784776,-27.29137952013341 153.0155345778941,-27.28691721973524 153.0148,-27.2877,0
|
184
|
+
geobox:
|
185
|
+
north: -27.28691721973524
|
186
|
+
south: -27.389226
|
187
|
+
east: 153.0368633598745
|
188
|
+
west: 152.9791
|
189
|
+
69dc24:
|
190
|
+
boundaries:
|
191
|
+
- 153.0123006927877,-27.46936354541213 153.0169587281769,-27.46870066729663 153.0213261637199,-27.47136677757538
|
192
|
+
153.0256273699427,-27.47892442954736 153.0281083544132,-27.48107362252231 153.032009002021,-27.48034933845813
|
193
|
+
153.0334430720462,-27.47643730692347 153.0326674099612,-27.46777414577817 153.0339015393494,-27.46391302664942
|
194
|
+
153.0362076338382,-27.4630149799361 153.0379326017727,-27.46533658979773 153.0399011979032,-27.47327782990426
|
195
|
+
153.0449419756496,-27.47702505169861 153.0528253623067,-27.47368424860819 153.0562927405536,-27.46824623873856
|
196
|
+
153.0530191435483,-27.4604516970175 153.0521750088792,-27.45366093026118 153.0490419379646,-27.44428266794812
|
197
|
+
153.049931837726,-27.44301143636409 153.0472,-27.4418 153.044,-27.441 153.0432,-27.4412
|
198
|
+
153.0426,-27.4418 153.0422,-27.4419 153.0418,-27.4417 153.0417,-27.441 153.0419,-27.4395
|
199
|
+
153.0415,-27.4379 153.0418,-27.4373 153.0433,-27.4358 153.0431,-27.4346 153.0426,-27.4337
|
200
|
+
153.0398,-27.4336 153.0393,-27.4316 153.0395,-27.4303 153.041463390013,-27.42800381540521
|
201
|
+
153.0418849559216,-27.42713842344236 153.0421199264456,-27.42579556246396 153.0376943139785,-27.4251491163371
|
202
|
+
153.0375,-27.4261 153.0333,-27.4255 153.0328307330516,-27.42544044648808 153.0326,-27.4257
|
203
|
+
153.0281947209463,-27.42504922154302 153.027151935863,-27.4305742403869 153.0275080742721,-27.43079679026532
|
204
|
+
153.0274153751559,-27.43103581700485 153.0272318278603,-27.43228025213359 153.0236389099578,-27.43175552109637
|
205
|
+
153.0230182473356,-27.43573350067522 153.0220271422185,-27.4358005375996 153.0194950621828,-27.43622499700872
|
206
|
+
153.0140325196557,-27.43547410004617 153.0139453789864,-27.43565321166517 153.0116922626275,-27.43535358447881
|
207
|
+
153.0068296696409,-27.43696153562527 153.0071901109249,-27.43830745233188 153.0068079986374,-27.4407010868363
|
208
|
+
153.0068284755962,-27.44274957302583 153.0075217328367,-27.44443019880933 153.008287500596,-27.44568992126066
|
209
|
+
153.0091040368949,-27.44628895499207 153.0109832088431,-27.44901298588365 153.0111187574591,-27.44940504919405
|
210
|
+
153.010989962675,-27.45142518108116 153.012052818074,-27.45450500122457 153.0148169933786,-27.4594088595406
|
211
|
+
153.0147306770109,-27.46033253925091 153.0158692920822,-27.46521072944986 153.0105186097937,-27.46705734956963
|
212
|
+
153.0117773089625,-27.46976677983961 153.0123006927877,-27.46936354541213,0
|
213
|
+
geobox:
|
214
|
+
north: -27.42504922154302
|
215
|
+
south: -27.48107362252231
|
216
|
+
east: 153.0562927405536
|
217
|
+
west: 153.0068079986374
|
218
|
+
'801187':
|
219
|
+
boundaries:
|
220
|
+
- 153.0507821192325,-27.44179706564809 153.0593793485766,-27.44051871452692 153.079537996401,-27.44611196521132
|
221
|
+
153.091119694259,-27.44762828744587 153.1008500760433,-27.44510153104588 153.110011022877,-27.44114768978185
|
222
|
+
153.1208857176633,-27.43054755870647 153.1405234526649,-27.42052694921127 153.1535171090276,-27.3939117271675
|
223
|
+
153.1614213447337,-27.37970171468238 153.16,-27.378 153.157,-27.375 153.156,-27.364
|
224
|
+
153.15,-27.361 153.139,-27.361 153.122,-27.352 153.109,-27.349 153.1079291442578,-27.34936588334066
|
225
|
+
153.1069593460006,-27.34836682068534 153.1066110780346,-27.34836675562522 153.1060194490596,-27.34821896243026
|
226
|
+
153.1058983245949,-27.34801702690034 153.1056112316836,-27.34784204080671 153.1054753710769,-27.34754606725446
|
227
|
+
153.1050360847476,-27.34778828319538 153.1054124558121,-27.3500777186619 153.1050484877788,-27.35290677025846
|
228
|
+
153.1046234190183,-27.35422989318406 153.1028944132159,-27.35697837915757 153.1026667526042,-27.35751639405009
|
229
|
+
153.1004695830087,-27.37113400376461 153.104098104928,-27.3754407799768 153.1039548101237,-27.37558889405846
|
230
|
+
153.1060125990899,-27.37798550889755 153.098103375067,-27.38344658680594 153.0972645225234,-27.38442331088891
|
231
|
+
153.0959131760163,-27.3855933903478 153.0955884089913,-27.38566920254464 153.0952288409863,-27.38690035185751
|
232
|
+
153.0934786672316,-27.3908777609176 153.0923847920287,-27.39227484192028 153.0912561938946,-27.39315622064961
|
233
|
+
153.0896651901349,-27.39387043834372 153.0859575616711,-27.39469979991369 153.0842616732772,-27.39544429936624
|
234
|
+
153.0824864053442,-27.39666702648082 153.0752377570196,-27.40340821825948 153.0745872281754,-27.40450238510184
|
235
|
+
153.0745185191519,-27.40587096789587 153.074750275112,-27.40692084583121 153.074025,-27.407075
|
236
|
+
153.066497,-27.411173 153.059294,-27.41037 153.058357,-27.41014 153.058014,-27.409943
|
237
|
+
153.057509,-27.409675 153.057405,-27.409575 153.061219523231,-27.40462809861038
|
238
|
+
153.061618459034,-27.4035578345028 153.0623054620955,-27.39964204074094 153.0628015238961,-27.39914930475945
|
239
|
+
153.0663341374589,-27.39673299112181 153.0597569224488,-27.38899529913082 153.0594489673815,-27.38887951017604
|
240
|
+
153.0592336626474,-27.39207625161008 153.0523508876886,-27.39106124508678 153.0472977443835,-27.38832011347703
|
241
|
+
153.0427787310519,-27.38766970980366 153.0404178700674,-27.40057474912822 153.0355000040619,-27.40233292216953
|
242
|
+
153.0315044363749,-27.40186790147737 153.0324172837105,-27.40731326860781 153.0322730762835,-27.40832529782038
|
243
|
+
153.0323518725191,-27.4094915705319 153.0334303221358,-27.411154510501 153.033503,-27.412687
|
244
|
+
153.0336440119348,-27.41289900888773 153.0351019659728,-27.41430295838404 153.0359049959823,-27.41495557152074
|
245
|
+
153.0366523251151,-27.41549324775119 153.0364395434262,-27.41720348600894 153.0341294475173,-27.42046052623526
|
246
|
+
153.0334000144136,-27.42480001874161 153.0333,-27.4255 153.0375,-27.4261 153.0376943139785,-27.4251491163371
|
247
|
+
153.0421199264456,-27.42579556246396 153.0418849559216,-27.42713842344236 153.041463390013,-27.42800381540521
|
248
|
+
153.0395,-27.4303 153.0393,-27.4316 153.0398,-27.4336 153.0426,-27.4337 153.0431,-27.4346
|
249
|
+
153.0433,-27.4358 153.0418,-27.4373 153.0415,-27.4379 153.0419,-27.4395 153.0417,-27.441
|
250
|
+
153.0418,-27.4417 153.0422,-27.4419 153.0426,-27.4418 153.0432,-27.4412 153.044,-27.441
|
251
|
+
153.0472,-27.4418 153.0499319046333,-27.44301145270565 153.0507821192325,-27.44179706564809,0
|
252
|
+
geobox:
|
253
|
+
north: -27.34754606725446
|
254
|
+
south: -27.44762828744587
|
255
|
+
east: 153.1614213447337
|
256
|
+
west: 153.0315044363749
|