var Birdseye = Class.create();

Birdseye.OSLOLAT = [59.914669073030041,59.917016748958133,59.974094714891194,59.977556951119553,59.9804039254535,59.980322156118824,59.98582961906159,59.996922966921943,59.998440172572096,60.0032240802086,60.0075346250665,60.010949114529048,60.015396301287225,60.080435887865939,60.080769056635695,60.082738058019196,60.088695663539511,60.09291532884923,60.0969350426371,60.099004267812546,60.101093109455967,60.105063054694888,60.109133735649905,60.113038939575134,60.116917821870672,60.12032873917385,60.130682241903585,60.135011552923828,60.137554037479667,60.138742030830926,60.138166527194571,60.136506939421274,60.1366267906061,60.13686432278044,60.137267945932194,60.132598501820191,60.129821460570682,60.123833521223304,60.119190095100777,60.11748344377763,60.110431007900196,60.107544822591628,60.095562852737665,60.09284557291646,60.08803758512046,60.077427885371144,60.07031993258191,59.986805323247047,59.984700900442412,59.983454381596438,59.909660484016769,59.88710424047715,59.8828755547016,59.880619612420126,59.878217134285933,59.835769842049544,59.831510195546933,59.816768427926419,59.813882092788845,59.814922926366414,59.821044505684604,59.821378707917212,59.821642370280109,59.826595111337149,59.830693021495755,59.833935847062946,59.835448730440369,59.837314347232763,59.83894595242657,59.8409482593329,59.846956086193771,59.849380107103229,59.852851301286918,59.85701086311721,59.858710352207339,59.860698402351709,59.8624209683664,59.866123937938937,59.868051488316205,59.870277996206482,59.874312742694677,59.877231928078473,59.880243506966075,59.88154933054382,59.879869847911422,59.879992655483818,59.880395966811363,59.88078356966038,59.882322983440126,59.883311504143379,59.884267795776111,59.885380294513759,59.886562401909771,59.887844515424966,59.891464338503205];
Birdseye.OSLOLON = [10.642226900878518,10.619287077281991,10.61631693611414,10.611884510785067,10.604843342459166,10.585859523972644,10.5637864203027,10.553833615706045,10.540512536335658,10.51329664785991,10.507929569954047,10.499887820933218,10.58248384491878,10.597576331979305,10.597835333924268,10.595275138679622,10.594801029681328,10.594263478783322,10.593752588590387,10.592212430138883,10.589375477427758,10.5860559315612,10.582361370893398,10.578957740893927,10.575814424155347,10.593133398866877,10.601351287083121,10.609124680748192,10.620541592134135,10.625702693194016,10.644889875542877,10.657007403187803,10.665341414465875,10.682073124690156,10.691915457783537,10.697758571939058,10.717715907651972,10.762518670253879,10.767062438065624,10.759953242480462,10.757154815362195,10.769608927503299,10.771236028870693,10.776371139242823,10.784820265637922,10.796235388477182,10.888802133527301,10.894554118395739,10.929157772229813,10.915563126973485,10.90924772706588,10.910018646111551,10.910332012149759,10.910269877962495,10.938633904531086,10.919828798570261,10.871004214324174,10.854438771951715,10.850953123658911,10.830174903347894,10.826258383365136,10.822672027059337,10.816407585320397,10.770275516951847,10.764593962852434,10.761596864263817,10.75950139527605,10.757399774868871,10.756197625477162,10.751785991576568,10.750279132896123,10.748066291644395,10.745175037345575,10.743509637950869,10.741592586193123,10.739530517590586,10.735873315538846,10.735143315863652,10.73503654450141,10.735234310458093,10.734859760614777,10.731235464555066,10.728527465073437,10.720013804458207,10.702270411492535,10.698103803693661,10.69401067531196,10.68583222464409,10.682250982366565,10.678512687247912,10.674879075139469,10.671450850828046,10.668331412144674,10.663296083796341,10.644379722069443];

