Geographic map/game map and openGL

- Question:

OpenGL draws three-dimensional topographic maps and geographic maps;
design and implementation of a map rendering engine based on OpenGL;
OpenGL makes game
minimaps ; OpenGL renders two-dimensional satellite maps into three-dimensional topographic maps;
Opengl draws maps, and OpenGL implements a map editor for easy production map;

OpenGL renders geographic routes, buildings, etc. Coordinates or latitude and longitude data of route buildings, etc.?

> Maps and Opengl

  Use opengles to draw gray-scale topographic maps-https:
  //blog.csdn.net/hb707934728/article/details/52766057 Use opengles to draw gray-scale topographic maps. Principle: The basic principle of gray-scale topographic map generation technology is to use MxN grid representation Terrain, while providing a grayscale image of the corresponding size, determine the altitude of the vertex in the grid according to the grayscale of each pixel in the grayscale image, and the black pixel (the value of each RGB color channel is 0) represents the lowest altitude position , The white pixel (the value of each color channel in RGB is 255) represents the position with the highest altitude. In actual development, the following formula is used to calculate the altitude of a pixel vertex: actual altitude = lowest altitude + maximum altitude difference x pixel value/255.0

  Computer Graphics (1) Map Drawing-https://blog.csdn.net/ME__WE/article/details/84675155
In the ground information system, map data can be divided into two categories, one is vector data, which is based on The three primitive forms of point, line and polygon represent the graphic data of the map. For example, administrative regions and lakes can be represented by polygons, and rivers and roads can be represented by polylines. The other is called raster data, which is image data expressed in dot matrix form. Using the knowledge of computer graphics and programming technology, it is not difficult to plot these two kinds of data.

  OpenGL makes small maps for games. We are looking for treasures in the virgin forest. There is no map and no GPS. Then there should be only one result: not only the target location cannot be found, but also it is easy to get lost. Similarly, when roaming in a scene drawn by OpenGL, you can often only see a partial scene, and you cannot determine where you are in the larger scene. Therefore, a GPS with positioning function is very necessary.

  3D reconstruction of vector map based on OpenStreetMap and OpenGL-https
://blog.csdn.net/z136411501/article/details/83051592 to obtain the high-definition map basemap, open source map: openstreet- https://www.openstreetmap.org
  will 2D The map data was reconstructed in 3D, similar to the three-dimensional maps of Baidu Maps and Google Maps. The map data comes from OpenStreetMap, which is an open source map website that can export very accurate map data in XML file format, and then use OpenGL under Qt to perform 3D reconstruction based on these data.

  Map engine: Android's Google Map API is based on OpenGL ES. Map data and rendering?
Design and implementation of map rendering engine based on opengl -http://www.docin.com/p-1654111677.html

Real-time drawing method of electronic map based on OpenGL and Google
 MapsResearch on the underlying framework of the map: support WTMS, WMS, WFS, WCS drawing format, support GEOJson, WKT graphics presentation, and OpenGL operation?

  OpenGL implementation of Google map tile drawing roaming video tutorial-https
://edu.csdn.net/course/detail/3420?utm_source=edu_bbs_autocreate OpenGL drawing picture, FreeImage loading picture, Mercator projection, tile pyramid model, FramebufferObject, map movement and zoom optimization, use screen tile rendering optimization, use ImageBuffer optimization, use multi-thread optimization, map operation optimization, simulation, generate global tiles (debug), draw maps in MFC-dialog, MFC-View Draw maps in QT, draw maps in QT, browse Google maps online, etc.

  The idea of ​​OpenGL drawing vector path-https://blog.csdn.net/ryfdizuo/article/details/9719295
Now the routes in each mobile phone map are drawn with three-dimensional texture, to achieve three-dimensional path rendering, the difficulty of modeling algorithm is at the corner Handling, especially acute angle, how to deal with when the angle is small. After a period of research, I realized a simple and sufficient Lupin algorithm. The idea is very simple: interpolation is performed when an acute angle is used (using cubic spline interpolation), and the acute angle is converted into an obtuse angle.
Google Map Draw- https//map-render.googlecode.com/svn/trunk/map-render

  Software method drawing, such as QT, Android (skia) have their own 2D drawing engine, support vector path filling and anti-aliasing! If you use OpenGL to draw vectors, there are requirements for modeling algorithms and textures. Different modeling algorithms determine the final visual effect. OpenGL draws the path, and the anti-aliasing effect is realized by the texture.

