Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import arcpy
- class Toolbox(object):
- def __init__(self):
- """Define the toolbox (the name of the toolbox is the name of the
- .pyt file)."""
- self.label = "Toolbox"
- self.alias = ""
- # List of tool classes associated with this toolbox
- self.tools = [Slide1,Slide2]
- class Slide1(object):
- def __init__(self):
- """Define the tool (tool name is the name of the class)."""
- self.label = "Chile"
- self.description = ""
- self.canRunInBackground = False
- def getParameterInfo(self):
- """Define parameter definitions"""
- params = None
- return params
- def isLicensed(self):
- """Set whether tool is licensed to execute."""
- return True
- def updateParameters(self, parameters):
- """Modify the values and properties of parameters before internal
- validation is performed. This method is called whenever a parameter
- has been changed."""
- return
- def updateMessages(self, parameters):
- """Modify the messages created by internal validation for each tool
- parameter. This method is called after internal validation."""
- return
- def execute(self, parameters, messages):
- """The source code of the tool."""
- aprx = arcpy.mp.ArcGISProject("CURRENT")
- mapx = aprx.listMaps()[0]
- lyt = aprx.listLayouts()[0]
- lyr = mapx.listLayers("ne_10m_admin_0_countries")[0]
- lyr.definitionQuery = '"ADMIN" = ' + "'Chile'"
- mFrame = lyt.listElements("MAPFRAME_ELEMENT")[0]
- mFrame.camera.setExtent(mFrame.getLayerExtent(lyr, False, True))
- lyr.definitionQuery = ""
- return
- class Slide2(object):
- def __init__(self):
- """Define the tool (tool name is the name of the class)."""
- self.label = "Switzerland"
- self.description = ""
- self.canRunInBackground = False
- def getParameterInfo(self):
- """Define parameter definitions"""
- params = None
- return params
- def isLicensed(self):
- """Set whether tool is licensed to execute."""
- return True
- def updateParameters(self, parameters):
- """Modify the values and properties of parameters before internal
- validation is performed. This method is called whenever a parameter
- has been changed."""
- return
- def updateMessages(self, parameters):
- """Modify the messages created by internal validation for each tool
- parameter. This method is called after internal validation."""
- return
- def execute(self, parameters, messages):
- """The source code of the tool."""
- aprx = arcpy.mp.ArcGISProject("CURRENT")
- mapx = aprx.listMaps()[0]
- lyt = aprx.listLayouts()[0]
- lyr = mapx.listLayers("ne_10m_admin_0_countries")[0]
- lyr.definitionQuery = '"ADMIN" = ' + "'Switzerland'"
- mFrame = lyt.listElements("MAPFRAME_ELEMENT")[0]
- mFrame.camera.setExtent(mFrame.getLayerExtent(lyr, False, True))
- lyr.definitionQuery = ""
- return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement