masking an imagery or basemap layer doesn't appear to work

6695
11
Jump to solution
04-21-2017 05:01 AM
by Anonymous User
Not applicable

In ArcGIS Pro, there is the ability to mask layers using another polygon layer. I have tested that this can work using the steps outlined here:

http://pro.arcgis.com/en/pro-app/help/mapping/layer-properties/use-a-masking-layer.htm

I add two polygon layers, select the lower one in the draw order, go to the 'Appearance' tab, click on Masking, and tick the polygon layer above it. I click off this panel to activate, and the top layer masks out portions of the lower layer as expected.

However, if I then try it with an imagery or basemap layer, it doesn't work. I place the imagery layer at the bottom of the draw order, select it, go to the 'Appearance' tab, the 'Masking' option is there and it allows me to do exactly the same as above, but after ticking a polygon layer and clicking off it, nothing happens. The imagery layer is not masked at all.

Which leads on to a second follow-up question: my use case here was to try and clip/mask an imagery layer using a polygon layer. I actually want to do the reverse of the default here - I want to 'clip' the imagery, i.e. 'mask' everything that is *not* inside a polygon. I could achieve this by creating a 'doughnut' polygon where the masked portion is bigger than my layout, but that seems a little crude. Can anyone suggest another way?

Note that actually clipping (editing) the source image file is not an option.

Cheers,

-Paul

11 Replies
by Anonymous User
Not applicable

Hi Kory

Thanks for the reply. Your suggestion is similar to Jakes, and yes, strictly speaking it does achieve the final result, but my comments in the reply to Jake still apply. It can't be used for all imagery layers and is a static function that creates a result. Whereas a true masking function means that if I draw a masking polygon, then decide I want to reposition the imagery layer underneath the mask 50m to the left I can just do so. As opposed to deleting the 'clipped result' and re-running it.

So yes, we can achieve what we need. But we have also lodged it with ESRI as a combination bug and enhancement request to see if this functionality can be brought to the actual masking function.

mrmark
by
Occasional Contributor

Just wanted to add my support to Paul's original question - even when it works, it doesn't work as expected. In general use, when you talk about masking something off, you are generally masking the part you don't want to mess with. If your painter worked like this tool, your walls would be naked sheetrock and your windows would be painted over.

Based on tools such as Extract by Mask, or the Mask (Environment setting), when dealing with raster data Esri generally uses the term Mask the same way. Essentially it working essentially like Clip, keeping the area in the mask so you can work on it without disturbing the other parts. Unfortunately, selecting a feature layer of my study area as the Mask in the Appearance pane works like Erase -- the opposite of what I want to do.

As people have mentioned, I could run Extract by Mask to get a new layer. That's fine if I have a static, well defined study area. Say I want to mask out everything except one or two HUCs (hydrologic units), but then add some more. Or have study sites that are not adjacent. Not impossible, but not as easy as just setting a layer as a Mask that I can change using definition queries and having the image mask update as I do. 

Assuming I want to go the other route then, to do a definition query of everything EXCEPT my HUC(s) of interest. It works at large scales, but I'm dealing with a global elevation set. So - in addition to having the inversely queried HUC layer as a mask, I'd need to have a mask for all the rest of the world as well. 

The fact that it doesn't actually do ANYTHING about half the time just makes it that much more aggravating.

 

A man's feet should be planted in his country, but his eyes should survey the world. - G. Santayana
0 Kudos