Disponible avec une licence Spatial Analyst.
Un objet Raster référence un jeu de données raster et peut être associé à une couche raster dans la table des matières s’il est utilisé dans un affichage cartographique. Les relations entre le jeu de données raster, l’objet Raster et la couche raster sont gérées dans la plupart des cas, mais il est important de comprendre ces relations pour mettre à profit le langage Algèbre spatial de Spatial Analyst.
Les objets Raster sont créés des deux manières suivantes :
- La sortie d’une expression Algèbre spatial est un objet Raster. La caractéristique principale d’un objet Raster, créé en tant que sortie principale à partir d’une expression Algèbre spatial, est qu’il référence un raster temporaire.
>>> outRas = Slope("elevation") >>> print outRas(isTemporary) True
- Un jeu de données raster peut être redéfini en tant qu’objet Raster. Lorsqu’un jeu de données raster permanent est redéfini en tant qu’objet Raster, le jeu de données reste permanent.
>>> outRas = Raster("C:/Data/elevation") >>> print outRas(isTemporary) False
Lorsque vous utilisez la fenêtre Python, le résultat d’une expression Algèbre spatial est ajouté à l’affichage Contents (Contenu) avec le même nom que celui de l’objet Raster. Lorsqu’un jeu de données est redéfini en raster, aucune couche n’est ajoutée à la table des matières.
Enregistrer des rasters temporaires
Lorsque les données associées à l’objet Raster sont temporaires, ce dernier est supprimé à l’issue de la session ArcGIS (l’objet sort du domaine d’applicabilité ou le script se termine), à moins que les données ne soient enregistrées. Lorsqu’un raster est enregistré, la couche et l’objet reflètent les propriétés de raster mises à jour, y compris name, path, catalogPath, et le statut isTemporary du jeu de données. Il existe plusieurs manières d’enregistrer un jeu de données temporaire.
- Pour enregistrer un jeu de données raster temporaire via l’objet Raster associé, vous pouvez utiliser la méthode save de l’objet raster.
- Pour rendre permanent un jeu de données raster temporaire associé à une couche de carte, enregistrez le projet cartographique. Lorsque le projet est enregistré, le jeu de données raster est conservé sur disque à son emplacement actuel avec son nom auto-généré.
Réutiliser un objet raster
Les noms d’objet doivent être uniques. Lorsqu’un nom d’objet est réutilisé, l’objet d’origine est remplacé. Dans l’exemple suivant, la sortie de l’outil Pente est remplacée lorsque outRas est réutilisé en tant que sortie de l’expression Exposition.
outRas = Slope("inRas1")
outRas = Aspect("inRas2")
Les couches sont ajoutées au contenu avec le même nom que celui de l’objet Raster. Lorsqu’un nom d’objet Raster est réutilisé, plusieurs couches portant le même nom sont ajoutées à la fenêtre de contenu. Dans l’exemple précédent, outRas est ajouté deux fois. La première fois, lorsque l’expression Pente est exécutée. Cette première couche outRas référence le résultat de l’outil Pente et peut être utilisée dans la fenêtre Python jusqu’à ce que l’expression Exposition soit exécutée. Lorsque l’expression Exposition est exécutée, une deuxième couche nommée outRas est ajoutée, l’objet est remplacé et référence désormais le jeu de données et la couche qui résultent de l’expression Exposition.
Conseil :
Si l’objet Raster qui référence un jeu de données est remplacé, le jeu de données raster peut être redéfini en tant qu’objet Raster à l’aide du nom de la couche ou du jeu de données.
Supprimer un objet raster
Lorsqu’un objet Raster est supprimé, le devenir du jeu de données (et éventuellement de la couche) associé dépend du statut des données. Si les données sont permanentes, la suppression de l’objet Raster n’a aucune influence sur le jeu de données ou la couche associé. Si un jeu de données est temporaire, les effets de la suppression de l’objet Raster varient s’il existe une couche qui référence également le jeu de données raster. Si aucune couche n’est associée au jeu de données temporaire et que l’objet est supprimé, le jeu de données est supprimé. Si une couche est associée au jeu de données temporaire et que l’objet est supprimé, les données temporaires sont conservées.
Attention :
Les données temporaires référencées par une couche ne sont pas supprimées lorsque l’objet Raster est supprimé ; cependant, toutes les données temporaires sont supprimées lorsque l’application est fermée (à moins qu’elles ne soient enregistrées), indépendamment des couches ou objets existants.L’exemple suivant indique comment supprimer un objet Raster nommé outRas :
outRas = Slope("C:/Data/elevation")
del outRas
Affectation de l’objet raster à un nouvel objet raster
L’affectation d’un objet Raster à un nouvel objet Raster ne copie pas le jeu de données ou la couche associé. L’affectation d’un objet Raster à un nouvel objet Raster crée un second objet qui référence l’objet d’origine. Dans l’exemple suivant, outRas1 et outRas2 référencent le même jeu de données raster :
outRas1 = Slope("elevation")
# Assigns Raster object to a new Raster object and save the raster dataset
outRas2 = outRas1
outRas2.save("C:/output/outslope")
Dans cet exemple, outRas1 et outRas2 référencent le même jeu de données. Par conséquent, lorsque outRas2 est enregistré, les deux objets reflètent le statut permanent, le nouvel emplacement et le nouveau nom du jeu de données enregistré, outslope. Si outRas1 est une couche dans votre table des matières et que vous rendez les données permanentes par l’intermédiaire de la propriété de la couche ou en enregistrant votre document ArcMap, les deux objets outRas1 et outRas2 référencent le jeu de données enregistré.
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?