/* western-europe.h 1.1 */ /* Copyright 1992, 1993 O'Reilly and Associates, Inc. Permission to use, copy, and modify this program is hereby granted, as long as this copyright notice appears in each copy of the program source code. */ /* Groups */ #define WESTERN_EUROPE 0 #define EC 1 #define EFTA 2 /* Countries */ #define AUSTRIA 11 #define BELGIUM 12 #define DENMARK 13 #define SPAIN 14 #define FRANCE 15 #define GERMANY 16 #define IRELAND 17 #define ITALY 18 #define LUXEMBURG 19 #define NETHERLANDS 20 #define PORTUGAL 21 #define SWITZERLAND 22 #define UNITED_KINGDOM 23 static PEXCoord2D germany[] = { {1.33039,1.00174}, {1.36029,0.98078}, {1.34591,1.06978}, {1.34591,1.12939}, {1.33314,1.15494}, {1.32797,1.19514}, {1.30972,1.21455}, {1.27992,1.21881}, {1.25650,1.23584}, {1.24296,1.24784}, {1.21179,1.24222}, {1.19902,1.22732}, {1.17347,1.22732}, {1.14416,1.20892}, {1.12876,1.22306}, {1.14792,1.23158}, {1.14154,1.25713}, {1.11386,1.25713}, {1.10109,1.27203}, {1.07054,1.27778}, {1.03341,1.28016}, {1.02019,1.24435}, {1.02019,1.22306}, {1.02861,1.18687}, {1.02861,1.16043}, {1.00742,1.18049}, {0.98251,1.19037}, {0.98251,1.16771}, {0.96484,1.18049}, {0.94359,1.15325}, {0.93879,1.08677}, {0.88614,1.05683}, {0.88614,0.97180}, {0.88852,0.92992}, {0.91374,0.91224}, {0.89988,0.88857}, {0.99688,0.84485}, {0.96694,0.75507}, {1.07471,0.74609}, {1.25673,0.74847}, {1.30943,0.83349}, {1.21301,0.94608}}; static PEXCoord2D luxemburg[] = { {0.88852,0.92992}, {0.91374,0.91224}, {0.89988,0.88857}, {0.86993,0.89338}, }; static PEXCoord2D austria[] = { {1.07471,0.74609}, {1.25673,0.74847}, {1.30943,0.83349}, {1.34288,0.82182}, {1.37815,0.83551}, {1.40700,0.85548}, {1.47287,0.83829}, {1.49383,0.78739}, {1.47272,0.76892}, {1.44708,0.76892}, {1.45028,0.74007}, {1.43395,0.70474}, {1.40380,0.68717}, {1.36853,0.69349}, {1.34449,0.66954}, {1.30046,0.67480}, {1.24831,0.69127}, {1.21782,0.71615}, {1.16335,0.71923}, {1.12800,0.70236}, {1.08670,0.71134}, }; static PEXCoord2D netherlands[] = { {0.94359,1.15325}, {0.93879,1.08677}, {0.88614,1.05683}, {0.88614,0.97180}, {0.83344,1.02212}, {0.75260,1.01552}, {0.78826,1.03982}, {0.81711,1.05265}, {0.80910,1.06868}, {0.81711,1.08952}, {0.83314,1.08791}, {0.85719,1.08952}, {0.81391,1.10715}, {0.81230,1.12799}, {0.82513,1.15203}, {0.85858,1.15325}, }; static PEXCoord2D belgium[] = { {0.75260,1.01552}, {0.83344,1.02212}, {0.88614,0.97180}, {0.88852,0.92992}, {0.86993,0.89338}, {0.82833,0.92117}, {0.82994,0.95647}, {0.80910,0.95166}, {0.79948,0.92762}, {0.77864,0.93082}, {0.76843,0.96401}, {0.71130,0.99936}, {0.72895,1.01418}, }; static PEXCoord2D denmarkA[] = { {1.03341,1.28016}, {1.02069,1.31072}, {1.00110,1.33048}, {0.99344,1.36683}, {1.00786,1.39248}, {1.01245,1.43225}, {1.03672,1.45820}, {1.08481,1.46942}, {1.10084,1.49026}, {1.12800,1.49393}, {1.13450,1.45980}, {1.10565,1.43896}, {1.10227,1.40890}, {1.11847,1.39408}, {1.14251,1.40209}, {1.14837,1.38377}, {1.12328,1.35080}, {1.07951,1.34247}, {1.08160,1.29149}, {1.07054,1.27778}, }; static PEXCoord2D denmarkB[] = { {1.13450,1.33477}, {1.11366,1.33156}, {1.11045,1.31553}, {1.12488,1.30111}, {1.13129,1.28668}, {1.14412,1.29630}, {1.14893,1.31874}, }; static PEXCoord2D denmarkC[] = { {1.22587,1.37003}, {1.20182,1.36042}, {1.20022,1.34599}, {1.21465,1.33317}, {1.19862,1.32355}, {1.18259,1.33477}, {1.18740,1.34920}, {1.16976,1.36202}, {1.15854,1.33958}, {1.16335,1.31072}, {1.18099,1.29309}, {1.20022,1.29950}, {1.16656,1.26905}, {1.21304,1.28828}, {1.20984,1.30431}, {1.22747,1.31072}, {1.23388,1.33637}, {1.21946,1.35561}, {1.23709,1.36202}, }; static PEXCoord2D franceA[] = { {0.71130,0.99936}, {0.76843,0.96401}, {0.77864,0.93082}, {0.79948,0.92762}, {0.80910,0.95166}, {0.82994,0.95647}, {0.82833,0.92117}, {0.86993,0.89338}, {0.89988,0.88857}, {0.99688,0.84485}, {0.96694,0.75507}, {0.93413,0.74327}, {0.91169,0.70018}, {0.88614,0.67480}, {0.88764,0.65671}, {0.90688,0.66018}, {0.91810,0.64229}, {0.93879,0.63768}, {0.94535,0.59099}, {0.92743,0.56886}, {0.94695,0.53649}, {0.97115,0.53008}, {0.97115,0.49757}, {0.89749,0.44671}, {0.78253,0.47903}, {0.73405,0.45569}, {0.73405,0.40299}, {0.65142,0.40537}, {0.62636,0.43390}, {0.58628,0.44512}, {0.55583,0.43989}, {0.51255,0.45341}, {0.51255,0.48199}, {0.48690,0.46142}, {0.46701,0.46763}, {0.47889,0.48359}, {0.49011,0.52367}, {0.51255,0.56855}, {0.51095,0.60221}, {0.49812,0.66793}, {0.49331,0.68236}, {0.47728,0.68397}, {0.45965,0.69519}, {0.45645,0.71442}, {0.47272,0.72512}, {0.45484,0.73686}, {0.43721,0.73205}, {0.41156,0.73526}, {0.41797,0.74648}, {0.40515,0.74007}, {0.36988,0.75450}, {0.34584,0.75610}, {0.33109,0.76643}, {0.32981,0.78335}, {0.31699,0.79617}, {0.31076,0.81733}, {0.32340,0.83304}, {0.34744,0.83464}, {0.36508,0.84587}, {0.38752,0.83785}, {0.41156,0.81060}, {0.43240,0.82823}, {0.46767,0.82823}, {0.48317,0.81971}, {0.48209,0.85709}, {0.46767,0.87953}, {0.46280,0.89576}, {0.49331,0.90197}, {0.51736,0.88914}, {0.57026,0.89075}, {0.59396,0.88198}, {0.60552,0.89075}, {0.59430,0.89876}, {0.60552,0.91800}, {0.64239,0.95006}, {0.66039,0.98320}, }; static PEXCoord2D franceB[] = { {1.06557,0.44352}, {1.04794,0.43551}, {1.05275,0.41948}, {1.03672,0.40825}, {1.02710,0.39062}, {1.03031,0.36978}, {1.05275,0.34574}, {1.07038,0.33772}, {1.08481,0.35536}, {1.07359,0.36658}, {1.08641,0.39223}, {1.08320,0.43390}, {1.07198,0.46917}, }; static PEXCoord2D switzerland[] = { {0.96694,0.75507}, {0.93413,0.74327}, {0.91169,0.70018}, {0.88614,0.67480}, {0.88764,0.65671}, {0.90688,0.66018}, {0.91810,0.64229}, {0.93879,0.63768}, {0.98863,0.66045}, {0.99825,0.68076}, {1.03191,0.67274}, {1.04720,0.63768}, {1.08000,0.67916}, {1.12800,0.70236}, {1.08670,0.71134}, {1.07471,0.74609}, }; static PEXCoord2D italyA[] = { {1.30046,0.61016}, {1.30046,0.67480}, {1.24831,0.69127}, {1.21782,0.71615}, {1.16335,0.71923}, {1.12800,0.70236}, {1.08000,0.67916}, {1.04720,0.63768}, {1.03191,0.67274}, {0.99825,0.68076}, {0.98863,0.66045}, {0.93879,0.63768}, {0.94535,0.59099}, {0.92743,0.56886}, {0.94695,0.53649}, {0.97115,0.53008}, {0.97115,0.49757}, {0.99504,0.49962}, {1.02229,0.51726}, {1.04060,0.53411}, {1.07038,0.53008}, {1.11526,0.51565}, {1.13771,0.48840}, {1.13931,0.45955}, {1.15534,0.43871}, {1.16934,0.40537}, {1.20182,0.38261}, {1.22907,0.36017}, {1.26915,0.34734}, {1.35090,0.29605}, {1.35891,0.28322}, {1.37174,0.28322}, {1.38616,0.27681}, {1.39097,0.26719}, {1.40861,0.26559}, {1.41662,0.24155}, {1.41983,0.20788}, {1.42944,0.18384}, {1.41983,0.16300}, {1.42624,0.14537}, {1.41181,0.13094}, {1.39739,0.14377}, {1.38136,0.14056}, {1.35250,0.12613}, {1.29319,0.12453}, {1.27556,0.11972}, {1.25793,0.12132}, {1.24991,0.10369}, {1.27075,0.09888}, {1.28037,0.10369}, {1.30762,0.08125}, {1.34930,0.05881}, {1.37975,0.03957}, {1.39739,0.04278}, {1.40540,0.05881}, {1.39739,0.07965}, {1.39578,0.11171}, {1.42784,0.13415}, {1.44387,0.12934}, {1.46311,0.14857}, {1.47433,0.17583}, {1.49383,0.18441}, {1.49677,0.19506}, {1.49517,0.22071}, {1.48395,0.23513}, {1.47112,0.24315}, {1.47112,0.26078}, {1.48395,0.27361}, {1.50478,0.27040}, {1.51921,0.25758}, {1.53364,0.25918}, {1.54806,0.24475}, {1.56987,0.23834}, {1.56987,0.25570}, {1.56089,0.27521}, {1.53524,0.28964}, {1.50959,0.29605}, {1.48074,0.32169}, {1.44067,0.34093}, {1.43105,0.35536}, {1.44067,0.36978}, {1.43105,0.37940}, {1.37013,0.39062}, {1.33006,0.42268}, {1.31243,0.45153}, {1.29319,0.49161}, {1.28037,0.50443}, {1.25953,0.50283}, {1.24510,0.51726}, {1.24831,0.53970}, {1.24510,0.56054}, {1.23228,0.58298}, {1.23869,0.60382}, {1.27235,0.60221}, }; static PEXCoord2D italyB[] = { {1.06076,0.32650}, {1.02389,0.31047}, {1.00786,0.31689}, {1.01588,0.33131}, {0.99985,0.31528}, {1.00786,0.30246}, {1.01909,0.29124}, {1.02710,0.26078}, {1.01588,0.24155}, {1.00786,0.25277}, {1.01428,0.23193}, {1.00786,0.20628}, {1.02389,0.18705}, {1.04794,0.18544}, {1.04794,0.19987}, {1.05916,0.19987}, {1.06878,0.19346}, {1.07679,0.20468}, {1.07519,0.22872}, {1.08320,0.25277}, {1.07679,0.27361}, {1.09282,0.27681}, {1.09282,0.29925}, {1.07359,0.32811}, }; static PEXCoord2D spain[] = { {0.73405,0.40299}, {0.65142,0.40537}, {0.62636,0.43390}, {0.58628,0.44512}, {0.55583,0.43989}, {0.51255,0.45341}, {0.51255,0.48199}, {0.48690,0.46142}, {0.46701,0.46763}, {0.44042,0.46436}, {0.41316,0.47398}, {0.33302,0.48199}, {0.26409,0.47879}, {0.21921,0.49001}, {0.17913,0.49642}, {0.15509,0.48520}, {0.13585,0.47398}, {0.11341,0.47879}, {0.08776,0.46436}, {0.05988,0.43949}, {0.05731,0.41948}, {0.06532,0.39864}, {0.07830,0.38707}, {0.07830,0.37620}, {0.08502,0.36500}, {0.11982,0.37459}, {0.13265,0.36006}, {0.12143,0.34253}, {0.15348,0.35831}, {0.18875,0.36103}, {0.22753,0.35208}, {0.21528,0.32650}, {0.19196,0.30887}, {0.19148,0.27681}, {0.16586,0.22333}, {0.14066,0.22071}, {0.17432,0.17583}, {0.16474,0.15338}, {0.17753,0.11812}, {0.15348,0.09888}, {0.16344,0.07124}, {0.19837,0.05881}, {0.23203,0.03797}, {0.23684,0.01393}, {0.26942,0.00000}, {0.29615,0.00620}, {0.31218,0.02354}, {0.33943,0.02835}, {0.35866,0.02515}, {0.37149,0.03316}, {0.40355,0.04118}, {0.43400,0.03957}, {0.45805,0.04598}, {0.49011,0.08285}, {0.50774,0.11331}, {0.54300,0.13415}, {0.57667,0.16460}, {0.58468,0.18865}, {0.56545,0.18865}, {0.55423,0.20628}, {0.55904,0.23193}, {0.57506,0.26078}, {0.60552,0.29605}, {0.67765,0.32811}, {0.70170,0.34093}, {0.72735,0.37459}, }; static PEXCoord2D portugal[] = { {0.08502,0.36500}, {0.11982,0.37459}, {0.13265,0.36006}, {0.12143,0.34253}, {0.15348,0.35831}, {0.18875,0.36103}, {0.22753,0.35208}, {0.21528,0.32650}, {0.19196,0.30887}, {0.19148,0.27681}, {0.16586,0.22333}, {0.14066,0.22071}, {0.17432,0.17583}, {0.16474,0.15338}, {0.17753,0.11812}, {0.15348,0.09888}, {0.16344,0.07124}, {0.12784,0.05721}, {0.10700,0.06497}, {0.08264,0.06226}, {0.06692,0.05881}, {0.06692,0.07484}, {0.08662,0.10209}, {0.08510,0.15209}, {0.05269,0.16825}, {0.04609,0.20628}, {0.05731,0.22552}, {0.05089,0.22872}, {0.07220,0.28643}, }; static PEXCoord2D ukA[] = { {0.29218,1.56338}, {0.32019,1.57201}, {0.35225,1.56720}, {0.38271,1.57201}, {0.39335,1.56580}, {0.38591,1.53354}, {0.36508,1.50308}, {0.34744,1.49987}, {0.35225,1.49346}, {0.33589,1.48257}, {0.35706,1.47583}, {0.43721,1.46942}, {0.43400,1.45018}, {0.42439,1.41652}, {0.40355,1.38446}, {0.38676,1.37164}, {0.38676,1.36042}, {0.42118,1.35240}, {0.47420,1.32868}, {0.48690,1.30431}, {0.52698,1.26424}, {0.56224,1.22417}, {0.57300,1.19514}, {0.55743,1.19050}, {0.53820,1.19371}, {0.51896,1.19371}, {0.54544,1.18557}, {0.57186,1.17608}, {0.58435,1.15325}, {0.56402,1.12569}, {0.57506,1.11997}, {0.61834,1.12799}, {0.65142,1.11191}, {0.63117,1.05265}, {0.59813,1.02688}, {0.60232,1.01738}, {0.62796,1.01899}, {0.63764,1.00174}, {0.56705,0.96288}, {0.49171,0.96128}, {0.42599,0.95166}, {0.38591,0.95968}, {0.36027,0.93884}, {0.33462,0.92281}, {0.30577,0.92120}, {0.28012,0.91640}, {0.25743,0.91852}, {0.26249,0.92762}, {0.28813,0.94204}, {0.30897,0.97090}, {0.33783,0.99173}, {0.37149,0.99334}, {0.38591,1.01097}, {0.40515,1.01899}, {0.42091,1.04066}, {0.37719,1.01970}, {0.33302,1.02700}, {0.29935,1.04944}, {0.28974,1.06707}, {0.34725,1.10055}, {0.32180,1.11997}, {0.33141,1.13760}, {0.31218,1.15043}, {0.32821,1.16005}, {0.33622,1.14241}, {0.36668,1.15524}, {0.40475,1.16519}, {0.40194,1.18890}, {0.41670,1.22508}, {0.39874,1.22417}, {0.38431,1.22417}, {0.36828,1.24019}, {0.37469,1.26584}, {0.39578,1.28016}, {0.37950,1.28187}, {0.36027,1.26584}, {0.33783,1.26103}, {0.29455,1.26584}, {0.28333,1.30592}, {0.29218,1.35621}, {0.24846,1.31010}, {0.24165,1.33156}, {0.26569,1.37164}, {0.27363,1.40653}, {0.24966,1.40370}, {0.23230,1.41129}, {0.24004,1.45820}, {0.20157,1.46782}, {0.20638,1.48384}, {0.22081,1.47743}, {0.21279,1.49026}, {0.22722,1.49507}, {0.24325,1.46461}, {0.24646,1.50468}, }; static PEXCoord2D ukB[] = { {0.21600,1.54957}, {0.18875,1.53354}, {0.18394,1.49827}, {0.17432,1.47102}, {0.14707,1.44057}, {0.18394,1.46301}, {0.19676,1.50148}, {0.22241,1.53193}, }; static PEXCoord2D nireland[] = { {0.17432,1.29874}, {0.22081,1.29630}, {0.23363,1.27546}, {0.25287,1.26264}, {0.25768,1.23699}, {0.22753,1.20892}, {0.20592,1.24303}, {0.14490,1.22508}, {0.12155,1.24784}, {0.14970,1.28016}, }; static PEXCoord2D ireland[] = { {0.22753,1.20892}, {0.20592,1.24303}, {0.14490,1.22508}, {0.12155,1.24784}, {0.14970,1.28016}, {0.12155,1.29394}, {0.10539,1.27706}, {0.10219,1.26103}, {0.08295,1.24500}, {0.09637,1.22929}, {0.07654,1.22577}, {0.06372,1.21615}, {0.04609,1.21936}, {0.02525,1.22096}, {0.01135,1.20654}, {0.02756,1.19371}, {0.02756,1.16043}, {0.05250,1.15524}, {0.07604,1.15145}, {0.03486,1.11677}, {0.03232,1.10055}, {0.04769,1.10055}, {0.08502,1.10953}, {0.04929,1.09432}, {0.02044,1.09272}, {0.00000,1.07541}, {0.00000,1.06066}, {0.03166,1.06387}, {0.03654,1.05206}, {0.01616,1.04784}, {0.01616,1.03348}, {0.04609,1.03982}, {0.07013,1.03822}, {0.15669,1.05906}, {0.19676,1.06227}, {0.21133,1.07541}, {0.22562,1.14402}, {0.21921,1.17287}, }; static PEXListOfCoord2D boundaries[] = { {sizeof(germany)/sizeof(PEXCoord2D), germany}, {sizeof(luxemburg)/sizeof(PEXCoord2D), luxemburg}, {sizeof(austria)/sizeof(PEXCoord2D), austria}, {sizeof(netherlands)/sizeof(PEXCoord2D), netherlands}, {sizeof(belgium)/sizeof(PEXCoord2D), belgium}, {sizeof(denmarkA)/sizeof(PEXCoord2D), denmarkA}, {sizeof(denmarkB)/sizeof(PEXCoord2D), denmarkB}, {sizeof(denmarkC)/sizeof(PEXCoord2D), denmarkC}, {sizeof(franceA)/sizeof(PEXCoord2D), franceA}, {sizeof(franceB)/sizeof(PEXCoord2D), franceB}, {sizeof(switzerland)/sizeof(PEXCoord2D), switzerland}, {sizeof(italyA)/sizeof(PEXCoord2D), italyA}, {sizeof(italyB)/sizeof(PEXCoord2D), italyB}, {sizeof(spain)/sizeof(PEXCoord2D), spain}, {sizeof(portugal)/sizeof(PEXCoord2D), portugal}, {sizeof(ukA)/sizeof(PEXCoord2D), ukA}, {sizeof(ukB)/sizeof(PEXCoord2D), ukB}, {sizeof(nireland)/sizeof(PEXCoord2D), nireland}, {sizeof(ireland)/sizeof(PEXCoord2D), ireland}, }; typedef struct { PEXName name, group; char *string; unsigned int num_lists; PEXListOfCoord2D *lists; } Country; static Country countries[] = { {AUSTRIA, EFTA, "Austria", 1, &boundaries[2]}, {BELGIUM, EC, "Belgium", 1, &boundaries[4]}, {DENMARK, EC, "Denmark", 3, &boundaries[5]}, {FRANCE, EC, "France", 2, &boundaries[8]}, {GERMANY, EC, "Germany", 1, &boundaries[0]}, {IRELAND, EC, "Ireland", 1, &boundaries[18]}, {ITALY, EC, "Italy", 2, &boundaries[11]}, {LUXEMBURG, EC, "Luxemburg", 1, &boundaries[1]}, {NETHERLANDS, EC, "Netherlands", 1, &boundaries[3]}, {PORTUGAL, EC, "Portugal", 1, &boundaries[14]}, {SPAIN, EC, "Spain", 1, &boundaries[13]}, {SWITZERLAND, EFTA, "Switzerland", 1, &boundaries[10]}, {UNITED_KINGDOM, EC, "United Kingdom", 3, &boundaries[15]} }; #define NUM_COUNTRIES (sizeof(countries)/sizeof(countries[0]))