Birdseye.BAERLAT = [59.886522808402539,59.886961749115251,59.883489236634638,59.882605286750255,59.881881585829341,59.881059939670777,59.88175667871775,59.88373646324105,59.882938762811278,59.884209590549013,59.877930836271425,59.886072976919,59.878736951433069,59.880527163347196,59.906406182161284,59.9115084241649,59.914460885414684,59.927655285147992,59.929693408268982,59.931552527178091,59.933467308304124,59.935093056854789,59.937045069661828,59.938696332438148,59.940373151418356,59.947027666855739,59.954687443022891,59.95515404965623,59.9569995666675,59.959174762685109,59.9678421754264,59.9704798872781,59.973823473986592,59.974687876352434,59.9772495716642,59.983239663421223,59.983342444249793,59.985191765459227,59.9859891812327,59.996363494413643,60.013575584599252,60.01475800570411,60.01582823753499,60.024723100799939,60.026803720055057,60.028721987743836,60.033360465947808,60.033620319725486,60.034024822765872,60.035867810317221,60.033329972748469,60.035449470709374,60.034121387412654,60.031007145532151,60.028841487724272,60.024039190323776,60.010949114529048,60.0075346250665,60.004386634464041,60.001652878815655,60.000488522951706,59.995656792765615,59.984392000095085,59.980265761364436,59.978772405966929,59.974094714891194,59.970110157098915,59.914669073030041,59.891464338503205,59.888904464445609,59.881856692807631,59.879667258807849,59.868110614922145,59.840467672377869,59.817807552187411,59.815989717212943,59.853802008096181,59.857787323866575,59.865781023256048,59.869970186161488,59.878128262851448];
Birdseye.BAERLON = [10.5290727789925,10.520844240439573,10.517599662097771,10.512991717650266,10.509470693176366,10.497496234763275,10.490446407283125,10.485544689266066,10.481435412479065,10.468066433661868,10.427622400383536,10.428220443490128,10.419188976096601,10.367932142263493,10.369028782592014,10.37830668048359,10.376521592361659,10.376165721025672,10.375834766056451,10.374528241592632,10.372419545325093,10.36987074815849,10.367722165456634,10.365533936926958,10.355549016397514,10.349597164748753,10.35568286627557,10.353182261324587,10.352123752689778,10.355356170504114,10.360530091988817,10.369158789539235,10.372770182270843,10.377849420519823,10.400471105449988,10.404190048736092,10.41493598060385,10.418469211522213,10.421448958720044,10.42450768280818,10.428260334683079,10.4316335112011,10.436315641417295,10.436405565315891,10.436481982534234,10.4374587025322,10.441593023149652,10.44705558950753,10.457209661557629,10.471021804780738,10.477489944437458,10.479936674462604,10.4832745696842,10.484900658521333,10.488845421930956,10.507929569954047,10.51329664785991,10.518572583352229,10.546973270908978,10.557508449251969,10.567582731806642,10.588312557301055,10.608816462773408,10.614469307452442,10.619287077281991,10.622235941799032,10.644379722069443,10.663296083796341,10.666385923056014,10.650649299718415,10.646714011249308,10.629861386198023,10.593769723422517,10.566285844885925,10.564117223893062,10.569104452841804,10.566481770337896,10.561124062852871,10.558150232492604,10.549152719234783,10.534947478379987];

Birdseye.TRONLAT = [63.36530341,63.35086633,63.35087001,63.33643293,63.32199586,63.32199954,63.32200322,63.3220069,63.33644397,63.35088105,63.36531813,63.37975521,63.39419228,63.40862936,63.42306644,63.42306276,63.43749983,63.45193691,63.46637399,63.46637031,63.46636663,63.46636295,63.46635927,63.45192219,63.45191851,63.45191483,63.45191115,63.45190747,63.4519038,63.45190012,63.43746304,63.42302596,63.42302964,63.42303332,63.423037,63.40859992,63.4086036,63.40860728,63.3941702,63.37973313,63.37973681,63.37974049,63.3653034];
Birdseye.TRONLON = [10.4390738,10.4390738,10.40650249,10.40650249,10.40650249,10.37393117,10.34135986,10.30878855,10.30878855,10.30878855,10.30878855,10.30878855,10.30878855,10.30878855,10.30878855,10.34135986,10.34135986,10.34135986,10.34135986,10.37393117,10.40650249,10.4390738,10.47164512,10.47164512,10.50421643,10.53678775,10.56935906,10.60193037,10.63450169,10.667073,10.667073,10.667073,10.63450169,10.60193037,10.56935906,10.56935906,10.53678775,10.50421643,10.50421643,10.50421643,10.47164512,10.4390738,10.4390738];

