#1 Wed 02 June 2010 09:59
- uandre
- Juste Inscrit !
- Date d'inscription: 2 Jun 2010
- Messages: 3
[ArcGIS 9.3] Calcul d'orientation moyenne d'un polygone
Bonjour,
je cherche à calculer l'orientation moyenne d'un polygone (dans mon projet, les polygones sont des parcelles). En cherchant sur des forums, j'ai trouvé certains articles qui répondent à cette question, mais qui utilisent pour ce calcul l'orientation du segment le plus long du polygone. (la ligne de commande sur ArcInfo est : CalculatePolygonMainAngle_cartography <couchepolygones> <champà renseigner>).
Je préfèrerais calculer cette orientation avec une formule mathématique qui ferait la moyenne de tous les côtés du polygone en pondérant avec la distance de chaque côté.
Est-ce-que, déjà, c'est possible de faire ça, et est-ce-que quelqu'un saurait comment faire?
Merci
Hors ligne
#2 Wed 02 June 2010 11:29
- n314
- Participant assidu
- Date d'inscription: 6 Sep 2005
- Messages: 706
Re: [ArcGIS 9.3] Calcul d'orientation moyenne d'un polygone
Oui, c'est possible, via de la prgrammation (python ou vba pour faire simple):
votre pseudo-algo est déjà quasi prêt avec votre description...
Créér un champ AzimuthMoyen dans la table attributaire des polygones
Créér un tableau Azimuth
Créér un tableau Longueur
Boucler sur chaque polygone
__remise à neuf de Azimuth et Longueur (clear)
__Boucler sur chaque côté du poly
___calculer longeur côté, inscrire dans tableau longueur
___calculer azimuth côté, inscrire dans tableau azimuth
__Sommer longueurs (ou récupérer périmètre du poly)
__Calculer azimuth moyen via somme des azimuth des côtés pondérés par leur longueur en utilisant les tableaux Azimuth et Longueur
__Affecter l'azimuth moyen au polygone
Dernière modification par n314 (Wed 02 June 2010 11:30)
Hors ligne
#3 Wed 02 June 2010 11:56
- uandre
- Juste Inscrit !
- Date d'inscription: 2 Jun 2010
- Messages: 3
Re: [ArcGIS 9.3] Calcul d'orientation moyenne d'un polygone
Merci pour la réponse, c'est effectivement un algorithme qui répond bien à ma question.
Mais comment faire pour récupérer l'orientation et la longueur de chaque côté enVBA?
Est-ce possible de les récupérer directement par une commande, ou faut-il passer par les coordonnées de chaque sommet? Dans ce cas, il faut aussi réussir à gérer l'ordre des sommets.
Hors ligne
#4 Wed 02 June 2010 12:50
- n314
- Participant assidu
- Date d'inscription: 6 Sep 2005
- Messages: 706
Re: [ArcGIS 9.3] Calcul d'orientation moyenne d'un polygone
http://arcscripts.esri.com/details.asp?dbid=14234
Calculer la longueur d'un côté est relativement bien documenté, googler un peu devrait suffire...
Autre workflow, transformer les polygones en lignes (qui garderont l'identifiant du polygone 'parent', utiliser le script ci-dessus, exporter la table attributaire (qui contiendra périmètre s'il s'agit d'une featureclass ainsi que l'angle calculé), faire les calculs hors arcgis, puis créer une table contenant l'info identifiantpoly+azimuthmoyen afin d'effectuer une jointure
Hors ligne
#5 Wed 02 June 2010 14:08
- uandre
- Juste Inscrit !
- Date d'inscription: 2 Jun 2010
- Messages: 3
Re: [ArcGIS 9.3] Calcul d'orientation moyenne d'un polygone
Merci pour cette réponse, c'est tout à fait ce que je voulais, et ça m'est d'un grand secours!!
Bonne journée
Hors ligne
#6 Thu 28 October 2010 10:52
- qadem
- Juste Inscrit !
- Date d'inscription: 25 Oct 2010
- Messages: 2
Re: [ArcGIS 9.3] Calcul d'orientation moyenne d'un polygone
merci pour les explications
Hors ligne