# Google/Bing Maps Plugin for calculating elevation factors

I need a PHP script that can be placed on my website that will use Google Maps or Bing Maps elevations to calculate the topographic multiplier (Mt) from AS/NZS 1170.2 for 8 wind directions (i.e. at 45 degree sectors from north).

INPUTS:

The script is required to have only one input: a lat/long. I will organise to pass these values myself.

PROCESS:

I have posted this job previously and have been asked endless questions about solving the equations in the attached PDF. That is _not_ the critical aspect of this project, and people were clearly missing the point. The critical aspect is for the developer to come up with a smart algorithm to calculate the values I need. Once you have figured out how you can calculate the outputs below, the equations are extremely simple to solve.

As a starting point, I anticipate expect that some kind of circular grid will need to be established around the input lat/long to calculate the elevation at a series of points within that grid, and then making relative comparisons between points within each 45 degree sector. The rest is up to you to figure out.

The process also needs to keep in mind the _free_ licences limitations for Google Maps or Bing Maps. I will not be buying a commercial licence. My preference is Google Maps, however if the Bing Maps developer API is more suited to this task then you are free to use that instead. As a starting point, you can assume the script will be run 50 times per day. However, each individual script execution may involve several hundred/thousand elevation points.

Please focus your attention on Figures 4.2, 4.3, and 4.4 in the attached document.

OUTPUT:

For each of the 8 wind directions (N, NE, E, SE, S, SW, W, NW), I need the script to calculate and output the following 6 values (48 values in total) for each input lat/long request.

- A determination of whether the local topography is a hill/ridge or escarpment, as per the attached document, returning either the string "HILL/RIDGE" or "ESCARPMENT", respectively (weâll call it "Type").

- Whether the entered coordinate is upwind or downwind from the crest/ridge or escarpment, returning either the string "UPWIND" or "DOWNWIND", respectively (weâll call it "Location").

- The value of "H" as a string in the format of "[login to view URL] m" (to 2 decimal places), as per the attached document.

- The value of "Lu" as a string in the format of "[login to view URL] m" (to 2 decimal places), as per the attached document. The value of âLuâ changes depending on the type of topography.

- The value of "x" as a string in the format of "[login to view URL] m" (to 2 decimal places), as per the attached document. "x" represents the distance from the input lat/long to the crest of the topographic feature.

- The value of Mt assuming z = 0. In cases where there are multiple topographic features in a particular 45 degree sector, the worst case should be used for that direction. This can be verified by comparing the Mt for each topographic feature and selecting the values that give the highest value of Mt.

The output should be formatted as a single string with values delimited by an equals sign "=" and wind directions delimited by a bar "|" (note that the parentheses are not required):

"N=(Type1)=(Location1)=(H1)=(Lu1)=(x1)=(Mt1)|NE=(Type2)=(Location2)=(H2)=(Lu2)=(x2)=(Mt2)|E=(Type3)=(Location3)=(H3)=(Lu3)=(x3)=(Mt3)|SE=(Type4)=(Location4)=(H4)=(Lu4)=(x4)=(Mt4)|S=(Type5)=(Location5)=(H5)=(Lu5)=(x5)=(Mt5)|SW=(Type6)=(Location6)=(H6)=(Lu6)=(x6)=(Mt6)|W=(Type7)=(Location7)=(H7)=(Lu7)=(x7)=(Mt7)|NW=(Type8)=(Location8)=(H8)=(Lu8)=(x8)=(Mt8)"

MY EXPECTATIONS:

I apologise for the bluntness of my description, but my previous Freelancer post resulted in endless "how" questions. I need my developer to be a problem solver, not just a programmer. It's it up to them to figure out the best way to solve this problem, not simply to write code based on my theories. If you can do that, you're a definite candidate for the job. :)