/
LPZStatePolygons.m
4020 lines (3756 loc) · 225 KB
/
LPZStatePolygons.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
//
// LPZStatePolygon.m
// License Plate Zone
// https://itunes.apple.com/us/app/license-plate-zone/id509842366
//
// Copyright (c) 2012 KJH Software LLC. All rights reserved.
// If downloaded from https://github.com/kjhsoftware/us-state-polygons,
// available under The MIT License (MIT).
//
#import "LPZStatePolygons.h"
@implementation LPZStatePolygons
- (MKPolygon *)polygonForState:(NSString *)state
{
static NSMutableDictionary *polygons;
if (!polygons) {
polygons = [[NSMutableDictionary alloc] init];
}
MKPolygon *polygon = nil;
NSString *selectorName = [NSString stringWithFormat:@"polygonFor%@", [state stringByReplacingOccurrencesOfString:@" " withString:@"_"]];
SEL polySelector = NSSelectorFromString(selectorName);
if ([self respondsToSelector:polySelector]) {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
polygon = [self performSelector:polySelector];
#pragma clang diagnostic pop
polygon.title = state;
[polygons setValue:polygon forKey:state];
}
return polygon;
}
//
// code below generated from states.xml
//
- (MKPolygon *)polygonForAlaska
{
CLLocationCoordinate2D points[86];
points[0] = CLLocationCoordinate2DMake(70.0187, -141.0205);
points[1] = CLLocationCoordinate2DMake(70.1292, -141.7291);
points[2] = CLLocationCoordinate2DMake(70.4515, -144.8163);
points[3] = CLLocationCoordinate2DMake(70.7471, -148.4583);
points[4] = CLLocationCoordinate2DMake(70.7923, -151.1609);
points[5] = CLLocationCoordinate2DMake(71.1470, -152.6221);
points[6] = CLLocationCoordinate2DMake(71.1185, -153.9954);
points[7] = CLLocationCoordinate2DMake(71.4307, -154.8853);
points[8] = CLLocationCoordinate2DMake(71.5232, -156.7529);
points[9] = CLLocationCoordinate2DMake(71.2796, -157.9449);
points[10] = CLLocationCoordinate2DMake(71.2249, -159.6313);
points[11] = CLLocationCoordinate2DMake(70.6363, -161.8671);
points[12] = CLLocationCoordinate2DMake(70.0843, -163.5809);
points[13] = CLLocationCoordinate2DMake(69.3028, -165.2399);
points[14] = CLLocationCoordinate2DMake(69.1782, -166.8768);
points[15] = CLLocationCoordinate2DMake(68.3344, -168.0414);
points[16] = CLLocationCoordinate2DMake(67.6844, -165.9155);
points[17] = CLLocationCoordinate2DMake(67.2933, -164.6082);
points[18] = CLLocationCoordinate2DMake(66.7789, -164.0149);
points[19] = CLLocationCoordinate2DMake(66.5810, -165.7507);
points[20] = CLLocationCoordinate2DMake(66.2867, -167.5745);
points[21] = CLLocationCoordinate2DMake(66.0269, -168.9862);
points[22] = CLLocationCoordinate2DMake(65.4970, -168.9478);
points[23] = CLLocationCoordinate2DMake(65.0420, -167.4756);
points[24] = CLLocationCoordinate2DMake(64.3922, -167.0142);
points[25] = CLLocationCoordinate2DMake(64.0554, -165.7343);
points[26] = CLLocationCoordinate2DMake(64.0193, -163.2294);
points[27] = CLLocationCoordinate2DMake(63.9615, -162.1143);
points[28] = CLLocationCoordinate2DMake(63.6877, -163.6029);
points[29] = CLLocationCoordinate2DMake(63.4530, -165.3717);
points[30] = CLLocationCoordinate2DMake(62.4133, -166.3715);
points[31] = CLLocationCoordinate2DMake(61.6534, -166.9867);
points[32] = CLLocationCoordinate2DMake(60.8556, -166.4429);
points[33] = CLLocationCoordinate2DMake(60.5357, -167.8381);
points[34] = CLLocationCoordinate2DMake(59.5482, -167.7118);
points[35] = CLLocationCoordinate2DMake(59.4115, -165.8002);
points[36] = CLLocationCoordinate2DMake(59.3696, -164.5972);
points[37] = CLLocationCoordinate2DMake(59.1168, -162.8558);
points[38] = CLLocationCoordinate2DMake(58.1185, -162.5427);
points[39] = CLLocationCoordinate2DMake(58.1359, -160.6421);
points[40] = CLLocationCoordinate2DMake(58.0285, -159.5050);
points[41] = CLLocationCoordinate2DMake(57.6336, -158.8953);
points[42] = CLLocationCoordinate2DMake(56.9090, -159.9060);
points[43] = CLLocationCoordinate2DMake(56.3926, -160.6531);
points[44] = CLLocationCoordinate2DMake(56.2342, -161.8835);
points[45] = CLLocationCoordinate2DMake(55.7240, -162.9822);
points[46] = CLLocationCoordinate2DMake(55.2478, -164.3994);
points[47] = CLLocationCoordinate2DMake(54.7753, -165.3168);
points[48] = CLLocationCoordinate2DMake(54.1463, -167.1075);
points[49] = CLLocationCoordinate2DMake(53.5632, -168.5852);
points[50] = CLLocationCoordinate2DMake(53.1402, -169.9146);
points[51] = CLLocationCoordinate2DMake(52.5964, -169.5959);
points[52] = CLLocationCoordinate2DMake(52.9089, -168.2227);
points[53] = CLLocationCoordinate2DMake(54.2139, -162.7734);
points[54] = CLLocationCoordinate2DMake(54.6786, -159.1452);
points[55] = CLLocationCoordinate2DMake(55.6567, -155.4634);
points[56] = CLLocationCoordinate2DMake(57.3510, -152.1400);
points[57] = CLLocationCoordinate2DMake(59.2209, -150.8203);
points[58] = CLLocationCoordinate2DMake(59.7695, -147.4461);
points[59] = CLLocationCoordinate2DMake(60.3521, -145.9850);
points[60] = CLLocationCoordinate2DMake(59.8917, -144.1544);
points[61] = CLLocationCoordinate2DMake(59.8172, -141.6811);
points[62] = CLLocationCoordinate2DMake(59.5225, -140.5124);
points[63] = CLLocationCoordinate2DMake(59.0292, -138.8548);
points[64] = CLLocationCoordinate2DMake(57.9032, -136.8526);
points[65] = CLLocationCoordinate2DMake(56.9157, -136.0725);
points[66] = CLLocationCoordinate2DMake(56.1555, -134.9794);
points[67] = CLLocationCoordinate2DMake(55.3237, -134.0057);
points[68] = CLLocationCoordinate2DMake(54.6341, -133.6418);
points[69] = CLLocationCoordinate2DMake(54.7135, -130.6261);
points[70] = CLLocationCoordinate2DMake(55.2869, -129.9930);
points[71] = CLLocationCoordinate2DMake(55.9869, -130.0108);
points[72] = CLLocationCoordinate2DMake(56.1057, -130.1083);
points[73] = CLLocationCoordinate2DMake(56.6086, -131.5887);
points[74] = CLLocationCoordinate2DMake(57.8404, -132.8755);
points[75] = CLLocationCoordinate2DMake(58.7276, -133.8423);
points[76] = CLLocationCoordinate2DMake(59.3108, -134.9121);
points[77] = CLLocationCoordinate2DMake(59.8020, -135.4724);
points[78] = CLLocationCoordinate2DMake(59.6039, -136.3445);
points[79] = CLLocationCoordinate2DMake(59.1619, -136.8251);
points[80] = CLLocationCoordinate2DMake(59.2441, -137.6079);
points[81] = CLLocationCoordinate2DMake(60.0902, -139.2119);
points[82] = CLLocationCoordinate2DMake(60.3575, -139.0938);
points[83] = CLLocationCoordinate2DMake(60.1866, -140.0056);
points[84] = CLLocationCoordinate2DMake(60.3059, -140.9999);
points[85] = CLLocationCoordinate2DMake(70.0187, -141.0205);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:86];
return poly;
}
- (MKPolygon *)polygonForAlabama
{
CLLocationCoordinate2D points[24];
points[0] = CLLocationCoordinate2DMake(35.0078, -88.2024);
points[1] = CLLocationCoordinate2DMake(34.9844, -85.6044);
points[2] = CLLocationCoordinate2DMake(32.8404, -85.1756);
points[3] = CLLocationCoordinate2DMake(32.2593, -84.8927);
points[4] = CLLocationCoordinate2DMake(32.1535, -85.0342);
points[5] = CLLocationCoordinate2DMake(31.7947, -85.1358);
points[6] = CLLocationCoordinate2DMake(31.5200, -85.0438);
points[7] = CLLocationCoordinate2DMake(31.3384, -85.0836);
points[8] = CLLocationCoordinate2DMake(31.1946, -85.1077);
points[9] = CLLocationCoordinate2DMake(31.1079, -85.0349);
points[10] = CLLocationCoordinate2DMake(31.0003, -85.0012);
points[11] = CLLocationCoordinate2DMake(30.9964, -87.5978);
points[12] = CLLocationCoordinate2DMake(30.9647, -87.5875);
points[13] = CLLocationCoordinate2DMake(30.8651, -87.6342);
points[14] = CLLocationCoordinate2DMake(30.6438, -87.3945);
points[15] = CLLocationCoordinate2DMake(30.5067, -87.4433);
points[16] = CLLocationCoordinate2DMake(30.4362, -87.3664);
points[17] = CLLocationCoordinate2DMake(30.2828, -87.5178);
points[18] = CLLocationCoordinate2DMake(30.1493, -87.5164);
points[19] = CLLocationCoordinate2DMake(30.1546, -88.3864);
points[20] = CLLocationCoordinate2DMake(31.8939, -88.4743);
points[21] = CLLocationCoordinate2DMake(34.8938, -88.1021);
points[22] = CLLocationCoordinate2DMake(34.9107, -88.1461);
points[23] = CLLocationCoordinate2DMake(34.9955, -88.1998);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:24];
return poly;
}
- (MKPolygon *)polygonForArkansas
{
CLLocationCoordinate2D points[64];
points[0] = CLLocationCoordinate2DMake(33.0225, -94.0416);
points[1] = CLLocationCoordinate2DMake(33.0036, -91.1659);
points[2] = CLLocationCoordinate2DMake(33.1192, -91.2016);
points[3] = CLLocationCoordinate2DMake(33.1835, -91.1041);
points[4] = CLLocationCoordinate2DMake(33.3397, -91.1536);
points[5] = CLLocationCoordinate2DMake(33.4223, -91.1646);
points[6] = CLLocationCoordinate2DMake(33.4337, -91.2291);
points[7] = CLLocationCoordinate2DMake(33.5414, -91.2524);
points[8] = CLLocationCoordinate2DMake(33.6135, -91.1838);
points[9] = CLLocationCoordinate2DMake(33.6878, -91.2524);
points[10] = CLLocationCoordinate2DMake(33.6969, -91.1261);
points[11] = CLLocationCoordinate2DMake(33.7883, -91.1426);
points[12] = CLLocationCoordinate2DMake(33.7700, -91.0437);
points[13] = CLLocationCoordinate2DMake(33.8339, -91.0327);
points[14] = CLLocationCoordinate2DMake(33.8795, -91.0657);
points[15] = CLLocationCoordinate2DMake(33.9434, -91.0876);
points[16] = CLLocationCoordinate2DMake(33.9889, -90.9998);
points[17] = CLLocationCoordinate2DMake(34.0253, -90.9229);
points[18] = CLLocationCoordinate2DMake(34.0891, -90.9009);
points[19] = CLLocationCoordinate2DMake(34.1345, -90.9668);
points[20] = CLLocationCoordinate2DMake(34.1709, -90.9119);
points[21] = CLLocationCoordinate2DMake(34.1345, -90.8501);
points[22] = CLLocationCoordinate2DMake(34.2277, -90.9338);
points[23] = CLLocationCoordinate2DMake(34.2833, -90.8267);
points[24] = CLLocationCoordinate2DMake(34.3434, -90.6921);
points[25] = CLLocationCoordinate2DMake(34.3774, -90.6509);
points[26] = CLLocationCoordinate2DMake(34.3978, -90.6152);
points[27] = CLLocationCoordinate2DMake(34.4432, -90.5589);
points[28] = CLLocationCoordinate2DMake(34.5179, -90.5740);
points[29] = CLLocationCoordinate2DMake(34.5880, -90.5823);
points[30] = CLLocationCoordinate2DMake(34.7506, -90.5356);
points[31] = CLLocationCoordinate2DMake(34.7913, -90.5136);
points[32] = CLLocationCoordinate2DMake(34.8780, -90.4532);
points[33] = CLLocationCoordinate2DMake(34.9329, -90.2441);
points[34] = CLLocationCoordinate2DMake(34.8702, -90.2911);
points[35] = CLLocationCoordinate2DMake(34.9955, -90.3090);
points[36] = CLLocationCoordinate2DMake(35.0404, -90.2953);
points[37] = CLLocationCoordinate2DMake(35.0280, -90.2067);
points[38] = CLLocationCoordinate2DMake(35.1354, -90.1421);
points[39] = CLLocationCoordinate2DMake(35.1985, -90.1112);
points[40] = CLLocationCoordinate2DMake(35.2849, -90.1524);
points[41] = CLLocationCoordinate2DMake(35.4372, -90.1346);
points[42] = CLLocationCoordinate2DMake(35.5568, -90.0192);
points[43] = CLLocationCoordinate2DMake(35.7343, -89.9547);
points[44] = CLLocationCoordinate2DMake(35.8579, -89.7638);
points[45] = CLLocationCoordinate2DMake(35.9180, -89.6635);
points[46] = CLLocationCoordinate2DMake(35.9658, -89.6883);
points[47] = CLLocationCoordinate2DMake(36.0013, -89.7130);
points[48] = CLLocationCoordinate2DMake(35.9958, -90.3735);
points[49] = CLLocationCoordinate2DMake(36.1268, -90.2664);
points[50] = CLLocationCoordinate2DMake(36.2875, -90.0934);
points[51] = CLLocationCoordinate2DMake(36.3892, -90.0742);
points[52] = CLLocationCoordinate2DMake(36.4180, -90.1511);
points[53] = CLLocationCoordinate2DMake(36.4997, -90.1566);
points[54] = CLLocationCoordinate2DMake(36.4994, -94.6179);
points[55] = CLLocationCoordinate2DMake(35.3920, -94.4302);
points[56] = CLLocationCoordinate2DMake(33.6386, -94.4852);
points[57] = CLLocationCoordinate2DMake(33.6421, -94.4522);
points[58] = CLLocationCoordinate2DMake(33.5597, -94.4000);
points[59] = CLLocationCoordinate2DMake(33.5883, -94.2462);
points[60] = CLLocationCoordinate2DMake(33.5872, -94.1885);
points[61] = CLLocationCoordinate2DMake(33.5345, -94.0375);
points[62] = CLLocationCoordinate2DMake(33.4314, -94.0430);
points[63] = CLLocationCoordinate2DMake(33.0213, -94.0430);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:64];
return poly;
}
- (MKPolygon *)polygonForArizona
{
CLLocationCoordinate2D points[118];
points[0] = CLLocationCoordinate2DMake(36.9993, -112.5989);
points[1] = CLLocationCoordinate2DMake(37.0004, -110.8630);
points[2] = CLLocationCoordinate2DMake(36.9991, -109.0451);
points[3] = CLLocationCoordinate2DMake(31.3325, -109.0503);
points[4] = CLLocationCoordinate2DMake(31.3325, -111.0718);
points[5] = CLLocationCoordinate2DMake(32.4935, -114.8126);
points[6] = CLLocationCoordinate2DMake(32.5184, -114.8099);
points[7] = CLLocationCoordinate2DMake(32.5827, -114.8044);
points[8] = CLLocationCoordinate2DMake(32.6246, -114.7992);
points[9] = CLLocationCoordinate2DMake(32.6700, -114.7474);
points[10] = CLLocationCoordinate2DMake(32.7191, -114.7220);
points[11] = CLLocationCoordinate2DMake(32.7480, -114.6986);
points[12] = CLLocationCoordinate2DMake(32.7353, -114.6162);
points[13] = CLLocationCoordinate2DMake(32.7503, -114.5641);
points[14] = CLLocationCoordinate2DMake(32.7573, -114.5284);
points[15] = CLLocationCoordinate2DMake(32.7850, -114.5311);
points[16] = CLLocationCoordinate2DMake(32.8161, -114.5091);
points[17] = CLLocationCoordinate2DMake(32.8427, -114.4679);
points[18] = CLLocationCoordinate2DMake(32.9372, -114.4844);
points[19] = CLLocationCoordinate2DMake(32.9764, -114.4775);
points[20] = CLLocationCoordinate2DMake(32.9718, -114.4913);
points[21] = CLLocationCoordinate2DMake(33.0328, -114.5174);
points[22] = CLLocationCoordinate2DMake(33.0351, -114.5750);
points[23] = CLLocationCoordinate2DMake(33.0282, -114.5888);
points[24] = CLLocationCoordinate2DMake(33.0305, -114.6286);
points[25] = CLLocationCoordinate2DMake(33.0501, -114.6451);
points[26] = CLLocationCoordinate2DMake(33.0328, -114.6629);
points[27] = CLLocationCoordinate2DMake(33.0858, -114.6918);
points[28] = CLLocationCoordinate2DMake(33.0904, -114.7083);
points[29] = CLLocationCoordinate2DMake(33.1720, -114.6794);
points[30] = CLLocationCoordinate2DMake(33.2467, -114.6904);
points[31] = CLLocationCoordinate2DMake(33.2582, -114.6698);
points[32] = CLLocationCoordinate2DMake(33.2754, -114.6808);
points[33] = CLLocationCoordinate2DMake(33.2858, -114.7206);
points[34] = CLLocationCoordinate2DMake(33.3041, -114.7302);
points[35] = CLLocationCoordinate2DMake(33.3546, -114.6973);
points[36] = CLLocationCoordinate2DMake(33.4039, -114.7055);
points[37] = CLLocationCoordinate2DMake(33.4142, -114.6506);
points[38] = CLLocationCoordinate2DMake(33.4418, -114.6245);
points[39] = CLLocationCoordinate2DMake(33.5070, -114.5778);
points[40] = CLLocationCoordinate2DMake(33.5311, -114.5586);
points[41] = CLLocationCoordinate2DMake(33.5528, -114.5242);
points[42] = CLLocationCoordinate2DMake(33.5895, -114.5393);
points[43] = CLLocationCoordinate2DMake(33.6363, -114.5242);
points[44] = CLLocationCoordinate2DMake(33.6832, -114.5284);
points[45] = CLLocationCoordinate2DMake(33.7083, -114.4940);
points[46] = CLLocationCoordinate2DMake(33.7597, -114.5050);
points[47] = CLLocationCoordinate2DMake(33.8248, -114.5215);
points[48] = CLLocationCoordinate2DMake(33.8613, -114.5256);
points[49] = CLLocationCoordinate2DMake(33.9058, -114.5091);
points[50] = CLLocationCoordinate2DMake(33.9308, -114.5366);
points[51] = CLLocationCoordinate2DMake(33.9582, -114.5119);
points[52] = CLLocationCoordinate2DMake(34.0117, -114.4652);
points[53] = CLLocationCoordinate2DMake(34.0276, -114.4336);
points[54] = CLLocationCoordinate2DMake(34.0856, -114.4363);
points[55] = CLLocationCoordinate2DMake(34.1118, -114.4089);
points[56] = CLLocationCoordinate2DMake(34.1186, -114.3622);
points[57] = CLLocationCoordinate2DMake(34.1368, -114.3237);
points[58] = CLLocationCoordinate2DMake(34.1720, -114.2908);
points[59] = CLLocationCoordinate2DMake(34.1914, -114.2221);
points[60] = CLLocationCoordinate2DMake(34.2044, -114.2249);
points[61] = CLLocationCoordinate2DMake(34.2595, -114.1651);
points[62] = CLLocationCoordinate2DMake(34.2561, -114.1315);
points[63] = CLLocationCoordinate2DMake(34.3049, -114.1383);
points[64] = CLLocationCoordinate2DMake(34.3559, -114.1864);
points[65] = CLLocationCoordinate2DMake(34.4024, -114.2674);
points[66] = CLLocationCoordinate2DMake(34.4375, -114.3031);
points[67] = CLLocationCoordinate2DMake(34.4500, -114.3361);
points[68] = CLLocationCoordinate2DMake(34.4601, -114.3869);
points[69] = CLLocationCoordinate2DMake(34.5235, -114.3787);
points[70] = CLLocationCoordinate2DMake(34.5869, -114.4322);
points[71] = CLLocationCoordinate2DMake(34.6581, -114.4597);
points[72] = CLLocationCoordinate2DMake(34.6648, -114.4501);
points[73] = CLLocationCoordinate2DMake(34.7269, -114.4968);
points[74] = CLLocationCoordinate2DMake(34.7890, -114.5682);
points[75] = CLLocationCoordinate2DMake(34.8454, -114.5970);
points[76] = CLLocationCoordinate2DMake(34.8758, -114.6382);
points[77] = CLLocationCoordinate2DMake(34.9107, -114.6286);
points[78] = CLLocationCoordinate2DMake(34.9659, -114.6382);
points[79] = CLLocationCoordinate2DMake(35.0019, -114.6336);
points[80] = CLLocationCoordinate2DMake(35.0480, -114.6259);
points[81] = CLLocationCoordinate2DMake(35.0750, -114.6039);
points[82] = CLLocationCoordinate2DMake(35.0929, -114.6368);
points[83] = CLLocationCoordinate2DMake(35.1109, -114.6368);
points[84] = CLLocationCoordinate2DMake(35.1199, -114.6094);
points[85] = CLLocationCoordinate2DMake(35.1783, -114.5737);
points[86] = CLLocationCoordinate2DMake(35.3218, -114.5929);
points[87] = CLLocationCoordinate2DMake(35.4070, -114.6149);
points[88] = CLLocationCoordinate2DMake(35.5054, -114.6863);
points[89] = CLLocationCoordinate2DMake(35.5233, -114.6533);
points[90] = CLLocationCoordinate2DMake(35.5814, -114.6863);
points[91] = CLLocationCoordinate2DMake(35.6037, -114.6478);
points[92] = CLLocationCoordinate2DMake(35.6618, -114.6973);
points[93] = CLLocationCoordinate2DMake(35.8089, -114.7192);
points[94] = CLLocationCoordinate2DMake(35.8267, -114.6973);
points[95] = CLLocationCoordinate2DMake(35.8579, -114.7083);
points[96] = CLLocationCoordinate2DMake(35.8757, -114.6588);
points[97] = CLLocationCoordinate2DMake(35.8980, -114.7028);
points[98] = CLLocationCoordinate2DMake(35.9691, -114.7412);
points[99] = CLLocationCoordinate2DMake(36.0447, -114.7522);
points[100] = CLLocationCoordinate2DMake(36.0580, -114.7357);
points[101] = CLLocationCoordinate2DMake(36.0979, -114.7742);
points[102] = CLLocationCoordinate2DMake(36.1157, -114.6863);
points[103] = CLLocationCoordinate2DMake(36.1334, -114.6204);
points[104] = CLLocationCoordinate2DMake(36.1556, -114.5654);
points[105] = CLLocationCoordinate2DMake(36.1467, -114.5215);
points[106] = CLLocationCoordinate2DMake(36.1290, -114.5105);
points[107] = CLLocationCoordinate2DMake(36.1434, -114.3896);
points[108] = CLLocationCoordinate2DMake(36.1024, -114.3237);
points[109] = CLLocationCoordinate2DMake(36.0624, -114.3292);
points[110] = CLLocationCoordinate2DMake(36.0136, -114.2468);
points[111] = CLLocationCoordinate2DMake(36.0313, -114.1534);
points[112] = CLLocationCoordinate2DMake(36.0891, -114.1150);
points[113] = CLLocationCoordinate2DMake(36.1068, -114.1260);
points[114] = CLLocationCoordinate2DMake(36.1334, -114.0985);
points[115] = CLLocationCoordinate2DMake(36.1934, -114.0439);
points[116] = CLLocationCoordinate2DMake(36.3638, -114.0450);
points[117] = CLLocationCoordinate2DMake(37.0001, -114.0508);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:118];
return poly;
}
- (MKPolygon *)polygonForCalifornia
{
CLLocationCoordinate2D points[111];
points[0] = CLLocationCoordinate2DMake(41.9983, -124.4009);
points[1] = CLLocationCoordinate2DMake(42.0024, -123.6237);
points[2] = CLLocationCoordinate2DMake(42.0126, -123.1526);
points[3] = CLLocationCoordinate2DMake(42.0075, -122.0073);
points[4] = CLLocationCoordinate2DMake(41.9962, -121.2369);
points[5] = CLLocationCoordinate2DMake(41.9983, -119.9982);
points[6] = CLLocationCoordinate2DMake(39.0021, -120.0037);
points[7] = CLLocationCoordinate2DMake(37.5555, -117.9575);
points[8] = CLLocationCoordinate2DMake(36.3594, -116.3699);
points[9] = CLLocationCoordinate2DMake(35.0019, -114.6336);
points[10] = CLLocationCoordinate2DMake(34.9659, -114.6382);
points[11] = CLLocationCoordinate2DMake(34.9107, -114.6286);
points[12] = CLLocationCoordinate2DMake(34.8758, -114.6382);
points[13] = CLLocationCoordinate2DMake(34.8454, -114.5970);
points[14] = CLLocationCoordinate2DMake(34.7890, -114.5682);
points[15] = CLLocationCoordinate2DMake(34.7269, -114.4968);
points[16] = CLLocationCoordinate2DMake(34.6648, -114.4501);
points[17] = CLLocationCoordinate2DMake(34.6581, -114.4597);
points[18] = CLLocationCoordinate2DMake(34.5869, -114.4322);
points[19] = CLLocationCoordinate2DMake(34.5235, -114.3787);
points[20] = CLLocationCoordinate2DMake(34.4601, -114.3869);
points[21] = CLLocationCoordinate2DMake(34.4500, -114.3361);
points[22] = CLLocationCoordinate2DMake(34.4375, -114.3031);
points[23] = CLLocationCoordinate2DMake(34.4024, -114.2674);
points[24] = CLLocationCoordinate2DMake(34.3559, -114.1864);
points[25] = CLLocationCoordinate2DMake(34.3049, -114.1383);
points[26] = CLLocationCoordinate2DMake(34.2561, -114.1315);
points[27] = CLLocationCoordinate2DMake(34.2595, -114.1651);
points[28] = CLLocationCoordinate2DMake(34.2044, -114.2249);
points[29] = CLLocationCoordinate2DMake(34.1914, -114.2221);
points[30] = CLLocationCoordinate2DMake(34.1720, -114.2908);
points[31] = CLLocationCoordinate2DMake(34.1368, -114.3237);
points[32] = CLLocationCoordinate2DMake(34.1186, -114.3622);
points[33] = CLLocationCoordinate2DMake(34.1118, -114.4089);
points[34] = CLLocationCoordinate2DMake(34.0856, -114.4363);
points[35] = CLLocationCoordinate2DMake(34.0276, -114.4336);
points[36] = CLLocationCoordinate2DMake(34.0117, -114.4652);
points[37] = CLLocationCoordinate2DMake(33.9582, -114.5119);
points[38] = CLLocationCoordinate2DMake(33.9308, -114.5366);
points[39] = CLLocationCoordinate2DMake(33.9058, -114.5091);
points[40] = CLLocationCoordinate2DMake(33.8613, -114.5256);
points[41] = CLLocationCoordinate2DMake(33.8248, -114.5215);
points[42] = CLLocationCoordinate2DMake(33.7597, -114.5050);
points[43] = CLLocationCoordinate2DMake(33.7083, -114.4940);
points[44] = CLLocationCoordinate2DMake(33.6832, -114.5284);
points[45] = CLLocationCoordinate2DMake(33.6363, -114.5242);
points[46] = CLLocationCoordinate2DMake(33.5895, -114.5393);
points[47] = CLLocationCoordinate2DMake(33.5528, -114.5242);
points[48] = CLLocationCoordinate2DMake(33.5311, -114.5586);
points[49] = CLLocationCoordinate2DMake(33.5070, -114.5778);
points[50] = CLLocationCoordinate2DMake(33.4418, -114.6245);
points[51] = CLLocationCoordinate2DMake(33.4142, -114.6506);
points[52] = CLLocationCoordinate2DMake(33.4039, -114.7055);
points[53] = CLLocationCoordinate2DMake(33.3546, -114.6973);
points[54] = CLLocationCoordinate2DMake(33.3041, -114.7302);
points[55] = CLLocationCoordinate2DMake(33.2858, -114.7206);
points[56] = CLLocationCoordinate2DMake(33.2754, -114.6808);
points[57] = CLLocationCoordinate2DMake(33.2582, -114.6698);
points[58] = CLLocationCoordinate2DMake(33.2467, -114.6904);
points[59] = CLLocationCoordinate2DMake(33.1720, -114.6794);
points[60] = CLLocationCoordinate2DMake(33.0904, -114.7083);
points[61] = CLLocationCoordinate2DMake(33.0858, -114.6918);
points[62] = CLLocationCoordinate2DMake(33.0328, -114.6629);
points[63] = CLLocationCoordinate2DMake(33.0501, -114.6451);
points[64] = CLLocationCoordinate2DMake(33.0305, -114.6286);
points[65] = CLLocationCoordinate2DMake(33.0282, -114.5888);
points[66] = CLLocationCoordinate2DMake(33.0351, -114.5750);
points[67] = CLLocationCoordinate2DMake(33.0328, -114.5174);
points[68] = CLLocationCoordinate2DMake(32.9718, -114.4913);
points[69] = CLLocationCoordinate2DMake(32.9764, -114.4775);
points[70] = CLLocationCoordinate2DMake(32.9372, -114.4844);
points[71] = CLLocationCoordinate2DMake(32.8427, -114.4679);
points[72] = CLLocationCoordinate2DMake(32.8161, -114.5091);
points[73] = CLLocationCoordinate2DMake(32.7850, -114.5311);
points[74] = CLLocationCoordinate2DMake(32.7573, -114.5284);
points[75] = CLLocationCoordinate2DMake(32.7503, -114.5641);
points[76] = CLLocationCoordinate2DMake(32.7353, -114.6162);
points[77] = CLLocationCoordinate2DMake(32.7480, -114.6986);
points[78] = CLLocationCoordinate2DMake(32.7191, -114.7220);
points[79] = CLLocationCoordinate2DMake(32.6868, -115.1944);
points[80] = CLLocationCoordinate2DMake(32.5121, -117.3395);
points[81] = CLLocationCoordinate2DMake(32.7838, -117.4823);
points[82] = CLLocationCoordinate2DMake(33.0501, -117.5977);
points[83] = CLLocationCoordinate2DMake(33.2341, -117.6814);
points[84] = CLLocationCoordinate2DMake(33.4578, -118.0591);
points[85] = CLLocationCoordinate2DMake(33.5403, -118.6290);
points[86] = CLLocationCoordinate2DMake(33.7928, -118.7073);
points[87] = CLLocationCoordinate2DMake(33.9582, -119.3706);
points[88] = CLLocationCoordinate2DMake(34.1925, -120.0050);
points[89] = CLLocationCoordinate2DMake(34.2561, -120.7164);
points[90] = CLLocationCoordinate2DMake(34.5360, -120.9128);
points[91] = CLLocationCoordinate2DMake(34.9749, -120.8427);
points[92] = CLLocationCoordinate2DMake(35.2131, -121.1325);
points[93] = CLLocationCoordinate2DMake(35.5255, -121.3220);
points[94] = CLLocationCoordinate2DMake(35.9691, -121.8013);
points[95] = CLLocationCoordinate2DMake(36.2808, -122.1446);
points[96] = CLLocationCoordinate2DMake(36.7268, -122.1721);
points[97] = CLLocationCoordinate2DMake(37.2227, -122.6871);
points[98] = CLLocationCoordinate2DMake(37.7783, -122.8903);
points[99] = CLLocationCoordinate2DMake(37.8965, -123.2378);
points[100] = CLLocationCoordinate2DMake(38.3449, -123.3202);
points[101] = CLLocationCoordinate2DMake(38.7423, -123.8338);
points[102] = CLLocationCoordinate2DMake(38.9946, -123.9793);
points[103] = CLLocationCoordinate2DMake(39.3088, -124.0329);
points[104] = CLLocationCoordinate2DMake(39.7642, -124.0823);
points[105] = CLLocationCoordinate2DMake(40.1663, -124.5314);
points[106] = CLLocationCoordinate2DMake(40.4658, -124.6509);
points[107] = CLLocationCoordinate2DMake(41.0110, -124.3144);
points[108] = CLLocationCoordinate2DMake(41.2386, -124.3419);
points[109] = CLLocationCoordinate2DMake(41.7170, -124.4545);
points[110] = CLLocationCoordinate2DMake(41.9983, -124.4009);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:111];
return poly;
}
- (MKPolygon *)polygonForColorado
{
CLLocationCoordinate2D points[4];
points[0] = CLLocationCoordinate2DMake(36.9949, -102.0424);
points[1] = CLLocationCoordinate2DMake(41.0006, -102.0534);
points[2] = CLLocationCoordinate2DMake(40.9996, -109.0489);
points[3] = CLLocationCoordinate2DMake(36.9991, -109.0451);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:4];
return poly;
}
- (MKPolygon *)polygonForConnecticut
{
CLLocationCoordinate2D points[31];
points[0] = CLLocationCoordinate2DMake(42.0498, -73.4875);
points[1] = CLLocationCoordinate2DMake(42.0511, -73.4247);
points[2] = CLLocationCoordinate2DMake(42.0371, -72.8146);
points[3] = CLLocationCoordinate2DMake(41.9983, -72.8174);
points[4] = CLLocationCoordinate2DMake(42.0044, -72.7638);
points[5] = CLLocationCoordinate2DMake(42.0360, -72.7563);
points[6] = CLLocationCoordinate2DMake(42.0368, -72.6945);
points[7] = CLLocationCoordinate2DMake(42.0309, -72.6086);
points[8] = CLLocationCoordinate2DMake(42.0269, -72.6059);
points[9] = CLLocationCoordinate2DMake(42.0269, -72.5784);
points[10] = CLLocationCoordinate2DMake(42.0350, -72.5729);
points[11] = CLLocationCoordinate2DMake(42.0350, -72.4026);
points[12] = CLLocationCoordinate2DMake(42.0233, -71.8005);
points[13] = CLLocationCoordinate2DMake(41.6832, -71.7874);
points[14] = CLLocationCoordinate2DMake(41.4165, -71.7984);
points[15] = CLLocationCoordinate2DMake(41.3892, -71.8341);
points[16] = CLLocationCoordinate2DMake(41.3273, -71.8526);
points[17] = CLLocationCoordinate2DMake(41.3103, -71.9302);
points[18] = CLLocationCoordinate2DMake(41.2907, -72.0195);
points[19] = CLLocationCoordinate2DMake(41.2618, -72.0827);
points[20] = CLLocationCoordinate2DMake(41.1962, -72.4322);
points[21] = CLLocationCoordinate2DMake(41.0866, -73.0007);
points[22] = CLLocationCoordinate2DMake(41.0255, -73.2493);
points[23] = CLLocationCoordinate2DMake(40.9509, -73.6132);
points[24] = CLLocationCoordinate2DMake(40.9830, -73.6606);
points[25] = CLLocationCoordinate2DMake(41.0338, -73.6723);
points[26] = CLLocationCoordinate2DMake(41.1011, -73.7272);
points[27] = CLLocationCoordinate2DMake(41.2153, -73.4834);
points[28] = CLLocationCoordinate2DMake(41.2953, -73.5507);
points[29] = CLLocationCoordinate2DMake(41.4906, -73.5329);
points[30] = CLLocationCoordinate2DMake(42.0493, -73.4875);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:31];
return poly;
}
- (MKPolygon *)polygonForDelaware
{
CLLocationCoordinate2D points[23];
points[0] = CLLocationCoordinate2DMake(39.7222, -75.7886);
points[1] = CLLocationCoordinate2DMake(39.5210, -75.7837);
points[2] = CLLocationCoordinate2DMake(38.9081, -75.7288);
points[3] = CLLocationCoordinate2DMake(38.5911, -75.7068);
points[4] = CLLocationCoordinate2DMake(38.4600, -75.6944);
points[5] = CLLocationCoordinate2DMake(38.4482, -74.8608);
points[6] = CLLocationCoordinate2DMake(38.8654, -74.8526);
points[7] = CLLocationCoordinate2DMake(38.8451, -75.0504);
points[8] = CLLocationCoordinate2DMake(39.0565, -75.1678);
points[9] = CLLocationCoordinate2DMake(39.2525, -75.3236);
points[10] = CLLocationCoordinate2DMake(39.3662, -75.4610);
points[11] = CLLocationCoordinate2DMake(39.4500, -75.5544);
points[12] = CLLocationCoordinate2DMake(39.4966, -75.5612);
points[13] = CLLocationCoordinate2DMake(39.4998, -75.5283);
points[14] = CLLocationCoordinate2DMake(39.5411, -75.5338);
points[15] = CLLocationCoordinate2DMake(39.5761, -75.5090);
points[16] = CLLocationCoordinate2DMake(39.6237, -75.5708);
points[17] = CLLocationCoordinate2DMake(39.6713, -75.5104);
points[18] = CLLocationCoordinate2DMake(39.7167, -75.4843);
points[19] = CLLocationCoordinate2DMake(39.8015, -75.4146);
points[20] = CLLocationCoordinate2DMake(39.8249, -75.4692);
points[21] = CLLocationCoordinate2DMake(39.8296, -75.6477);
points[22] = CLLocationCoordinate2DMake(39.7199, -75.7906);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:23];
return poly;
}
- (MKPolygon *)polygonForFlorida
{
CLLocationCoordinate2D points[67];
points[0] = CLLocationCoordinate2DMake(30.9988, -87.6050);
points[1] = CLLocationCoordinate2DMake(30.9964, -86.5613);
points[2] = CLLocationCoordinate2DMake(31.0035, -85.5313);
points[3] = CLLocationCoordinate2DMake(31.0012, -85.1193);
points[4] = CLLocationCoordinate2DMake(31.0023, -85.0012);
points[5] = CLLocationCoordinate2DMake(31.0005, -85.0018);
points[6] = CLLocationCoordinate2DMake(30.9117, -84.9586);
points[7] = CLLocationCoordinate2DMake(30.7831, -84.9257);
points[8] = CLLocationCoordinate2DMake(30.7041, -84.8639);
points[9] = CLLocationCoordinate2DMake(30.6131, -82.9688);
points[10] = CLLocationCoordinate2DMake(30.5682, -82.2162);
points[11] = CLLocationCoordinate2DMake(30.4842, -82.2148);
points[12] = CLLocationCoordinate2DMake(30.3859, -82.2025);
points[13] = CLLocationCoordinate2DMake(30.3598, -82.1585);
points[14] = CLLocationCoordinate2DMake(30.3575, -82.0610);
points[15] = CLLocationCoordinate2DMake(30.4309, -82.0363);
points[16] = CLLocationCoordinate2DMake(30.4866, -82.0239);
points[17] = CLLocationCoordinate2DMake(30.6379, -82.0459);
points[18] = CLLocationCoordinate2DMake(30.7560, -82.0239);
points[19] = CLLocationCoordinate2DMake(30.8221, -81.9498);
points[20] = CLLocationCoordinate2DMake(30.7713, -81.7657);
points[21] = CLLocationCoordinate2DMake(30.7241, -81.6023);
points[22] = CLLocationCoordinate2DMake(30.7041, -81.2288);
points[23] = CLLocationCoordinate2DMake(30.4345, -81.2357);
points[24] = CLLocationCoordinate2DMake(30.3160, -81.1725);
points[25] = CLLocationCoordinate2DMake(29.7763, -81.0379);
points[26] = CLLocationCoordinate2DMake(28.8603, -80.5861);
points[27] = CLLocationCoordinate2DMake(28.4771, -80.3650);
points[28] = CLLocationCoordinate2DMake(28.1882, -80.3815);
points[29] = CLLocationCoordinate2DMake(27.1789, -79.9255);
points[30] = CLLocationCoordinate2DMake(26.8425, -79.8198);
points[31] = CLLocationCoordinate2DMake(26.1394, -79.9118);
points[32] = CLLocationCoordinate2DMake(25.5115, -79.9997);
points[33] = CLLocationCoordinate2DMake(24.8802, -80.3815);
points[34] = CLLocationCoordinate2DMake(24.5384, -80.8704);
points[35] = CLLocationCoordinate2DMake(24.3959, -81.9250);
points[36] = CLLocationCoordinate2DMake(24.4496, -82.2066);
points[37] = CLLocationCoordinate2DMake(24.5484, -82.3137);
points[38] = CLLocationCoordinate2DMake(24.6982, -82.1997);
points[39] = CLLocationCoordinate2DMake(25.2112, -81.3977);
points[40] = CLLocationCoordinate2DMake(25.6019, -81.4622);
points[41] = CLLocationCoordinate2DMake(25.9235, -81.9456);
points[42] = CLLocationCoordinate2DMake(26.3439, -82.2876);
points[43] = CLLocationCoordinate2DMake(26.9098, -82.5307);
points[44] = CLLocationCoordinate2DMake(27.3315, -82.8342);
points[45] = CLLocationCoordinate2DMake(27.7565, -83.0182);
points[46] = CLLocationCoordinate2DMake(28.0574, -83.0017);
points[47] = CLLocationCoordinate2DMake(28.6098, -82.8548);
points[48] = CLLocationCoordinate2DMake(28.9697, -83.0264);
points[49] = CLLocationCoordinate2DMake(29.0478, -83.2050);
points[50] = CLLocationCoordinate2DMake(29.4157, -83.5318);
points[51] = CLLocationCoordinate2DMake(29.9133, -83.9767);
points[52] = CLLocationCoordinate2DMake(29.8930, -84.1072);
points[53] = CLLocationCoordinate2DMake(29.6940, -84.4409);
points[54] = CLLocationCoordinate2DMake(29.4551, -85.0465);
points[55] = CLLocationCoordinate2DMake(29.4946, -85.3610);
points[56] = CLLocationCoordinate2DMake(29.7262, -85.5807);
points[57] = CLLocationCoordinate2DMake(30.1594, -86.1946);
points[58] = CLLocationCoordinate2DMake(30.2175, -86.8510);
points[59] = CLLocationCoordinate2DMake(30.1493, -87.5164);
points[60] = CLLocationCoordinate2DMake(30.2828, -87.5178);
points[61] = CLLocationCoordinate2DMake(30.4362, -87.3664);
points[62] = CLLocationCoordinate2DMake(30.5067, -87.4433);
points[63] = CLLocationCoordinate2DMake(30.6438, -87.3945);
points[64] = CLLocationCoordinate2DMake(30.8651, -87.6342);
points[65] = CLLocationCoordinate2DMake(30.9647, -87.5875);
points[66] = CLLocationCoordinate2DMake(30.9964, -87.5978);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:67];
return poly;
}
- (MKPolygon *)polygonForGeorgia
{
CLLocationCoordinate2D points[66];
points[0] = CLLocationCoordinate2DMake(34.9844, -85.6044);
points[1] = CLLocationCoordinate2DMake(34.9906, -84.7266);
points[2] = CLLocationCoordinate2DMake(34.9895, -84.1580);
points[3] = CLLocationCoordinate2DMake(34.9996, -83.1088);
points[4] = CLLocationCoordinate2DMake(34.9287, -83.1418);
points[5] = CLLocationCoordinate2DMake(34.8318, -83.3025);
points[6] = CLLocationCoordinate2DMake(34.7281, -83.3560);
points[7] = CLLocationCoordinate2DMake(34.6569, -83.3080);
points[8] = CLLocationCoordinate2DMake(34.5744, -83.1528);
points[9] = CLLocationCoordinate2DMake(34.4839, -83.0072);
points[10] = CLLocationCoordinate2DMake(34.4681, -82.8918);
points[11] = CLLocationCoordinate2DMake(34.4443, -82.8589);
points[12] = CLLocationCoordinate2DMake(34.2674, -82.7490);
points[13] = CLLocationCoordinate2DMake(34.1254, -82.6831);
points[14] = CLLocationCoordinate2DMake(34.0140, -82.5952);
points[15] = CLLocationCoordinate2DMake(33.8647, -82.3988);
points[16] = CLLocationCoordinate2DMake(33.7563, -82.2505);
points[17] = CLLocationCoordinate2DMake(33.6592, -82.1997);
points[18] = CLLocationCoordinate2DMake(33.5963, -82.1558);
points[19] = CLLocationCoordinate2DMake(33.5301, -82.0097);
points[20] = CLLocationCoordinate2DMake(33.4588, -81.9240);
points[21] = CLLocationCoordinate2DMake(33.3707, -81.9484);
points[22] = CLLocationCoordinate2DMake(33.2077, -81.8303);
points[23] = CLLocationCoordinate2DMake(33.1674, -81.7795);
points[24] = CLLocationCoordinate2DMake(33.1456, -81.7424);
points[25] = CLLocationCoordinate2DMake(33.0881, -81.6078);
points[26] = CLLocationCoordinate2DMake(33.0075, -81.5034);
points[27] = CLLocationCoordinate2DMake(32.9418, -81.5089);
points[28] = CLLocationCoordinate2DMake(32.6914, -81.4142);
points[29] = CLLocationCoordinate2DMake(32.6272, -81.4176);
points[30] = CLLocationCoordinate2DMake(32.5283, -81.2769);
points[31] = CLLocationCoordinate2DMake(32.4576, -81.1945);
points[32] = CLLocationCoordinate2DMake(32.3185, -81.1642);
points[33] = CLLocationCoordinate2DMake(32.2151, -81.1436);
points[34] = CLLocationCoordinate2DMake(32.1128, -81.1134);
points[35] = CLLocationCoordinate2DMake(32.0382, -80.9215);
points[36] = CLLocationCoordinate2DMake(32.0333, -80.7509);
points[37] = CLLocationCoordinate2DMake(31.4697, -80.9665);
points[38] = CLLocationCoordinate2DMake(30.9988, -81.1011);
points[39] = CLLocationCoordinate2DMake(30.7041, -81.2288);
points[40] = CLLocationCoordinate2DMake(30.7241, -81.6023);
points[41] = CLLocationCoordinate2DMake(30.7713, -81.7657);
points[42] = CLLocationCoordinate2DMake(30.8221, -81.9498);
points[43] = CLLocationCoordinate2DMake(30.7560, -82.0239);
points[44] = CLLocationCoordinate2DMake(30.6379, -82.0459);
points[45] = CLLocationCoordinate2DMake(30.4866, -82.0239);
points[46] = CLLocationCoordinate2DMake(30.4309, -82.0363);
points[47] = CLLocationCoordinate2DMake(30.3575, -82.0610);
points[48] = CLLocationCoordinate2DMake(30.3598, -82.1585);
points[49] = CLLocationCoordinate2DMake(30.3859, -82.2025);
points[50] = CLLocationCoordinate2DMake(30.4842, -82.2148);
points[51] = CLLocationCoordinate2DMake(30.5682, -82.2162);
points[52] = CLLocationCoordinate2DMake(30.6131, -82.9688);
points[53] = CLLocationCoordinate2DMake(30.7041, -84.8639);
points[54] = CLLocationCoordinate2DMake(30.7831, -84.9257);
points[55] = CLLocationCoordinate2DMake(30.9117, -84.9586);
points[56] = CLLocationCoordinate2DMake(31.0005, -85.0018);
points[57] = CLLocationCoordinate2DMake(31.0003, -85.0012);
points[58] = CLLocationCoordinate2DMake(31.1079, -85.0349);
points[59] = CLLocationCoordinate2DMake(31.1946, -85.1077);
points[60] = CLLocationCoordinate2DMake(31.3384, -85.0836);
points[61] = CLLocationCoordinate2DMake(31.5200, -85.0438);
points[62] = CLLocationCoordinate2DMake(31.7947, -85.1358);
points[63] = CLLocationCoordinate2DMake(32.1535, -85.0342);
points[64] = CLLocationCoordinate2DMake(32.2593, -84.8927);
points[65] = CLLocationCoordinate2DMake(32.8404, -85.1756);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:66];
return poly;
}
- (MKPolygon *)polygonForHawaii
{
CLLocationCoordinate2D points[30];
points[0] = CLLocationCoordinate2DMake(19.5158, -154.6284);
points[1] = CLLocationCoordinate2DMake(19.8894, -154.8235);
points[2] = CLLocationCoordinate2DMake(20.1849, -155.0391);
points[3] = CLLocationCoordinate2DMake(20.3910, -155.5952);
points[4] = CLLocationCoordinate2DMake(20.8614, -155.7930);
points[5] = CLLocationCoordinate2DMake(21.0948, -156.1858);
points[6] = CLLocationCoordinate2DMake(21.3597, -156.6595);
points[7] = CLLocationCoordinate2DMake(21.4748, -157.1182);
points[8] = CLLocationCoordinate2DMake(21.5515, -157.5247);
points[9] = CLLocationCoordinate2DMake(21.8832, -157.8186);
points[10] = CLLocationCoordinate2DMake(22.3386, -159.2180);
points[11] = CLLocationCoordinate2DMake(22.3374, -159.7508);
points[12] = CLLocationCoordinate2DMake(22.1493, -160.1422);
points[13] = CLLocationCoordinate2DMake(21.8857, -160.3922);
points[14] = CLLocationCoordinate2DMake(21.6025, -160.3249);
points[15] = CLLocationCoordinate2DMake(21.7276, -159.9939);
points[16] = CLLocationCoordinate2DMake(21.6932, -159.4295);
points[17] = CLLocationCoordinate2DMake(21.1037, -158.1784);
points[18] = CLLocationCoordinate2DMake(20.8152, -157.4629);
points[19] = CLLocationCoordinate2DMake(20.6803, -157.2171);
points[20] = CLLocationCoordinate2DMake(20.3408, -156.8285);
points[21] = CLLocationCoordinate2DMake(20.2931, -156.5456);
points[22] = CLLocationCoordinate2DMake(20.1643, -156.1418);
points[23] = CLLocationCoordinate2DMake(19.9308, -156.2393);
points[24] = CLLocationCoordinate2DMake(19.2826, -156.1432);
points[25] = CLLocationCoordinate2DMake(18.9881, -156.1212);
points[26] = CLLocationCoordinate2DMake(18.7100, -155.7120);
points[27] = CLLocationCoordinate2DMake(18.8829, -155.3673);
points[28] = CLLocationCoordinate2DMake(19.2048, -154.8839);
points[29] = CLLocationCoordinate2DMake(19.5158, -154.6271);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:30];
return poly;
}
- (MKPolygon *)polygonForIowa
{
CLLocationCoordinate2D points[60];
points[0] = CLLocationCoordinate2DMake(40.5848, -95.7623);
points[1] = CLLocationCoordinate2DMake(40.5785, -93.5445);
points[2] = CLLocationCoordinate2DMake(40.6129, -91.7372);
points[3] = CLLocationCoordinate2DMake(40.5545, -91.6768);
points[4] = CLLocationCoordinate2DMake(40.5451, -91.6246);
points[5] = CLLocationCoordinate2DMake(40.3622, -91.4365);
points[6] = CLLocationCoordinate2DMake(40.4637, -91.3623);
points[7] = CLLocationCoordinate2DMake(40.5482, -91.4021);
points[8] = CLLocationCoordinate2DMake(40.6931, -91.1124);
points[9] = CLLocationCoordinate2DMake(40.8107, -91.1028);
points[10] = CLLocationCoordinate2DMake(40.9218, -90.9668);
points[11] = CLLocationCoordinate2DMake(41.1642, -91.0121);
points[12] = CLLocationCoordinate2DMake(41.2406, -91.1082);
points[13] = CLLocationCoordinate2DMake(41.4067, -91.0451);
points[14] = CLLocationCoordinate2DMake(41.4510, -90.7086);
points[15] = CLLocationCoordinate2DMake(41.5178, -90.4793);
points[16] = CLLocationCoordinate2DMake(41.5908, -90.3419);
points[17] = CLLocationCoordinate2DMake(41.7457, -90.2788);
points[18] = CLLocationCoordinate2DMake(41.8164, -90.2074);
points[19] = CLLocationCoordinate2DMake(41.9023, -90.1538);
points[20] = CLLocationCoordinate2DMake(42.0962, -90.1744);
points[21] = CLLocationCoordinate2DMake(42.1441, -90.2692);
points[22] = CLLocationCoordinate2DMake(42.2905, -90.4298);
points[23] = CLLocationCoordinate2DMake(42.4093, -90.5370);
points[24] = CLLocationCoordinate2DMake(42.5217, -90.6400);
points[25] = CLLocationCoordinate2DMake(42.6360, -90.7127);
points[26] = CLLocationCoordinate2DMake(42.6956, -90.7883);
points[27] = CLLocationCoordinate2DMake(42.7712, -91.0533);
points[28] = CLLocationCoordinate2DMake(42.8448, -91.0904);
points[29] = CLLocationCoordinate2DMake(42.9082, -91.1398);
points[30] = CLLocationCoordinate2DMake(43.0609, -91.1549);
points[31] = CLLocationCoordinate2DMake(43.1391, -91.1522);
points[32] = CLLocationCoordinate2DMake(43.2882, -91.0547);
points[33] = CLLocationCoordinate2DMake(43.3322, -91.2057);
points[34] = CLLocationCoordinate2DMake(43.4140, -91.2236);
points[35] = CLLocationCoordinate2DMake(43.5008, -91.2305);
points[36] = CLLocationCoordinate2DMake(43.5008, -96.4517);
points[37] = CLLocationCoordinate2DMake(43.4818, -96.6110);
points[38] = CLLocationCoordinate2DMake(43.3871, -96.5245);
points[39] = CLLocationCoordinate2DMake(43.2232, -96.5533);
points[40] = CLLocationCoordinate2DMake(43.1301, -96.4421);
points[41] = CLLocationCoordinate2DMake(42.9243, -96.5479);
points[42] = CLLocationCoordinate2DMake(42.7188, -96.6357);
points[43] = CLLocationCoordinate2DMake(42.6158, -96.5561);
points[44] = CLLocationCoordinate2DMake(42.5055, -96.4847);
points[45] = CLLocationCoordinate2DMake(42.4772, -96.4806);
points[46] = CLLocationCoordinate2DMake(42.4810, -96.3927);
points[47] = CLLocationCoordinate2DMake(42.3667, -96.4050);
points[48] = CLLocationCoordinate2DMake(42.2722, -96.3446);
points[49] = CLLocationCoordinate2DMake(42.2051, -96.3625);
points[50] = CLLocationCoordinate2DMake(41.9983, -96.2416);
points[51] = CLLocationCoordinate2DMake(41.9513, -96.1372);
points[52] = CLLocationCoordinate2DMake(41.7662, -96.0741);
points[53] = CLLocationCoordinate2DMake(41.6267, -96.0988);
points[54] = CLLocationCoordinate2DMake(41.4561, -95.9477);
points[55] = CLLocationCoordinate2DMake(41.2819, -95.8804);
points[56] = CLLocationCoordinate2DMake(41.0338, -95.8653);
points[57] = CLLocationCoordinate2DMake(40.8346, -95.8365);
points[58] = CLLocationCoordinate2DMake(40.6775, -95.8461);
points[59] = CLLocationCoordinate2DMake(40.5837, -95.7610);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:60];
return poly;
}
- (MKPolygon *)polygonForIdaho
{
CLLocationCoordinate2D points[125];
points[0] = CLLocationCoordinate2DMake(48.9991, -117.0323);
points[1] = CLLocationCoordinate2DMake(49.0007, -116.0492);
points[2] = CLLocationCoordinate2DMake(47.9771, -116.0458);
points[3] = CLLocationCoordinate2DMake(47.5793, -115.6956);
points[4] = CLLocationCoordinate2DMake(47.5487, -115.7533);
points[5] = CLLocationCoordinate2DMake(47.4253, -115.7547);
points[6] = CLLocationCoordinate2DMake(47.3025, -115.5267);
points[7] = CLLocationCoordinate2DMake(47.2569, -115.3290);
points[8] = CLLocationCoordinate2DMake(47.1888, -115.2933);
points[9] = CLLocationCoordinate2DMake(47.0402, -115.1147);
points[10] = CLLocationCoordinate2DMake(46.8423, -114.9307);
points[11] = CLLocationCoordinate2DMake(46.7003, -114.7659);
points[12] = CLLocationCoordinate2DMake(46.6362, -114.5929);
points[13] = CLLocationCoordinate2DMake(46.6334, -114.4652);
points[14] = CLLocationCoordinate2DMake(46.6504, -114.3279);
points[15] = CLLocationCoordinate2DMake(46.5069, -114.3484);
points[16] = CLLocationCoordinate2DMake(46.4530, -114.3896);
points[17] = CLLocationCoordinate2DMake(46.3441, -114.4171);
points[18] = CLLocationCoordinate2DMake(46.2577, -114.4652);
points[19] = CLLocationCoordinate2DMake(46.1237, -114.5132);
points[20] = CLLocationCoordinate2DMake(45.9989, -114.4817);
points[21] = CLLocationCoordinate2DMake(45.8613, -114.4391);
points[22] = CLLocationCoordinate2DMake(45.7733, -114.5641);
points[23] = CLLocationCoordinate2DMake(45.6755, -114.5215);
points[24] = CLLocationCoordinate2DMake(45.5583, -114.5668);
points[25] = CLLocationCoordinate2DMake(45.5439, -114.4652);
points[26] = CLLocationCoordinate2DMake(45.4592, -114.3347);
points[27] = CLLocationCoordinate2DMake(45.5525, -114.2358);
points[28] = CLLocationCoordinate2DMake(45.5631, -114.1315);
points[29] = CLLocationCoordinate2DMake(45.6908, -113.9722);
points[30] = CLLocationCoordinate2DMake(45.6140, -113.8403);
points[31] = CLLocationCoordinate2DMake(45.4447, -113.7964);
points[32] = CLLocationCoordinate2DMake(45.2749, -113.7085);
points[33] = CLLocationCoordinate2DMake(45.0269, -113.4229);
points[34] = CLLocationCoordinate2DMake(44.9386, -113.4970);
points[35] = CLLocationCoordinate2DMake(44.7887, -113.3459);
points[36] = CLLocationCoordinate2DMake(44.8091, -113.2471);
points[37] = CLLocationCoordinate2DMake(44.7389, -113.1152);
points[38] = CLLocationCoordinate2DMake(44.5905, -113.0713);
points[39] = CLLocationCoordinate2DMake(44.4857, -113.0205);
points[40] = CLLocationCoordinate2DMake(44.3563, -112.8529);
points[41] = CLLocationCoordinate2DMake(44.4181, -112.8296);
points[42] = CLLocationCoordinate2DMake(44.4896, -112.7293);
points[43] = CLLocationCoordinate2DMake(44.4475, -112.3901);
points[44] = CLLocationCoordinate2DMake(44.5367, -112.3270);
points[45] = CLLocationCoordinate2DMake(44.5229, -112.1127);
points[46] = CLLocationCoordinate2DMake(44.5592, -111.8848);
points[47] = CLLocationCoordinate2DMake(44.5151, -111.8285);
points[48] = CLLocationCoordinate2DMake(44.5386, -111.4673);
points[49] = CLLocationCoordinate2DMake(44.6198, -111.5071);
points[50] = CLLocationCoordinate2DMake(44.7311, -111.3684);
points[51] = CLLocationCoordinate2DMake(44.4759, -111.0539);
points[52] = CLLocationCoordinate2DMake(43.8623, -111.0471);
points[53] = CLLocationCoordinate2DMake(42.0013, -111.0471);
points[54] = CLLocationCoordinate2DMake(41.9962, -112.1663);
points[55] = CLLocationCoordinate2DMake(41.9871, -113.8458);
points[56] = CLLocationCoordinate2DMake(41.9936, -114.0415);
points[57] = CLLocationCoordinate2DMake(41.9942, -114.0422);
points[58] = CLLocationCoordinate2DMake(42.0013, -114.8222);
points[59] = CLLocationCoordinate2DMake(41.9973, -115.9126);
points[60] = CLLocationCoordinate2DMake(42.0001, -117.0262);
points[61] = CLLocationCoordinate2DMake(43.7820, -117.0277);
points[62] = CLLocationCoordinate2DMake(43.8330, -117.0325);
points[63] = CLLocationCoordinate2DMake(43.8632, -117.0030);
points[64] = CLLocationCoordinate2DMake(43.9073, -116.9776);
points[65] = CLLocationCoordinate2DMake(44.0244, -116.9302);
points[66] = CLLocationCoordinate2DMake(44.0491, -116.9735);
points[67] = CLLocationCoordinate2DMake(44.1014, -116.9330);
points[68] = CLLocationCoordinate2DMake(44.1561, -116.8945);
points[69] = CLLocationCoordinate2DMake(44.1965, -116.9714);
points[70] = CLLocationCoordinate2DMake(44.2442, -116.9810);
points[71] = CLLocationCoordinate2DMake(44.2486, -117.0339);
points[72] = CLLocationCoordinate2DMake(44.2304, -117.0525);
points[73] = CLLocationCoordinate2DMake(44.2585, -117.0895);
points[74] = CLLocationCoordinate2DMake(44.2806, -117.1122);
points[75] = CLLocationCoordinate2DMake(44.2590, -117.1541);
points[76] = CLLocationCoordinate2DMake(44.2973, -117.2255);
points[77] = CLLocationCoordinate2DMake(44.3445, -117.1994);
points[78] = CLLocationCoordinate2DMake(44.3813, -117.2372);
points[79] = CLLocationCoordinate2DMake(44.4769, -117.2269);
points[80] = CLLocationCoordinate2DMake(44.5234, -117.1836);
points[81] = CLLocationCoordinate2DMake(44.5376, -117.1458);
points[82] = CLLocationCoordinate2DMake(44.7423, -117.0442);
points[83] = CLLocationCoordinate2DMake(44.7921, -116.9316);
points[84] = CLLocationCoordinate2DMake(44.8568, -116.8980);
points[85] = CLLocationCoordinate2DMake(44.9356, -116.8327);
points[86] = CLLocationCoordinate2DMake(44.9624, -116.8513);
points[87] = CLLocationCoordinate2DMake(44.9896, -116.8554);
points[88] = CLLocationCoordinate2DMake(45.0313, -116.8417);
points[89] = CLLocationCoordinate2DMake(45.0968, -116.7819);
points[90] = CLLocationCoordinate2DMake(45.1627, -116.7229);
points[91] = CLLocationCoordinate2DMake(45.2178, -116.7105);
points[92] = CLLocationCoordinate2DMake(45.3213, -116.6741);
points[93] = CLLocationCoordinate2DMake(45.3984, -116.6185);
points[94] = CLLocationCoordinate2DMake(45.4433, -116.5883);
points[95] = CLLocationCoordinate2DMake(45.4630, -116.5553);
points[96] = CLLocationCoordinate2DMake(45.5371, -116.5334);
points[97] = CLLocationCoordinate2DMake(45.6140, -116.4640);
points[98] = CLLocationCoordinate2DMake(45.6904, -116.5354);
points[99] = CLLocationCoordinate2DMake(45.7340, -116.5354);
points[100] = CLLocationCoordinate2DMake(45.7541, -116.5594);
points[101] = CLLocationCoordinate2DMake(45.7843, -116.6357);
points[102] = CLLocationCoordinate2DMake(45.7781, -116.5965);
points[103] = CLLocationCoordinate2DMake(45.7805, -116.6597);
points[104] = CLLocationCoordinate2DMake(45.8259, -116.7105);
points[105] = CLLocationCoordinate2DMake(45.8159, -116.7586);
points[106] = CLLocationCoordinate2DMake(45.8341, -116.7908);
points[107] = CLLocationCoordinate2DMake(45.8642, -116.8046);
points[108] = CLLocationCoordinate2DMake(45.9053, -116.8595);
points[109] = CLLocationCoordinate2DMake(45.9545, -116.8739);
points[110] = CLLocationCoordinate2DMake(45.9769, -116.8925);
points[111] = CLLocationCoordinate2DMake(45.9960, -116.9165);
points[112] = CLLocationCoordinate2DMake(46.0537, -116.9433);
points[113] = CLLocationCoordinate2DMake(46.0785, -116.9762);
points[114] = CLLocationCoordinate2DMake(46.1009, -116.9584);
points[115] = CLLocationCoordinate2DMake(46.1432, -116.9357);
points[116] = CLLocationCoordinate2DMake(46.1722, -116.9254);
points[117] = CLLocationCoordinate2DMake(46.2022, -116.9659);
points[118] = CLLocationCoordinate2DMake(46.2388, -116.9577);
points[119] = CLLocationCoordinate2DMake(46.2848, -116.9879);
points[120] = CLLocationCoordinate2DMake(46.3384, -117.0277);
points[121] = CLLocationCoordinate2DMake(46.3498, -117.0621);
points[122] = CLLocationCoordinate2DMake(46.4274, -117.0394);
points[123] = CLLocationCoordinate2DMake(46.5060, -117.0394);
points[124] = CLLocationCoordinate2DMake(47.9614, -117.0415);
MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:125];
return poly;
}
- (MKPolygon *)polygonForIllinois
{