ThinkGeo.com    |     Documentation    |     Premium Support

Background image, shape files, and image overlay, all aligned

I’ve been asked about feasibility for combining an additional overlay image. Our current map has an aerial/satellite background image (using world file for alignment) with a host of shape files overlain and which works well at the moment. The new task includes taking additional 3rd party generated images and producing a well aligned overlay above the shape file data. This third party data will be in a simple image format (possible transparent PNG using alpha-blended layer), so I can’t use something like a heat map, though it will look a bit like that. Or imagine something like a weather activity radar overlay, but where the user would be able to easily recognize when even slight misalignment occurs.

Also, the overlay as provided may (will likely) represent only a small portion of the background image, so it won’t have the same boundaries (or resolution) as the background, but we will have the high resolution lat/lon boundary descriptions. One possible answer might be to generate a composite image with the same boundaries as the background, but hopefully that can be avoided.

From my searching and investigation I couldn’t find a clear approach to provide this using your library. .

Hi Russ,

Thanks for to let us know your requirement.

If the new layer is an image, you can render it by our GdiPlusRasterLayer, but it will cover the target extent above your background layer.

I am not sure whether the transparent can works for your image, but I think you can have a try when you get the data.

And I don’t think you need to extend the area of the new layer to totally cover the background image, because I thought the extended parts are blank data.

Wish that’s helpful, and I think you can ask us for detail again after you have a quickly try for the new data.

Regards,

Don

Extending/composing the image was just something that occurred to me as a possible path. But yes, we will have data to display only for select portions of the map, the rest will be “blank”…

We may have a number of separate areas which form a sort of sparse patch work over the rest of the map. So on a full screen map, there might be several 1" sized overlay scattered around. And like a weather radar overlay, we want to have all of them positioned over the background layers accurately/correctly, and to be able to see the other layers through the overlay. And I wasn’t sure from reading whether your component will support that or not.

So the important goals are:

  1. It absolutely must be accurately positioned over the background image or the customer will readily recognize the problem and be very unhappy. This may be a particular issue for us since the overlay images will be located by high res lat/lon, and we previously have not really cared about accurate geo-spatial location because everything is relative to that background image and/or associated shape files, so we may have to address that (at least make sure it’s right) before we even have a chance to start…

  2. The overlay must be semi-transparent so we can easily see the background aerial image, shape file layers, and in-memory layers through the overlay.
    2.a) I don’t think it would be a problem, but we will need to ignore the overlay for all interactions, effectively clicking through to interact with the layers below. But we already do that in some areas, so I don’t expect that to be a problem, though I could be wrong.

So, assuming we can deal with the relative location accuracy on existing layers, will your component be able to provide this function?

Hi Russ,

  1. Whether the new can be accurately positioned over the background image is decided by the parameter of your data. Because the image is not a shape file, a shape file contains coordinate and projection information itself, but your image don’t contains them. You have to make sure the coordinates and projection is correct for each of your image, so that can be works just well with your background layer. And if the requirement is high accuracy, I think you should want to let the source image get the same projection with background overlay, because if it get reprojection by our library, maybe we will met some small offset for some special shapes.

  2. I build a png file and tested that today. The transparent is related with your data, if your png image have a transparent background, it will keep the status in our map.

2.a We draw your image in the layer like GdiPlusRasterLayer, so it will accept all the event from mouse and keyboard, and because it need always follow the background overlay to pan or zoom, so I am not sure about what’s the mean about “ignore the overlay for all interactions”, because for other event, if you don’t write custom function to handle it, it won’t do anything. Just the pan and zoom need be handled by default.

Regards,

Don