Birdseye.DRAMLAT = [59.73281785,59.71837282,59.70392778,59.70393092,59.70393407,59.70393721,59.70394036,59.71838539,59.73283043,59.73283357,59.73283672,59.73283986,59.73284301,59.73284615,59.73284929,59.73285244,59.74729748,59.76174251,59.77618755,59.77618441,59.77618126,59.77617812,59.77617497,59.77617183,59.77616869,59.77616554,59.7761624,59.76171736,59.76171422,59.76171107,59.76170793,59.74726289,59.73281785];
Birdseye.DRAMLON = [10.29255135,10.29255135,10.29255135,10.26374137,10.23493139,10.2061214,10.17731142,10.17731142,10.17731142,10.14850144,10.11969145,10.09088147,10.06207149,10.0332615,10.00445152,9.975641538,9.975641538,9.975641538,9.975641538,10.00445152,10.0332615,10.06207149,10.09088147,10.11969145,10.14850144,10.17731142,10.2061214,10.2061214,10.23493139,10.26374137,10.29255135,10.29255135,10.29255135];

Birdseye.FREDLAT = [59.2299351,59.21548905,59.21549213,59.20104608,59.20104917,59.18660311,59.17215706,59.17216014,59.17216323,59.18660929,59.18661237,59.18661546,59.20106151,59.21550757,59.22995362,59.22995054,59.24439659,59.25884265,59.25883956,59.25883647,59.25883339,59.27327944,59.2877255,59.28772241,59.30216847,59.31661452,59.31661143,59.31660835,59.31660526,59.31660217,59.31659909,59.316596,59.30214994,59.28770389,59.2877008,59.27325475,59.25880869,59.24436264,59.24436572,59.24436881,59.2443719,59.24437498,59.24437807,59.24438116,59.2299351];
Birdseye.FREDLON = [11.03651009,11.03651009,11.00809272,11.00809272,10.97967534,10.97967534,10.97967534,10.95125797,10.92284059,10.92284059,10.89442322,10.86600584,10.86600584,10.86600584,10.86600584,10.89442322,10.89442322,10.89442322,10.92284059,10.95125797,10.97967534,10.97967534,10.97967534,11.00809272,11.00809272,11.00809272,11.03651009,11.06492747,11.09334485,11.12176222,11.1501796,11.17859697,11.17859697,11.17859697,11.20701435,11.20701435,11.20701435,11.20701435,11.17859697,11.1501796,11.12176222,11.09334485,11.06492747,11.03651009,11.03651009];

Birdseye.LATPOLYS = [Birdseye.OSLOLAT, Birdseye.BAERLAT, Birdseye.TRONLAT, Birdseye.DRAMLAT, Birdseye.FREDLAT];
Birdseye.LONPOLYS = [Birdseye.OSLOLON, Birdseye.BAERLON, Birdseye.TRONLON, Birdseye.DRAMLON, Birdseye.FREDLON];

Birdseye.prototype = {
    _isBirdseyeAvailable : function(lat, lon)
    {
        var numKom, length = Birdseye.LATPOLYS.length;
        for(numKom = 0; numKom < length; numKom++){
            var i, j=0 ;
	        var oddNODES=false ;
            var tmpLat = Birdseye.LATPOLYS[numKom];
            var tmpLon = Birdseye.LONPOLYS[numKom];
            var polySides = tmpLat.length;
            
	        for (i=0; i<polySides; i++) 
	        {
                j++; if (j==polySides) j=0;			
		        if (tmpLon[i]<lon && tmpLon[j]>=lon
		    	    ||  tmpLon[j]<lon && tmpLon[i]>=lon) 
		        {
		    	    if (tmpLat[i]+(lon-tmpLon[i])/(tmpLon[j]-tmpLon[i])*(tmpLat[j]-tmpLat[i])<lat) 
		    	    {
		    		    oddNODES=!oddNODES; 
		    	    }
		        }
	        }
	        
	        if(oddNODES)
	        {
	            return true;
	        }
	    } 
	    return oddNODES;
    }
}

Object.extend(GLMap.prototype, Birdseye.prototype);

