Airborne electronic map simulation implementation method
Through the combination of OpenGL library and Global Mapper software, the Qt development platform of Qt development platform, the problem of untimely update of electronic maps and inaccurate positioning in the flight simulator is solved, efficient loading and high-precision display are achieved, and pilot navigation and information acquisition efficiency is improved.
Patent Information
- Application Number
- CN202510288911.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-12
- Publication Date
- 2025-08-12
AI Technical Summary
The existing electronic maps have problems in the flight simulator with untimely data updates, inaccurate positioning, complex interfaces and poor connection with the visual system data, which affects the pilot's navigation and information acquisition.
The OpenGL library is used for map drawing, map data is obtained through PNG files, PGW files and TXT files, electronic maps are drawn using texture map functions, and road parameters and crop maps are set through Global Mapper software, and map display is combined with the Qt development platform to achieve high-precision position display and visual matching.
It realizes efficient loading and real-time update of electronic maps, reduces display errors, improves the matching degree with the visual image, and facilitates pilots to obtain information.
Smart Images

Figure CN120472099A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the fields of electronic map navigation simulation system in avionics system in the field of aerospace, geographic information system technology, digital mapping technology, etc., and specifically relates to a method for realizing airborne electronic map simulation by using an algorithm. Background Art
[0002] With the rapid development of computer technology, it is playing an increasingly important role in various fields. Nowadays, embedded systems are also widely used in military and aerospace fields, such as in some instrument equipment, weapon systems, and avionics systems to complete one or more required functions.
[0003] In the aerospace industry, helicopter flight simulators, as flight training equipment, play a vital role in training pilots in flight techniques. In helicopter flight simulator manufacturing, cockpit display systems have long been a key research and development focus for major aviation powers. The simulator's display system provides real-time, intuitive, accurate, and clear display of flight status, combat information, navigation information, and system status information, making it essential for pilots to fly the aircraft. The system's display primarily consists of a HUD (Heads-Up Display) and an MFD (Multi-Function Display). The navigation system, another crucial component of flight, is currently mostly embedded in the MFD. Within the navigation system, the electronic map is a crucial component, primarily displaying navigation-related information, including heading, latitude and longitude, route, drift angle, ground speed, track angle, wind speed and direction, true airspeed, current waypoint, distance off track, and distance to fly.
[0004] Compared to traditional maps, electronic maps offer the advantage of convenient scale changes. By zooming in and out of the displayed content, users can "roam" around the map. Digitalization makes electronic maps more intuitive, interactive, and accessible, dynamically providing users with intuitive symbolic information.
[0005] In the development of electronic map systems, the following problems may exist: electronic map data must be able to be updated to maintain its accuracy; the navigation and positioning systems on the electronic map must be accurate to facilitate pilots to identify their own position and target location; the electronic map interface should be simple and clear to facilitate pilots to obtain the required information; the data between the electronic map and other flight simulator components (such as the visual system) should be able to be seamlessly connected. Summary of the Invention
[0006] The purpose of the present invention is to provide an airborne electronic map simulation implementation method to realize the airborne electronic map function, with a small display error range of the flight latitude and longitude and the current position on the map, a high degree of matching with the visual picture, and easy to promote and apply.
[0007] The technical solutions for achieving the purpose of the present invention are:
[0008] A method for realizing airborne electronic map simulation, comprising:
[0009] Step 1: Determine the required electronic map range and map accuracy to obtain the required map images at each level;
[0010] Step 2: Create an electronic map and perform art processing on the obtained map image;
[0011] Step 3: After reading the relevant data required for electronic map mapping through the related PNG files, PGW files, and TXT files of place names and water system names of the exported map images, use the OpenGL library and the texture mapping function to draw the map, and draw the place names on the screen by reading the place name files.
[0012] 2. The method for implementing airborne electronic map simulation according to claim 1 is characterized in that, during the art processing process, the electronic map is first imported into Global Mapper software, and then various road vector files downloaded are imported to set various road-related parameters, including line thickness and color settings for railways, national highways, provincial highways, county roads, and rural roads; finally, the electronic map of the specified area is cropped and output, and the relevant PNG files and PGW files of the map image are exported, and the number of cropped rows and columns must be consistent.
[0013] Compared with the prior art, the present invention has the following significant advantages:
[0014] The output can be scaled to any scale, making it easy to store, update, and transmit. This allows pilots to easily access information such as the aircraft's location, navigation, and route. The error range of the flight's longitude and latitude, along with the current position, is small, and the map matches the visual image closely. Simulation results demonstrate that the map loads quickly and the data is highly real-time. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 It is a flow chart of the method of the present invention.
[0016] Figure 2 It is the various tag name files in the specified area of the download;
[0017] (a) place names, (b) water system names;
[0018] Figure 3 Import the downloaded electronic map into Global Mapper software;
[0019] Figure 4 Set various road-related parameters according to requirements:
[0020] (a) Railway establishment, (b) National highway establishment, (c) Provincial highway, county highway, and township highway establishment;
[0021] Figure 5 It is to crop and output the electronic map of the specified area;
[0022] (a) Select the output range (b) Set the relevant parameters;
[0023] Figure 6 This is an example of an implemented airborne electronic map. DETAILED DESCRIPTION
[0024] The present invention will be further described below with reference to the accompanying drawings and specific embodiments.
[0025] Combine Figure 1 The present invention provides an airborne electronic map simulation implementation method, based on the Ubuntu platform, C / C++ language, and the OpenGL library to implement the airborne electronic map simulation implementation method, the steps are as follows:
[0026] The first step is to determine the electronic map range, scale and zoom level to obtain the map images at the required zoom levels;
[0027] This method is aimed at the simulation implementation of the electronic map of a certain type of helicopter flight simulator. During flight training, the training scenes can be switched, so only the map of the corresponding scene needs to be loaded, which can reduce the machine load and improve the speed of electronic map loading and response. Based on the simulator training scenario requirements, the display range (e.g., a square area of 800x800 km) and the accuracy (meters per pixel) of the electronic map to be produced are determined. This method targets flight simulator electronic maps at scales of 1:50,000 and 1:1,000,000. The 1:50,000 scale has eight zoom levels: 2.37, 4.74, 9.48, 14.22, 18.96, 23.70, 28.44, and 42.65 (e.g., 2.37 indicates a pixel corresponds to an actual distance of 2.37 meters). The 1:1,000,000 scale has eight zoom levels: 7.11, 14.22, 28.44, 71.09, 142.18, 284.36, 426.54, and 568.72. The map uses the Mercator projection and the WGS84 datum.
[0028] The second step is to perform a series of artistic processing on the obtained map image. The downloaded electronic map is imported into the Global Mapper software, and then the downloaded various road vector files are imported to set the relevant parameters of various roads. Finally, the electronic map of the specified area is cropped and the relevant PNG files and PGW files of the map image are exported.
[0029] Use professional software (Shuijingzhu Micromap) to set relevant parameters, download the required maps of different levels and map-related element labels (including provincial capital names, prefecture-level city names, county names, township names, village names, and water system names, saved in TXT file format), and then Figure 2 (a) Figure 2 (b) Perform art processing on the obtained map, select the map of the corresponding level, and import it into the Global Mapper software, such as Figure 3 As shown; then add relevant road networks and building groups; then set various road related parameters, such as Figure 4 As shown in the figure, the line thickness and color settings of (a) railway, (b) national highway, (c) provincial highway, county highway and township highway are included; finally, the output range is selected according to the display accuracy and road classification requirements (i.e., the road categories are displayed at each level), as shown in the figure. Figure 5 (a), set the relevant parameters for output, such as Figure 5 (b) is shown. After cutting it into 1024x1024 (px) units (if the original map edges do not meet 1024x1024 (px) after cutting, fill in the background color), export the relevant PNG files and PGW files of the map image, and the number of cropped rows and columns must be consistent.
[0030] The third step is to obtain the data required for drawing the electronic map through the relevant PNG files, PGW files, and TXT files of place names and water system names of the exported map images. Among them, all the map units cut out of the map at the current zoom level can be obtained through the PNG file, and the information of each map unit can be obtained through the PGW file, including the zoom level of the map unit, that is, the distance represented by each pixel (unit: meter), the longitude of the upper left corner of the map unit, and the latitude of the upper left corner of the map unit. All the place names and water system name information contained in the map at the zoom level can be obtained through the TXT file. After reading the relevant data required for drawing the electronic map above, the display and drawing of the digital map is realized through code.
[0031] Qt is selected as the development platform. The development program uses QFile, QTextStream and other classes to operate on files. By obtaining the number of PNG files or PGW files (the number is a square number), the square root can be used to obtain the number of rows and columns N. The data required for electronic map mapping can be read through the PGW file, including: the number of meters per pixel in the current range (Range), the latitude (Lat) of the upper left corner of each map image, and the longitude (Lon) of the upper left corner of each map image.
[0032] After obtaining the map image and the required related data, the digital map is drawn. In this method, the OpenGL library is used to draw the map using its texture mapping function.
[0033] Find the corresponding map image based on the latitude and longitude of the current aircraft's location, where lat0 is the current aircraft's latitude, lon0 is the current aircraft's longitude, Lat(0) is the latitude of the top left corner of the first map image in the top left corner, and Lon(0) is the longitude of the top left corner of the first map image in the top left corner. The following calculation shows that in a map cropped to N rows and N columns, the map image corresponding to the current aircraft's location is in row i and column j:
[0034] i=(Lat(0)–lat0) / (1024*Range);
[0035] j=(lon0–Lon(0)) / (1024*Range);
[0036] Then calculate the aircraft's offset relative to the upper left corner of the map. △X and △Y are the offsets in the X direction (horizontally) and Y direction (vertically), respectively. Lat(j) is the latitude of the upper left corner of the map image at row i and column j, and Lon(i) is the longitude of the upper left corner of the map image at row i and column j:
[0037] △X=(Lat(j)–lat0) / Range;
[0038] △Y=(lon0–Lon(i)) / Range;
[0039] Texture mapping is then performed using the OpenGL library. Nine textures are loaded at once in a nine-square grid format. The image edges are processed, and the glTexParameteri() and glBlendFunc() functions are used to eliminate dotted lines created by stitching the images together. By reducing the number of map images loaded, device load is effectively reduced, improving operational efficiency. Loading nine images also ensures that the map remains intact when repositioning.
[0040] Define the data MapS as the saved map superscripts, representing the current map's position in the nine-square grid. For the map image corresponding to the current aircraft's position calculated above, i.e., row i, column j, the MapS value is 4. The superscripts are defined as follows: 0, 1, 2 from left to right for the first row; 3, 4, 5 from left to right for the second row; and 6, 7, 8 from left to right for the third row. By determining the map image with the central superscript of 4, we can identify the other eight map images. The corresponding map image's position information in the PNG file is stored in an array, using the superscript as the marker. This information is then used to perform the texture mapping operation on the nine map images.
[0041] Finally, by reading the place name TXT file, the list class QList is used to store the place name data, including: place name, latitude and longitude coordinates. According to the coordinates, the calculation method is the same as above, calculating the offset of the place name coordinate relative to the upper left corner of the middle picture (that is, the picture with the subscript 4), and subtracting it from the offset of the screen center point relative to the upper left corner of the middle picture, the position of the place name's longitude and latitude coordinates corresponding to the pixel point on the screen can be obtained, and then the fontlib library function is used to draw the place name on the screen. Figure 6 shown.
Claims
1. A method for simulating an airborne electronic map, characterized in that: include: Step 1: Determine the required electronic map range and map accuracy to obtain the required map images at each level; Step 2: Create an electronic map and perform art processing on the obtained map image; Step 3: After reading the relevant data required for electronic map mapping through the related PNG files, PGW files, and TXT files of place names and water system names of the exported map images, use the OpenGL library and the texture mapping function to draw the map, and draw the place names on the screen by reading the place name files.
2. The method for realizing airborne electronic map simulation according to claim 1, characterized in that: During the art processing, first import the electronic map into Global Mapper software, then import the downloaded road vector files to set the relevant parameters of various roads, including the line thickness and color settings of railways, national highways, provincial highways, county roads, and rural roads; finally, crop the electronic map of the specified area and export the relevant PNG files and PGW files of the map image, and the number of cropped rows and columns must be consistent.
3. The method for realizing airborne electronic map simulation according to claim 2, characterized in that: The electronic map is cropped into a 1024x1024 size image.
4. The method for realizing airborne electronic map simulation according to claim 1, characterized in that: Step 3 specifically includes: The parameters of the PGW file include: the distance represented by each pixel, the longitude of the upper left corner of the map image corresponding to the PGW file, and the latitude of the upper left corner of the map image corresponding to the PGW file; Use the OpenGL library and its texture mapping function to draw the map: find the corresponding map texture according to the latitude and longitude of the current aircraft's location, calculate the current aircraft's location, and then calculate the aircraft's offset relative to the upper left corner of the map. Then use the OpenGL library function to perform texture mapping. Read the place name file, save the place name in a variable, use the fontlib library function to read it in a loop and draw it on the screen.
5. The method for realizing airborne electronic map simulation according to claim 4, characterized in that: Through the following calculation, we can get the map image position corresponding to the current aircraft position in the map cropped into N rows and N columns, which is in row i and column j: i=(Lat(0)–lat0) / (1024*Range); j=(lon0–Lon(0)) / (1024*Range); Where lat0 is the latitude of the current aircraft, lon0 is the longitude of the current aircraft, Lat(0) is the latitude of the upper left corner of the first map image in the upper left corner, Lon(0) is the longitude of the upper left corner of the first map image in the upper left corner, and Range is the number of meters per pixel in the current range in the PGW file. Calculate the aircraft's offset relative to the upper left corner of this image: △X=(Lat(j)–lat0) / Range; △Y=(lon0–Lon(i)) / Range; Where △X and △Y are the offsets in the X and Y directions respectively, Lat(j) is the latitude of the upper left corner of the map image located in the i-th row and j-th column, and Lon(i) is the longitude of the upper left corner of the map image located in the i-th row and j-th column:.
6. The method for realizing airborne electronic map simulation according to claim 4, characterized in that: When mapping, use a nine-grid style, load nine textures at a time, and process the edges of the images to eliminate the dotted lines produced by splicing.