> GIS, road drawing in the map-https://blog.csdn.net/ryfdizuo/article/details/39891231
GIS belongs to the field of visualization. A so-called visualization technology is the use of computer graphics and graphics processing technology to convert data into graphics or images displayed on the screen, and interactive processing theory, method and technology. There are also several key points in personal understanding of maps: the
 original data can be images or vector data. For example, our base map is vector data such as points, lines, and surfaces, while satellite images and street views are image data.
 Rendering is displayed on the screen, and now all mobile phones are based on OpenGL, regardless of whether graphics or images are finally displayed on the screen, they must be pixelated (rasterized).
 Interactivity The most important part of Map APP is interaction, which is a huge demand hidden behind it.

Most of the data in GIS is mainly two-dimensional, and the drawing of surface data is the simplest. When the labeled point data is preprocessed, it will not block each other when it is drawn with overlap avoidance. Only the lines have occlusion and hierarchical relationships.
 Express the relationship between road interchange and level crossing; ZLevel interchange data.

  The source of map base map data and how to add it, ArcGIS, QGIS plug-in ArcGIS
  clear map, base map, road and street view map; when data visualization, a high-definition base map is very important, there is an online map plug-in "SIMPLEGIS" Very easy to use, the plug-in is only suitable for ARCGIS 10.2 and below (WIN10 system can also be used) Download link: http://www.rscloudmart.com/application/120173.htm
User manual: link: https:// pan.baidu.com/s/1NrdqP2eommUvNX2Z0Jfb3Q, extraction code: mw1o

> Baidu map integration and customization
Baidu map basemap editing tool-http://lbsyun.baidu.com/

Android Baidu Map Integration and Customization-https:
//www.jianshu.com/p/75562c425bef Android BaiduMapDemo- https://github.com/dongaqa/AndroidBaiduMapDemo
  map overlay. Such as labels, vector graphic elements (including: polylines, polygons, circles, etc.), positioning icons, etc. The overlays have their own geographic coordinates, and when you drag or zoom the map, they will move accordingly.
The map overlays will be sorted into different layers, and each layer has a sequence, which will cover the following layers.
 Custom View (MapView.addView(View););
 pop-up window layer (InfoWindow);
 positioning layer (BaiduMap.setMyLocationEnabled(true););
 compass layer (when the map rotates and the perspective changes, it appears in Compass in the upper left corner);
 Marker layer, Text drawing layer;
 Geometry layer (points, polylines, arcs, circles, polygons);
 bottom icon annotation (refers to the base map comes with Those POI elements);
 Baidu city heat map (BaiduMap.setBaiduHeatMapEnabled(true););
 real-time traffic map layer (BaiduMap.setTrafficEnabled(true););
 heat map layer (HeatMap);
 topographic map layer (GroundOverlay) ;
 Tile layer (TileOverlay);
 basic base map (including base map, base map road, satellite image, indoor image, etc.);

- Need to know more:  
  How is the model in the 3d map realized? Non-fine 3D modeling that does not require textures is generated well when there is basemap data (this should be available) and some attribute data (height, etc.). OpenLayers+Google Map API+OSM Buildings
  Baidu’s 3D is basically determined to be webGL, WebGL is used for front-end drawing, now Baidu uses vector tiles, webgL is combined with html5 canvas to draw maps, webGL inherits from openGL, but openGL It is used for game development. To put it bluntly, it is a lightweight and simplified version. Regarding the production of 3D graphics, the fine production must be hand-painted, just like drawing. Large-scale drawing like Baidu requires the elevation and top shape of the building. Yes, take a look at the digital surface model.
  Using GPS to determine the location and current time, the
  baidu model of building height calculated by the shadow length is different from that of Google. A closer look will reveal that there are many similar or even repeated components, and most of the textures are not in proportion. Such a model is not so much built, it is really "painted". The whole process should be a lot of manual labor with the aid of procedures.

Guess you like

Origin blog.csdn.net/ShareUs/article/details/94138443
map
map
Map
Map
Recommended