Lorsque vous effectuez une analyse de réseau, les entrées de l’analyse se situent rarement en haut des tronçons ou jonctions de la source de données réseau utilisée. Vous pouvez ainsi utiliser un jeu de données réseau construit à partir d’axes médians des routes, mais les points que vous souhaitez analyser sont des centroïdes de parcelles dans votre ville. Ces centroïdes de parcelles ne se situent pas au-dessus des axes médians des routes ; ils sont plutôt décalés des routes selon une certaine distance. Pour pouvoir effectuer une analyse de réseau, Network Analyst doit déterminer l’emplacement sur le jeu de données réseau de chaque entrée de l’analyse. Cette localisation de réseau, plutôt que la localisation d’origine de l’entrée, est utilisée dans l’analyse. Par exemple, si vous calculez un itinéraire entre deux parcelles de votre ville, les points de début et de fin de l’itinéraire ne sont pas les centroïdes des parcelles, mais les emplacements auxquels les centroïdes des parcelles sont capturés sur les axes médians des routes.
L’image ci-dessus illustre la localisation d’un arrêt de l’itinéraire sur le réseau. Le cercle violet indique l’emplacement géographique de l’arrêt. La ligne d’itinéraire commence toutefois au point le plus proche le long du réseau de transport, qui est la localisation de réseau du point.
Fonctionnement de la localisation
Les localisations de réseau sont calculées en fonction de plusieurs facteurs, notamment les emplacements géographiques des entrées, les paramètres de l’analyse de réseau pour laquelle les entrées sont utilisées et les paramètres de localisation spécifiés par l’utilisateur dans l’outil ou la fonction employé pour localiser les entrées. La procédure fonctionne comme suit pour un point en entrée :
- Network Analyst recherche le point le plus proche du tronçon du réseau par rapport à l’emplacement du point d’origine.
- Network Analyst tient compte des paramètres de l’analyse de réseau et des paramètres de localisation de l’utilisateur pour déterminer si ce tronçon est valide pour la localisation des entrées de l’analyse. Si le tronçon est considéré comme non valide pour la localisation, il est ignoré et le tronçon suivant le plus proche est traité. Un tronçon peut être considéré comme non valide pour la localisation pour les raisons suivantes :
- Le tronçon est restreint pas le mode de déplacement sélectionné. Par exemple, si le mode de déplacement n’accepte pas les autoroutes à accès limité et que le tronçon de réseau le plus proche est une autoroute à accès limité, les points de cette analyse ne peuvent pas être situés sur ce tronçon.
- Le tronçon, ou la partie la plus proche du tronçon, est restreint pas une interruption.
- Le tronçon est limité par les paramètres de localisation que vous avez spécifiés. Vous pouvez ainsi utiliser une requête de recherche pour empêcher la localisation des entrées sur des tronçons de réseau avec une classe routière particulière.
- Le processus se répète, en examinant à chaque fois le tronçon du réseau le plus proche, jusqu’à ce qu’une localisation de réseau valide soit trouvée pour le point en entrée. Si aucune localisation valide n’est détectée dans la distance de la tolérance de recherche, le point n’est pas localisé et ne peut pas être utilisé dans l’analyse.
Lorsque vous localisez des interruptions ponctuelles, le mode de déplacement et les autres interruptions sont ignorés. Seuls la géométrie et les paramètres de localisation spécifiés par l’utilisateur sont pris en compte.
Les lignes et les polygones peuvent également être utilisés en tant qu’entrées de l’analyse de réseau mais uniquement en tant qu’interruptions linéaires et polygonales. Ces interruptions sont localisées sur tous les tronçons ou jonctions du réseau sur lesquels elles sont superposées, en fonction des paramètres de localisation spécifiés par l’utilisateur.
Champs de localisation réseau
Une fois qu’une entrée a été localisée sur le réseau, sa localisation de réseau est définie grâce aux champs de localisation de réseau.
Champs de localisation de réseau pour les points
Pour les entrées des points, les champs de localisation de réseau contiennent l’ID du tronçon ou de la jonction de réseau dans lequel le point est localisé. Si le point est localisé sur un tronçon, les champs de localisation contiennent également l’emplacement le long de ce tronçon. Les champs de localisation de réseau pour les entrées de points sont les suivants :
Nom du champ | Description | Type de données |
---|---|---|
SourceID | Identifiant numérique de la classe d’entités source du jeu de données réseau sur lequel se trouve le point en entrée. | Long |
SourceOID | ObjectID de l’entité dans la source dans laquelle se trouve le point en entrée. | Long |
PosAlong | Position le long du sens de numérisation de l’entité linéaire source. Cette valeur est stockée sous forme d’un ratio. Ce champ est nul si la localisation de réseau fait référence à une jonction. | Double |
SideOfEdge | Côté du tronçon par rapport au sens de numérisation de l’entité linéaire. Ce champ est limité à un domaine de deux valeurs : Côté droit (1) et Côté gauche (2). | Long |
SnapX | Coordonnée x de la position du jeu de données réseau où se trouvait le point, dans le système de coordonnées du jeu de données réseau. | Double |
SnapY | Coordonnée y de la position du jeu de données réseau où se trouvait le point, dans le système de coordonnées du jeu de données réseau. | Double |
SnapZ | Coordonnée z de la position du jeu de données réseau où se trouvait le point, dans le système de coordonnées du jeu de données réseau. Le champ SnapZ est égal à 0 si le réseau est en deux dimensions. | Double |
DistanceToNetworkInMeters | Distance, exprimée en mètres, entre l’emplacement géographique du point et la position ou il se trouvait dans le réseau. | Double |
Champs de localisation de réseau pour les lignes et les polygones
Les lignes et les polygones peuvent être employés comme interruptions dans une analyse de réseau. La localisation de réseau d’une entrée de ligne ou de polygone est définie par un seul champ BLOB : Locations.
Nom du champ | Description | Type de données |
---|---|---|
Locations | Les informations de ce champ définissent les jonctions et les tronçons du réseau couverts par la ligne ou le polygone ainsi que la portion couverte de chaque tronçon. Vous ne pouvez pas lire ou mettre directement à jour les informations contenues dans ce champ, mais Network Analyst les interprète lors de la résolution d’une analyse. | BLOB |
Comment et quand les localisations de réseau sont-elles calculées dans une analyse de réseau ?
Le mode de localisation et le moment auquel les entrées sont localisées sur le réseau dépendent de la manière dont vous exécutez l’analyse de réseau.
Processus d’analyse de réseau basés sur une couche
Lorsque vous effectuez une analyse avec une couche d’analyse de réseau, les entrées sont ajoutées à cette dernière grâce à l’outil Ajouter des localisations. Si votre couche d’analyse référence un jeu de données réseau local, les localisations de réseau des entrées sont calculées lorsque vous exécutez l’outil Ajouter des localisations et vous pouvez afficher les champs de localisation de réseau renseignés dans la table attributaire de la sous-couche dans laquelle vous avez ajouté les entrées. Par défaut, les localisations des points ajoutées à une couche d’analyse de réseau s’affichent aux localisations d’origine même si des localisations de réseau ont été calculées et sont utilisées dans l’analyse. Vous pouvez à la place afficher les points à leurs localisations de réseau en activant l’option Snap to Network (Capturer sur le réseau) dans l’outil Ajouter des localisations.
L’outil Ajouter des localisations contient plusieurs paramètres permettant de contrôler le comportement de la localisation. Vous pouvez ainsi définir la distance de la tolérance de recherche, indiquer les sources de réseau à utiliser ou à ne pas utiliser pour la localisation ou définir une requête de recherche pour restreindre la recherche à des entités de source de réseau correspondant à certains critères. Vous trouverez plus d’informations sur ces options dans la documentation relative à l’outil.
De plus, le mode de déplacement de la couche d’analyse de réseau et les interruptions existantes sont pris en compte lors de la localisation des entrées. Les entrées ne sont pas localisées sur des tronçons et des jonctions limités par le mode de déplacement ou des interruptions existantes. Il est par conséquent recommandé de définir le mode de déplacement et de charger les interruptions avant de charger les autres entrées de l’analyse. Toutefois, si vous modifiez le mode de déplacement après avoir ajouté des localisations ou si vous ajoutez ou retirez des interruptions, les localisations de réseau des points affectés sont automatiquement recalculées lors du processus de calcul, ce qui garantit leur validité.
Si la couche d’analyse référence un service de portail, les champs de localisation ne sont pas calculés avant l’analyse. L’outil Ajouter des localisations ajoute les entrées à la couche d’analyse lors du calcul des champs de localisation. Au moment de l’analyse, les entrées sont envoyées au service avec les paramètres d’analyse. Le service calcule les champs de localisation, effectue l’analyse et renvoie le résultat. Une fois la couche analysée, les champs de localisation renseignés apparaissent dans les tables attributaires des sous-couches en entrée.
Vous pouvez également faire appel aux outils de mise à jour pour créer manuellement des entrées d’analyse de réseau. Les localisations de réseau de ces entités en entrée sont calculées automatiquement lorsque vous analysez la couche d’analyse.
Processus utilisant les outils prêts à l’emploi
Lorsque vous effectuez l’analyse avec ArcGIS Online routing services via les outils prêts à l’emploi, les localisations de réseau sont calculées par le service lorsque l’outil est exécuté. Vous pouvez voir les localisations de réseau qui ont été utilisées dans les tables attributaires des entités en entrée renvoyées par le service. Aucun paramètre de localisation spécifique n’est disponible avec les outils prêts à l’emploi, mais les paramètres liés au mode de déplacement et les interruptions sont pris en compte lors de la localisation des entrées. Les entrées ne sont pas localisées sur des tronçons et des jonctions limités par le mode de déplacement, des restrictions spécifiées et l’attribut d’impédance, et ne sont pas soumises à des interruptions.
Processus Python utilisant le module Network Analyst
Lorsque vous effectuez une analyse dans Python avec le module Network Analyst, arcpy.nax, les entrées sont ajoutées à l’analyse grâce à la méthode load ou à la méthode insertCursor sur l’objet solveur de l’analyse de réseau. Les localisations de réseau ne sont pas calculées avant que l’analyse ne soit effectuée via la méthode solve. Une fois l’analyse effectuée, les champs de localisation renseignés s’affichent dans les sorties accessibles via l’objet de résultat du solveur.
Chaque objet d’analyse de réseau contient certaines propriétés qui contrôlent le comportement de la localisation. Vous pouvez ainsi définir la distance de la tolérance de recherche grâce aux propriétés searchTolerance et searchToleranceUnits ou définir une requête de recherche avec la propriété searchQuery pour restreindre la recherche à des entités de source de réseau correspondant à certains critères. De plus, le mode de déplacement de l’objet d’analyse et les interruptions sont pris en compte lors de la localisation des entrées. Les entrées ne sont pas localisées sur des tronçons et des jonctions limités par le mode de déplacement ou des interruptions que vous avez incluses dans l’analyse.
Précalculer les champs de localisation de réseau
Le calcul des localisations de réseau d’un grand nombre d’entrées peut s’avérer être chronophage. Si vous envisagez d’utiliser les mêmes données en entrée pour plusieurs analyses avec le même jeu de données réseau et les mêmes paramètres d’analyse, vous pouvez gagner du temps en précalculant vos champs de localisation de réseau. Vous pouvez utiliser l’outil Calculer les localisations, qui ajoute des champs de localisation de réseau à une classe d’entités en fonction d’un jeu de données réseau précis, d’un mode de déplacement et des paramètres de l’outil.
Lorsque vous procédez à l’analyse avec une couche d’analyse de réseau, il est possible d’utiliser vos champs de localisation précalculés lorsque vous ajoutez vos entrées à la couche d’analyse via l’outil Ajouter des localisations. Pour ce faire, utilisez l’option Field Mappings (Appariements de champs) pour apparier les champs de localisation de réseau à partir de vos entités en entrée aux propriétés de la localisation de réseau. Si vous utilisez la boîte de dialogue de l’outil, définissez la liste déroulante des appariements de champ sur Use Network Location Fields (Utiliser les champs de localisation de réseau) pour activer cet appariement.
Lorsque vous effectuez l’analyse dans Python avec le module Network Analyst, les champs de localisation de réseau peuvent être appariés à partir de votre entrée vers les champs de la classe en entrée via le paramètre field_mappings de la méthode load si vous définissez le paramètre use_location_fields sur True.
Lorsque vous appariez des champs de localisation de réseau en vue d’une analyse, appariez uniquement les champs SourceID, SourceOID, PosAlong et SideOfEdge. Les champs SnapX, SnapY, SnapZ et DistanceToNetworkInMeters sont fournis à titre d’information et ne sont pas obligatoires pour spécifier des localisations en vue d’une analyse.
Il est impossible d’utiliser des localisations de réseau précalculées lorsque vous faites appel aux outils prêts à l’emploi depuis ArcGIS Online ou lorsque vous employez une couche d’analyse de réseau qui référence ArcGIS Online comme sa source de données réseau. Si, toutefois, votre couche d’analyse de réseau référence votre portail d’entreprise comme sa source de données réseau, vous pouvez précalculer des champs de localisation avec le même jeu de données réseau que vous avez utilisé lors de la publication des services ArcGIS Enterprise routing services ; les services utiliseront alors les champs de localisation au cours de l’analyse.
Les champs de localisation précalculés sont valides uniquement pour le jeu de données réseau et le mode de déplacement pour lesquels ils ont été calculés. Si vous envisagez d’utiliser ces points avec un autre réseau ou un mode de déplacement différent, vous devez recalculer les champs de localisation. De plus, si vous mettez à jour le jeu de données réseau, recalculez les champs de localisation stockés si les mises à jour affectent la localisation des entrées.
Entrées non localisées
Il peut arriver que Network Analyst ne puisse pas localiser une entrée sur le réseau. Cela se produit généralement lorsqu’aucun tronçon ou aucune jonction n’est trouvé dans la distance de la tolérance de recherche. Ces entrées non localisées ne peuvent pas être utilisées dans l’analyse de réseau.
Si un point n’est pas localisé, les champs de localisation de réseau ne sont pas renseignés. De plus, le champ Status a pour valeur 1(Not Located). Vous pouvez utiliser le champ Status pour interroger la table et rechercher toutes les entrées non localisées. Examinez les emplacements géographiques de ces points non localisés pour déterminer s’ils doivent être réellement ignorés ou si vous devez les mettre à jour.
Lorsque vous analysez une couche d’analyse de réseau, les entrées non localisées sont ignorées par défaut. Si, à la place, vous souhaitez que le calcul échoue pour toute entrée non localisée, désélectionnez l’option Ignore Invalid Locations (Ignorer les emplacements non valides) dans l’outil Rechercher. Pour les processus Python, utilisez la propriété ignoreInvalidLocations de l’objet solveur de l’analyse de réseau pour indiquer si les points non localisés doivent être ignorés. Lorsque vous effectuez une analyse à l’aide des outils prêts à l’emploi, les entrées non localisées sont toujours ignorées.
Utiliser le relèvement d’un véhicule pour calculer les localisations de réseau avec davantage d’exactitude
La direction dans laquelle un véhicule se déplace, ou relèvement, peut servir à mieux localiser son emplacement sur un réseau.
En savoir davantage sur l’utilisation du relèvement lors de la localisation des points
Vous avez un commentaire à formuler concernant cette rubrique ?