Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
A COMPUTER IMPLEMENTED METHOD FOR DISPLAYING WIND FORECAST DATA ON AN INTERACTIVE MAP
Document Type and Number:
WIPO Patent Application WO/2023/122815
Kind Code:
A1
Abstract:
A computer implemented method for displaying wind forecast data on an interactive map displayable on a display of a computing device, the method comprising: (a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area; (b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having corners represented by co-ordinates; (c) associating each of the corners of the canvas space with a latitude and longitude in a real world map space; (d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map; (e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain.

Inventors:
MORRIS TRISTAN (AU)
Application Number:
PCT/AU2022/051561
Publication Date:
July 06, 2023
Filing Date:
December 22, 2022
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CANARY CO HOLDINGS PTY LTD (AU)
International Classes:
G06T17/05; G06F3/04842; G06F16/29; G06T19/20
Foreign References:
US20200319335A12020-10-08
Other References:
HUYNH GIAP, WANG YANSEN, WILLIAMSON CHATT: "Visualization of Wind Data on Google Earth for the Three-dimensional Wind Field (3DWF) Model", ARMY RESEARCH LABORATORY, 1 September 2012 (2012-09-01), Fort Belvoir, VA, pages 1 - 58, XP093077891, [retrieved on 20230831], DOI: 10.21236/ADA570398
WANG YANSEN; HUYNH GIAP; WILLIAMSON CHATT: "Integration of Google Maps/Earth with microscale meteorology models and data visualization", COMPUTERS & GEOSCIENCES, vol. 61, 27 July 2013 (2013-07-27), AMSTERDAM, NL , pages 23 - 31, XP028755829, ISSN: 0098-3004, DOI: 10.1016/j.cageo.2013.07.016
RAUTENHAUS M., KERN M., SCHÄFLER A., WESTERMANN R.: "Three-dimensional visualization of ensemble weather forecasts – Part 1: The visualization tool Met.3D (version 1.0)", GEOSCIENTIFIC MODEL DEVELOPMENT, vol. 8, no. 7, pages 2329 - 2353, XP093077897, DOI: 10.5194/gmd-8-2329-2015
TREINISH LLOYD, DYKES J.; MACEACHREN, KRAAK M. J., MACEACHREN ALAN M.: "Web-based Dissemination and Visualization of Operational 3D Mesoscale Weather Models", EXPLORING GEOVISUALIZATION, 2005, pages 403 - 422, XP009547698, ISBN: 0-08-044531-4, DOI: 10.1016/B978-008044531-1/50438-3
Attorney, Agent or Firm:
ADAMS PLUCK (AU)
Download PDF:
Claims:
THE CLAIMS DEFINING THE INVENTION ARE AS FOLLOWS:

1 . A computer implemented method for displaying wind forecast data on an interactive map displayable on a display of a computing device, the method comprising:

(a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area;

(b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having corners represented by co-ordinates;

(c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space;

(d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map;

(e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain.

2. A computer implemented method in accordance with claim 1 , wherein a characteristic of the animation is used to represent a characteristic of the wind velocity.

3. A computer implemented method in accordance with claim 2, wherein the animation comprises depicting a particle creating a trail as it moves from its origin.

4. A computer implemented method in accordance with claim 3, wherein the characteristic of the wind velocity is the predicted wind speed as determined from the gridded spatial forecast data.

5. A computer implemented method in accordance with claim 4, wherein a speed at which the particle travels is representative of the predicted wind speed.

6. A computer implemented method in accordance with any one of claims 3 to 5, wherein the method further comprises determining an altitude of the underlying terrain and adjusting the speed at which the particles travels over the underlying terrain based on the determination.

7. A computer implemented method in accordance with any one of claims 3 to 6, wherein the animation further comprises showing the trail behind the particle fading over time.

8. A computer implemented method in accordance with any one of the preceding claims, wherein the 3D terrain map comprises a flyover view and wherein a user of the computing device can control the viewpoint.

9. A computer implemented method in accordance with claim 8, further comprising overlaying fire boundaries on the 3D terrain map.

10. A computer implemented method in accordance with any one of the preceding claims, wherein the method comprises overlaying a 2D canvass comprising the animated wind lines over the 3D terrain map based on a determination of both a rotation and pitch of a current viewport.

11. A computer implemented method for displaying wind forecast data on an interactive map displayable on a display of a computing device, the method comprising:

(a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area;

(b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having corners represented by co-ordinates; 18

(c) associating each of the corners of the canvas space with a latitude and longitude in a real world map space;

(d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 2D terrain map;

(e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, a line overlaying associated terrain on the 2D terrain map for representing predicted wind movement;

(f) wherein responsive to receiving a predefined user input via the computing device, the method further comprises displaying at least a portion of the 2D interactive map in a three dimensional (3D) map view and wherein, when so displayed, the lines are shown in animated form following a contour of the underlying terrain.

12. A non-transitory machine readable medium for storing a mapping program for execution by at least one of the processing units, the program comprising sets of instructions for:

(a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area;

(b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having corners represented by co-ordinates;

(c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space;

(d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map;

(e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain. 19

13. A non-transitory machine readable medium for storing a mapping program for execution by at least one of the processing units, the program comprising sets of instructions for:

(a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area;

(b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having corners represented by co-ordinates;

(c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space;

(d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 2D terrain map;

(e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, a line overlaying associated terrain on the 2D terrain map for representing predicted wind movement;

(f) wherein responsive to receiving a predefined user input via the computing device, the method further comprises displaying at least a portion of the 2D map in a three dimensional (3D) map view and wherein, when so displayed, the lines are shown in animated form following a contour of the underlying terrain.

14. A computer system for displaying wind forecast data on an interactive user interface displayable on a display of a computing device, the system comprising: a computer processing module configured to:

(a) receive gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area;

(b) draw each location as a point on a two dimensional (2D) canvas space, the canvas space having corners represented by co-ordinates; 20

(c) associate each of the corners of the canvas space with a latitude and longitude in a real world map space;

(d) project each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map;

(e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation: communicate with the user interface to display an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain.

Description:
A COMPUTER IMPLEMENTED METHOD FOR DISPLAYING WIND FORECAST DATA ON AN INTERACTIVE MAP

Field of the Invention

This invention relates to an interactive mapping tool for improving decision making, particularly but by no means exclusively, in relation to fire behaviour.

Background of Invention

Meteorological wind forecasting is a well-established mathematical application based in physical phenomena. It allows the prediction of the direction (v component) and velocity of wind (u component) over time.

Animated graphical depictions of wind forecasting are also well established, see windy.com or any TV weather segment, which depict particles moving across a screen to depict the direction and velocity of wind.

A map depicts physical world geography, locations and features. Wind and physical world geography is well known to influence fire behaviour. For instance, fire will more readily bum uphill and move in the same direction as the wind is blowing.

Various emergency service agencies will plot the location of a fire on a map. Some services use polygons to depict the area of a fire, and others use single points to depict the location of a fire. Wind may be manually or statically drawn on maps to depict the likely direction a fire will move under the influence of wind.

It would be advantageous if there was a tool that helped to improved decision making in relation to the behaviour of fire, and particularly in relation to the effects of wind. Summary of Invention

In accordance with a first aspect there is provided a computer implemented method for displaying wind forecast data on an interactive map displayable on a display of a computing device, the method comprising: (a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area; (b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having comers represented by co-ordinates; (c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space; (d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map; (e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain.

In an embodiment a characteristic of the animation is used to represent a characteristic of the wind velocity. The animation may comprise depicting a particle creating a trail as it moves from its origin. The characteristic of wind velocity may be the predicted wind speed as determined from the gridded spatial forecast data. A speed at which the particle travels may be representative of the predicted wind speed.

In an embodiment the method may further comprise determining an altitude of the underlying terrain and adjusting the speed at which the particles travel over the underlying terrain based on the determination. The animation may further comprise showing the trail behind the particle fading over time.

In an embodiment the 3D terrain map comprises a flyover view and wherein a user of the computing device can control the viewpoint. Fire boundaries may be shown overlaying the 3D terrain map. In an embodiment the method comprises overlaying a 2D canvass comprising the animated wind lines over the 3D terrain map based on a determination of both a rotation and pitch of a current viewport.

In accordance with a second aspect there is provided a computer implemented method for displaying wind forecast data on an interactive map displayable on a display of a computing device, the method comprising: (a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area; (b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having comers represented by co-ordinates; (c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space; (d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 2D terrain map; (e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, a line overlaying associated terrain on the 2D terrain map for representing predicted wind movement; (f) wherein responsive to receiving a predefined user input via the computing device, the method further comprises displaying at least a portion of the 2D interactive map in a three dimensional (3D) map view and wherein, when so displayed, the lines are shown in animated form following a contour of the underlying terrain.

In a third aspect there is provided a non-transitory machine readable medium for storing a mapping program for execution by at least one of the processing units, the program comprising sets of instructions for: (a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area; (b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having comers represented by co-ordinates; (c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space; (d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map; (e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain.

In a fifth aspect there is provided a non-transitory machine readable medium for storing a mapping program for execution by at least one of the processing units, the program comprising sets of instructions for: (a) receiving gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area; (b) drawing each location as a point on a two dimensional (2D) canvas space, the canvas space having comers represented by co-ordinates; (c) associating each of the comers of the canvas space with a latitude and longitude in a real world map space; (d) projecting each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 2D terrain map; (e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation displaying, on the display, a line overlaying associated terrain on the 2D terrain map for representing predicted wind movement; (f) wherein responsive to receiving a predefined user input via the computing device, the method further comprises displaying at least a portion of the 2D map in a three dimensional (3D) map view and wherein, when so displayed, the lines are shown in animated form following a contour of the underlying terrain.

In a sixth aspect there is provided a computer system for displaying wind forecast data on an interactive user interface displayable on a display of a computing device, the system comprising: a computer processing module configured to: (a) receive gridded spatial forecast data, the data comprising information representative of predicted wind velocities for locations within a predefined gridded area; (b) draw each location as a point on a two dimensional (2D) canvas space, the canvas space having comers represented by co- ordinates; (c) associate each of the corners of the canvas space with a latitude and longitude in a real world map space; (d) project each point on the canvas space onto a canvas into associated latitude and longitude and associating the canvas with a 3D terrain map; (e) for a selection of the projected points, evaluating the corresponding wind velocity and based on that evaluation: communicate with the user interface to display an animation overlaying associated terrain on the 3D terrain map for representing predicted wind movement and wherein, when so displayed, the animation is shown following a contour of the underlying terrain.

Brief Description of the Drawings

Features and advantages of the present invention will become apparent from the following description of embodiments thereof, by way of example only, with reference to the accompanying drawings, in which:

Figure 1 is a schematic block diagram illustrating a system in which an embodiment can be implemented;

Figure 2 shows a process flow for creating an interactive 2D terrain map, in accordance with an embodiment;

Figure 3 is a schematic illustrating creation and mapping of a canvas space to a 2D interactive map;

Figure 4 shows an example screen shot of a 2D terrain map sans wind markers;

Figure 5 is the screen shot of Figure 4 with overlayed animations representative of wind velocity;

Figure 6 shows an example screen shot of an interactive 3D terrain map sans wind markers; Figure 7 shows the 3D terrain map with overlayed animations representative of wind velocity;

Figure 8 shows a sequence of animation frames or screenshots.

Figure 9 shows a process flow for creating an interactive 3D terrain map, in accordance with an embodiment.

Detailed Description

The present invention relates to a computer implemented method and corresponding interactive mapping application for use in improving decision making in relation to the behaviour of fire. A particular advantage of the invention is the ability to visualise predicted movement of a fire over varying terrain in three dimensions. More particularly, when terrain and wind is combined with animation, it allows direct observation of the impact wind has on a fire, allowing for more accurate response and recovery efforts than previously known methods. This also allows for decision makers and the general public to quickly understand critical information and lower decision thresholds.

With reference to Figure 1 there is shown a schematic of a system 10 for carrying out an embodiment of the present invention. According to the illustrated embodiment, the system 10 comprises a server system 12 comprising one or more web servers 13 operable to implement a web application 14 accessible by users 16. The system 10 additionally comprises one or more external systems 17 that provide meteorological forecast data, mapping data and emergency incident data. By way of example, in Australia, the meteorological forecast data is provided by the Australian Bureau of Meteorology.

According to embodiments described herein, the web application 14 is accessible over a communications network 20 by way of a browser, or as a native application on any suitable network-enabled computing device 18 operated by the user 16. The communications network 20 may be any suitable fixed and/or mobile communications network, e.g., the Internet. Although not illustrated in Figure 1 , the devices 18 may be communicable with the Internet via a broadband mobile network including standard network elements including a base station controller, home location register, mobile switching centre, message centre, equipment identity register, message gateway, etc. In an alternative embodiment, the devices 18 may be configured to communicate with the network 20 via a satellite communications or radio network (not shown).

In more detail, at least one of the one or more web servers 13 (for ease of reference only one web server 13 will be referenced hereafter) includes typical server hardware such as a processor, motherboard, memory, hard disk and a power supply. The web server 13 includes an operating system which cooperates with the hardware to provide an environment in which software applications can be executed. In this regard, the hard disk of the server 13 is loaded with a processing module which, under the control of the processor, is operable to implement the web application 14.

According to the illustrated embodiment, the web application 14 takes the form of a progressive web app (PWA). As persons skilled in the art will understand, PWAs implement a single code base running on Web, iOS and Android (i.e. , using web technologies, rather than adopting specific Apple, Microsoft or Google technology). More particularly, the PWA 14 is programmed to provide a novel user interface that allows users to visualise predicted wind movement over varying terrain in either two or three dimensions, as will now be described in more detail.

To generate the 2D and 3D map user interfaces, the PWA 14 is programmed to periodically retrieve meteorological forecast data (e.g., via HTTP or FTP RESTful API) for storing in memory. According to the illustrated embodiment, the meteorological forecast data includes gridded spatial climate datasets encoded in GRIB (General Regularly distributed information in Binary Form) file format, which is designed for storing distributing weather data. More particularly, the datasets may comprise two-dimensional gridded datasets representative of forecast (predicted) wind velocity at grid points around the globe. The grid may be separated by arbitrary points (e.g., every 1 km) with the wind velocity (i.e., broken down into speed and heading) predicted at these 1 km x 1 km grid points. According to the illustrated embodiment, the server 13 first retrieves the data (i.e., as a GRIB file) which it then converts into JSON for provision to the PWA 14, upon request, for subsequent processing/rendering.

According to the illustrated embodiment, the Australian Bureau of Meteorology generates forecasts every 6 hours, with “steps” every hour for predicted wind velocity. For example, at 00:00hrs, the wind is predicted for 01 :00hrs, 02:00hrs hours, etc. In one particular implementation, the server 13 is programmed to periodically check for new forecast data every 10 minutes. If available, the datasets are retrieved, converted and made available to the PWA 14.

Responsive to a client device 18 accessing the PWA 14, the PWA 14 is configured to communicate with the server 13 and relevant mapping and emergency incident providers for obtaining converted forecast data, map data and incident data for rendering and display in either 2D or 3D format, as will now be described with additional reference to Figure 2.

As an initial step (S1), the gridded spatial data is mapped to co-ordinates in a two-dimensional (2D) canvas space. As persons skilled in the art will appreciate, a 2D canvas space consists of a drawable region defined in HTML and JavaScript (i.e., with the HTML used to generate the element block and JavaScript used for drawing elements thereupon). According to the illustrated embodiment, the 2D canvas space consists of a flat rectangle with comers represented by coordinates. By way of example, the coordinates might be (0,0) for top left, and (128,128) for bottom right.

At step S2, the PWA 14 associates each corner of the 2D canvas space with a latitude and longitude in a real-world map space. At step S3, the PWA 14 plots the grid points (i.e., having associated predicted wind velocities) as points on the mapped 2D canvas space (also commonly referred to as an “interpolation grid”).

At step S4, each point on the canvas space is projected onto a 2D terrain map based on the associated latitude and longitude. In this regard, the PWA 14 is communicable with a map vendor 17 (e.g., Mapbox, see URL: https://www.mapbox.com/maps) for retrieving data used to produce the 2D and 3D terrain maps using techniques well known in the art. In one form the map data used to generate the maps may take the form of vector tile data (containing geometries and metadata) that can be rendered by the PWA 14. It will be understood that as the user moves around the map, the corner points of the canvas space are re-evaluated based on the current map location.

An example schematic illustrating construction of a 2D terrain map by the PWA 14 is shown in Figure 3. In this case, a canvas having dimensions of 1024 x 1024 is sized and aligned to the aspect ratio and local orientation of the device 18 (in this case a 24-inch monitor in landscape mode). Map space is represented by points A through B, while the Greek symbols denote wind velocity markers with the following associated values:

A: -1 , 104

B: -.5, 161

C: -34, 117

D: -35, 147 a: 34k/h E

[3: 31 k/h N

At step S5, the PWA 14 is configured to determine wind velocities for selected points (e.g., points a and [3 as outlined above) and subsequently draw a shape, such as line (commonly referred to as a “stroke”), on the canvas (i.e., now overlaying the 2D terrain map) for representing predicted wind movement. The points may be randomly and continuously selected by the PWA 14, with an animation used to represent the wind velocity. It will be understood that shapes other than lines can be used to represent wind movement, such as dotted lines, dashes, arrows, streams, wind barbs, or other any other suitable visual representation.

By way of example, the animation may involve depicting a particle travelling from the grid point to a second point located in line with the associated wind heading. A characteristic of the animation and/or line style may be used to represent a characteristic of the wind velocity. For example, the speed at which a particle travels may be representative of corresponding wind speed. Thus, the distance between the grid point and second point will vary depending on the wind speed. According to the illustrated embodiment, each particle travels or “survives” for 90 frames (noting that approximately 15 frames are rendered per second). Thus, a stronger wind will show the particle travelling further than a weaker wind. The animation may show the particle with a trail that gradually fades with each frame. Figure 4 shows a screen shot of a 2D user interface generated by the PWA 14 sans particles, while Figure 5 shows particles 200 (in the example screenshot shown as hundreds of white contouring lines) overlaying the map.

Additionally, or alternatively, a thickness of the trail or colour thereof could be used to indicate wind speed.

In addition to the wind overlay, the PWA 14 may be programmed to display fire boundaries overlaying the map. The fire boundary coordinates may be obtained from an external provider 17, e.g., via API calls. For example, the PWA 14 may be programmed to interface with an emergency services provider 17 to receive gridded emergency incident data. The meteorological wind, fire boundaries and fire movement allow users to infer the likely path of a fire and the areas likely to be most active. Users can interact with and move around the 2D terrain map using typical user inputs, such as via mouse or touch screen controls. For example, zooming may be achieved via scroll wheel, or pinch to zoom. Panning (moving sideways) may be carried out through click-drag or swishing fingers sideways. Tilt may be via right-click-drag, or two fingers dragging. Rotation can be achieved via two fingers moving around each other, or via the right-click-drag as well.

At step S6, responsive to receiving a predefined user input via the Ul, the PWA 14 is configured to transition from the 2D terrain map view to a 3D terrain map view having a Ul that allows a user to “flyover” the underlying terrain. Figure 6 is an example screen shot of the 3D map with wind markers turned off, while Figure 7 shows the 3D map with wind markers on (i.e. , with the particles following a contour of the underlying terrain). Figure 8 shows a sequence of animation frames or screenshots of a 3D interactive map with wind markers on.

As is evident from Figures 7 and 8, the 3D terrain map allows a user to visualise wind on a 3D world map to clearly see the interaction between wind and a slope. For example, the 3D map view allows users to see wind pushing up a hill, over the summit and sheltering a valley. Stronger wind will occur where the terrain has a steeper pitch or where the terrain naturally funnels wind, such as through a gorge. Weaker wind will occur where the terrain is sheltered. Combining this with fire or bushfire allows a user to directly observe the relationship between wind, fire, slope/terrain. Being able to clearly see this interaction can help inform decision making, especially in relation to disaster response, firefighting activities, back burning operations etc.

Transitioning Between 2D and 3D interactive map views

To transition to 3D terrain map view, the PWA 14 is configured to perform several steps as will now be described with reference to Figure 9. While in 3D terrain map view, the PWA 14 listens for predefined events which trigger start/stop handlers. For example, the start of user movement will trigger the stopping of animation/calculations. The end of movement will start the animation/calculations. Other predefined events include drag and screen resizing.

At step S1a of Figure 9, the PWA 14 determines the current user perspective of the map. This includes calculating the user’s viewport based on the size of the user’s screen and viewable window. In addition, appropriate canvas dimensions are calculated based on the size of the user’s viewport. For example, a 24” monitor may have 23” of viewable space if the window is in full screen. Based on the canvas dimensions, the comers of the map are converted into real-world latitude and longitude coordinates as previously carried out for 2D terrain map view mode. It will be understood that other real- world map projections could also be used, with their own coordinate systems through 3d projection operations. Finally, the expected pitch and rotation of the map is stored.

At step S2a, wind animation is started. All calculations occur as if the map is viewed top down. Thus, step S2a, involves the same steps as for the 2D terrain map view. That is, a canvas space (interpolation grid) is calculated, including loading, importing and converting the wind forecast data from real-world latitude longitude coordinates into a 2D grid which matches the canvas space. As for the 2D implementation, each particle: has a duration (fixed at a specified number of frames); origin location (i.e., random point on the grid); and evolution location associated.

At step S3a, the animation loop begins. The following steps are periodically repeated to show the wind and its evolution for each particle, stored in a bucket: a. Determine the age of the particle. b. Evolve i. Determine how the particle interacts with the wind grid/field. ii. How strong the wind is (colour), direction etc. c. Draw i. Draw the particle strokes etc. If the user moves their viewport around (determined by the event handler), the process returns to step S1a.

A summary of how the wind indicator draping effect (shown in Figures 7 and 8) is achieved will now be given. It is important to note that there is a relationship between the user’s viewport in 3D space, the canvas when represented in 3D canvas space, and the base map in 3D space. These relationships are calculated and managed dynamically by the PWA 14.

After the animation is started at step S2a, the canvas (which is now in effect an animated picture as per Figure 3 with length x width dimensions) is associated with (bound/attached to) the 3D map with the comers of the canvas/picture attached to the relevant latitude/longitude points, thereby causing the picture to be "draped" over the terrain.

More particularly, in 2D view mode, the comers of the canvas exactly match the comers of the viewport of the user. For example, the canvas might be attached at 0,0 (top left) 128,128 on screen (bottom right) which then corresponds to particular latitude/longitude points on the map (see Figure 3, points A-D). This renders the output in Fig 5.

In 3D, this process is similar. However, the physical location comers must incorporate the perspective of the user (i.e. , and not just the location they're viewing). In particular, the location comers must account for the rotation and tilt of the map (as determined in Step S1a) to correctly orient the wind overlay. Additionally, the corner calculations must account for terrain to ensure the comers are correctly placed and don't end up being distorted over a hill. These calculations are made by the PWA 14 when determining the mapping of canvas to current map view based on the viewport in order for the canvas to be accurately depicted draping over the terrain. By way of example, Figure 7 shows the user's perspective being approximately 45 degree pitch.

Further Detail of System Configuration According to the illustrated embodiment, the user computing devices 18 are Internet-enabled smartphones. The smartphones are equipped with the necessary hardware and software to communicate with the relevant services. The smartphone and relevant services communicate over a network which, in this case, is a mobile broadband network. Details of such devices (e.g., processor, memory, displays, data storage devices) are omitted for the sake of clarity.

The web servers 13 can be any form of suitable server computer that is capable of communicating with user computing devices 18 over the network 20. In an alternative embodiment, the computer platform may be implemented as a cloud-based application (i.e. in a secure web based cloud environment), using techniques which will be well understood by persons skilled in the art.

In an alternative embodiment to that described above, the application 14 can additionally or alternatively be implemented as a native mobile application installed on a personal user computer device (e.g., mobile phone, tablet, etc.), as will be well understood by persons skilled in the art.

The various aspects discussed herein may be implemented via any appropriate number and/or type of computer platform, modules, processors, memory, etc. each of which may be embodied in hardware, software, firmware, middleware and the like. Persons skilled in the art will appreciate that in accordance with known techniques, functionality at the server side of the network may be distributed over a plurality of different computers. For example, elements may be run as a single "engine" on one server, or a separate server may be provided.

While the invention has been described with reference to the present embodiment, it will be understood by those skilled in the art that alterations, changes and improvements may be made and equivalents may be substituted for the elements thereof and steps thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt the invention to a particular situation or material to the teachings of the invention without departing from the central scope thereof. Such alterations, changes, modifications and improvements, though not expressly described above, are nevertheless intended and implied to be within the scope and spirit of the invention. Therefore, it is intended that the invention not be limited to the particular embodiment described herein and will include all embodiments falling within the scope of the independent claims.

As indicated above, the method is implemented by way of an application comprising program code. The application/program code could be supplied in a number of ways, for example on a tangible computer readable storage medium, such as a disc or a memory device, e.g. an EEPROM, (for example, that could replace part of memory) or as a data signal (for example, by transmitting it from a server). Further, different parts of the program code can be executed by different devices, for example in a client server relationship. Persons skilled in the art, will appreciate that program code provides a series of instructions executable by the processor.

In the claims which follow and in the preceding description of the invention, except where the context requires otherwise due to express language or necessary implication, the word “comprise” or variations such as “comprises” or “comprising” is used in an inclusive sense, i.e. to specify the presence of the stated features but not to preclude the presence or addition of further features in various embodiments of the invention.