<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Mask other Features in data driven page in Mapping Questions</title>
    <link>https://community.esri.com/t5/mapping-questions/mask-other-features-in-data-driven-page/m-p/519068#M5563</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Using Python;&lt;/P&gt;&lt;P&gt;I was trying to mask adjacent features, or features in extent, so that PDF I was creating showed only the Feature of the Page Name.&amp;nbsp; I couldn't use the usual Mask method because I had a Raster Layer (shaded relief) on the bottom.&amp;nbsp; Usual method puts the adjacent features in the background color that would cover the raster layer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is how I solved the problem.&amp;nbsp; &lt;/P&gt;&lt;P&gt;Background.&amp;nbsp; The feature layer source for the data driven pages has definition query on the outset.&amp;nbsp; Another identical layer with different seme-transparent symbology was used to show the adjacent features, if any.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In code a made a list of all the features that were to be used in the Data pages.&lt;/P&gt;&lt;P&gt;# Getting List of Features&amp;nbsp; that are driving the pages after setting the MXD&lt;/P&gt;&lt;P&gt;wherecl = r"Field1 = 0 AND Field2 = 1" #My data had a def query already&lt;/P&gt;&lt;P&gt;flds = []&lt;/P&gt;&lt;P&gt;lyrs = arcpy.mapping.ListLayers(mxd,"&amp;lt;Your Layer Name&amp;gt;") will find 2 layers.&amp;nbsp; 1st data driven layer and "adjacent" layer&lt;/P&gt;&lt;P&gt;for lyr in lyrs:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flay = arcpy.MakeFeatureLayer_management(lyr)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sc = arcpy.SearchCursor(flay,wherecl)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in sc:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flds.append(row.getValue("&amp;lt;Your Field name driving pages&amp;gt;")) # Name is the field used to create the data driven page&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flds.sort() #sorts list so will print maps in same order as data pages&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then use this list the alter the def query (or create one if your layer doesn't already have on) of you primary and adjacent layer.&lt;/P&gt;&lt;P&gt;# Reset Data Driven Pages to Single Page of Unit from list above (flds)&lt;/P&gt;&lt;P&gt;unitcount = 0&lt;/P&gt;&lt;P&gt;for unit in flds:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; defq = r"Field1 = 0 AND Field2 = 1 and NAME = '" + unit + "'"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyrs = arcpy.mapping.ListLayers(mxd)&lt;/P&gt;&lt;P&gt;#Alter&amp;nbsp; def query of your 2 layers; I find it by searching for the query&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in lyrs:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports("DEFINITIONQUERY") and 'Field1 = 0' in lyr.definitionQuery:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyr.definitionQuery = defq&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd.dataDrivenPages.refresh()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.RefreshActiveView()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.RefreshTOC()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd.save()&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;##Now you have a Data Driven Page with only 1 page&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #### Create the PDF&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.ExportToPDF(mxd, pdfpath + unit + ".pdf", resolution=300)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;## Reset the Data Driven Page to all pages to return MXD to original state&lt;/P&gt;&lt;P&gt;defq = wherecl&lt;/P&gt;&lt;P&gt;lyrs = arcpy.mapping.ListLayers(mxd)&lt;/P&gt;&lt;P&gt;for lyr in lyrs:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports("DEFINITIONQUERY") and 'Field 1 = 0' in lyr.definitionQuery:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyr.definitionQuery = defq&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd.dataDrivenPages.refresh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;arcpy.RefreshActiveView()&lt;/P&gt;&lt;P&gt;arcpy.RefreshTOC()&lt;/P&gt;&lt;P&gt;mxd.save()&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 05 Feb 2016 18:16:00 GMT</pubDate>
    <dc:creator>CarlosFortich</dc:creator>
    <dc:date>2016-02-05T18:16:00Z</dc:date>
    <item>
      <title>Mask other Features in data driven page</title>
      <link>https://community.esri.com/t5/mapping-questions/mask-other-features-in-data-driven-page/m-p/519068#M5563</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Using Python;&lt;/P&gt;&lt;P&gt;I was trying to mask adjacent features, or features in extent, so that PDF I was creating showed only the Feature of the Page Name.&amp;nbsp; I couldn't use the usual Mask method because I had a Raster Layer (shaded relief) on the bottom.&amp;nbsp; Usual method puts the adjacent features in the background color that would cover the raster layer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is how I solved the problem.&amp;nbsp; &lt;/P&gt;&lt;P&gt;Background.&amp;nbsp; The feature layer source for the data driven pages has definition query on the outset.&amp;nbsp; Another identical layer with different seme-transparent symbology was used to show the adjacent features, if any.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In code a made a list of all the features that were to be used in the Data pages.&lt;/P&gt;&lt;P&gt;# Getting List of Features&amp;nbsp; that are driving the pages after setting the MXD&lt;/P&gt;&lt;P&gt;wherecl = r"Field1 = 0 AND Field2 = 1" #My data had a def query already&lt;/P&gt;&lt;P&gt;flds = []&lt;/P&gt;&lt;P&gt;lyrs = arcpy.mapping.ListLayers(mxd,"&amp;lt;Your Layer Name&amp;gt;") will find 2 layers.&amp;nbsp; 1st data driven layer and "adjacent" layer&lt;/P&gt;&lt;P&gt;for lyr in lyrs:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; flay = arcpy.MakeFeatureLayer_management(lyr)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sc = arcpy.SearchCursor(flay,wherecl)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in sc:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flds.append(row.getValue("&amp;lt;Your Field name driving pages&amp;gt;")) # Name is the field used to create the data driven page&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flds.sort() #sorts list so will print maps in same order as data pages&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then use this list the alter the def query (or create one if your layer doesn't already have on) of you primary and adjacent layer.&lt;/P&gt;&lt;P&gt;# Reset Data Driven Pages to Single Page of Unit from list above (flds)&lt;/P&gt;&lt;P&gt;unitcount = 0&lt;/P&gt;&lt;P&gt;for unit in flds:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; defq = r"Field1 = 0 AND Field2 = 1 and NAME = '" + unit + "'"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyrs = arcpy.mapping.ListLayers(mxd)&lt;/P&gt;&lt;P&gt;#Alter&amp;nbsp; def query of your 2 layers; I find it by searching for the query&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for lyr in lyrs:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports("DEFINITIONQUERY") and 'Field1 = 0' in lyr.definitionQuery:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyr.definitionQuery = defq&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd.dataDrivenPages.refresh()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.RefreshActiveView()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.RefreshTOC()&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd.save()&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;##Now you have a Data Driven Page with only 1 page&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; #### Create the PDF&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.ExportToPDF(mxd, pdfpath + unit + ".pdf", resolution=300)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;## Reset the Data Driven Page to all pages to return MXD to original state&lt;/P&gt;&lt;P&gt;defq = wherecl&lt;/P&gt;&lt;P&gt;lyrs = arcpy.mapping.ListLayers(mxd)&lt;/P&gt;&lt;P&gt;for lyr in lyrs:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if lyr.supports("DEFINITIONQUERY") and 'Field 1 = 0' in lyr.definitionQuery:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyr.definitionQuery = defq&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mxd.dataDrivenPages.refresh&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;arcpy.RefreshActiveView()&lt;/P&gt;&lt;P&gt;arcpy.RefreshTOC()&lt;/P&gt;&lt;P&gt;mxd.save()&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Feb 2016 18:16:00 GMT</pubDate>
      <guid>https://community.esri.com/t5/mapping-questions/mask-other-features-in-data-driven-page/m-p/519068#M5563</guid>
      <dc:creator>CarlosFortich</dc:creator>
      <dc:date>2016-02-05T18:16:00Z</dc:date>
    </item>
  </channel>
</rss>

