Cerchi la sintassi per arcpy.mapping.Layer () in ArcPy for ArcGIS Pro? [duplicate]

Questa domanda ha già una risposta qui :

Commenti

  • Che aspetto ha il tuo codice che porta al punto in cui sei bloccato? Al momento il codice che hai presentato sembra una riga copia / incollata da qualche altra parte e non si qualificherebbe come uno snippet di codice che illustra ciò che hai provato e dove sei bloccato.
  • @BravoZulu lo consiglierei controlla la pagina Migrazione da arcpy.mapping nella Guida. Il diagramma di flusso potrebbe essere particolarmente utile. Dice anche: Layer management functions have moved The stand-alone layer management functions are now methods on the Map and LayerFile objects. The methods include addLayer, addLayerToGroup, insertLayer, moveLayer, and removeLayer
  • @PolyGeo, penso che questa sia una questione importante, poiché utilizzo la classe arcpy.mapping.Layer per creare Layer e trovo che sia abbastanza conveniente, ad esempio posso creare un livello temporaneo con lyr = arcpy.mapping.Layer(r'C:\Temp\test.shp') e utilizzarlo per accedere alle sue proprietà, ad esempio lyr.visible o lyr.definitionQuery. Tuttavia, gli unici modi per creare un oggetto livello in arcgis-pro sia MakeFeatureLayer_management o listLayers metodo di Map oggetto. Il primo consente di utilizzare una stringa al posto di un oggetto di livello (lo trovo piuttosto stupido) e agli altri non è possibile accedere direttamente dalla feature class.
  • Quando si parla di portabilità, diciamo una riga nel vecchio script per assegnare una query di definizione a un livello creato da arcpy.mapping.Layer può essere eseguito facilmente se si dispone di un oggetto Livello, ad esempio lyr.definitionQuery = "Desc = 'IT IS QUITE EASY'". Tuttavia, "outputLyr".definitionQuery restituirà un errore oppure dovrai prima salvare il MakeFeatureLayer_management risultato come lyrx e quindi creare un livello come desidero arcpy.mp.LayerFile('BLA').
  • @fatih_dur I ' ho fatto molto con questa parte di arcpy.mp e quindi penso che tutto ciò che deve essere fatto è che qualcuno migliori lo snippet di codice per illustrare ciò che è stato provato e dove sono bloccati. Puoi modificare per farlo. Se cè un secondo problema, dovrebbe essere posta una seconda domanda con un nuovo snippet di codice.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *