Does anyone know of a way that I could take a large set of cartographic positions, and convert that to some kind of image or shape that would load easier/faster within Cesium. Right now I generate data sets that could be upward of 100k points (really high fidelity data) and memory consumption of causing stuff to crash. I'm wondering if there would be an easy way to take those positions and generate a .png/.jpeg or something else that would be easier to load and would be better as far as memory consumption. Generating an image would also create the issue of making sure when you place it on the globe that it was scaled accordingly.
Any thoughts/ideas on how something like that might be handled?
An image is an option, take a look at the Cesium.SingleTileImageryProvider.
Any idea on how I could generate the image from the points though?
And ensure that it as the appropriate scale?
Do all these cartographic positions lie on the same height? If so, it sounds like you might be able do this easily with Python, by just creating black where there are points defined and white otherwise. Pillow is a good library:
If the cartographic positions are not all on the same height, it sounds like you want to create some kind of height map, where each pixel has a color/grayscale value correspond to the height. You could again generate that with Python. If the scale is really big, it might be better to tile it up as if it were imagery that you can serve (ion can tile up imagery this way). Otherwise, you’d just need to separately store the min/max lat/long to figure out where to place it and scale it.
Do you have an image of how these points/generated images should look like when rendered? I’m curious if this point to image pipeline would look good. It would certainly render much faster.
Do these points represent some kind of point cloud, like this?
gdal_rasterize could help if you store the data in a standard GIS format like Esri Shapefile. That same Shapefile could be supplied by GeoServer and made available to Cesium via a Web Map Tile Service (WMTS).