He construir una casa pequeña de búsqueda de arcpy secuencia de comandos. El usuario abre cualquier mxd, se acerca a un lugar, elige una empresa fGDB, y ejecuta la herramienta. El usuario obtiene una lista de todos los poblados de la clase de entidad que se cruza con la extensión actual. Más tarde, tengo el propósito de escribir un proceso en el que el usuario puede elegir las capas que se desean agregar. Sin embargo, me estoy desviando. Estoy buscando en la incrustación de la arcpy en un complemento, mi primer problema es el aprendizaje de lo que el equivalente de un arcpy.GetParameterAsText es, como quiero que el usuario especifique el espacio de trabajo que necesitan para interrogar.
import arcpy
import pythonaddins
class ButtonClass1(object):
"""Implementation for AddIn_Test4_addin.button (Button)"""
def __init__(self):
self.enabled = True
self.checked = False
def onClick(self):
################## MAP DOCUMENT DATA FRAME EXTENT
StagingGDB = arcpy.GetParameterAsText(0)
#StagingGDB = "C:\\Data\\Projects\\SearchTool\\CorpData1.gdb"
arcpy.env.workspace = StagingGDB
ExtentFC = StagingGDB +"\\ExtentFC"
############ Clean Up & Pre Check
if arcpy.Exists(ExtentFC):
arcpy.Delete_management(ExtentFC)
################## MAP DOCUMENT DATA FRAME EXTENT
mxd = arcpy.mapping.MapDocument("current")
df = arcpy.mapping.ListDataFrames(mxd)[0]
currentExtent = df.extent
################## EXTENT FC
pnt1 = arcpy.Point(currentExtent.XMin , currentExtent.YMin)
pnt2 = arcpy.Point(currentExtent.XMax , currentExtent.YMin)
pnt3 = arcpy.Point(currentExtent.XMax , currentExtent.YMax)
pnt4 = arcpy.Point(currentExtent.XMin , currentExtent.YMax)
array = arcpy.Array()
array.add(pnt1)
array.add(pnt2)
array.add(pnt3)
array.add(pnt4)
array.add(pnt1)
DisplayExtent = arcpy.Polygon(array)
arcpy.FeatureClassToFeatureClass_conversion(DisplayExtent , StagingGDB ,"ExtentFC", "", "", "")
pass
Alguna idea?