J'aimerais prendre une classe d'entités surfaciques avec plusieurs polygones irréguliers et demander à Arc de tracer des lignes parallèles à l'intérieur de chaque polygone. Idéalement, ce serait bien pour Arc de déterminer l'angle du côté le plus long du polygone et de tracer des lignes parallèles de ce côté, mais pour rester simple, je pense que si je pouvais entrer un seul angle pour toutes les lignes parallèles, cela serait plus facile.
Donc, l'angle de ligne, la largeur entre les lignes, la longueur min / max et la largeur de tampon des côtés des polygones sont mes critères de base.
Image jointe si cela aide.
arcgis-desktop
arcpy
Tx_Dan
la source
la source
Réponses:
Comme le mentionne @cndnflyr, cela peut être scripté en Python.
Interface utilisateur de l'outil de script:
Exemple de sortie:
la source
Cela pourrait être fait avec Python, mais cela prendrait un certain temps pour l'écrire.
Je pense que le moyen le plus rapide de l'implémenter sans Python est d'avoir un fichier SHP modèle de ces lignes parallèles. Ayez-en quelques-uns si vous avez besoin de différentes largeurs, et utilisez simplement celui approprié pour ce polygone. Faites en sorte que les lignes du modèle couvrent suffisamment de surface pour couvrir le plus grand polygone que vous rencontrerez.
Les étapes 3 à 7 peuvent être modélisées, sans avoir à écrire de code.
Le même processus pourrait être utilisé pour coder le processus, mais au lieu d'avoir des lignes de modèle, vous pourriez demander au code de dessiner les lignes au bon angle, à une distance différente, etc. Je ne l'ai pas fait depuis un certain temps, mais je pense qu'un Une bibliothèque Python comme galbée aiderait. Assurez-vous simplement qu'il couvre une zone plus grande que le polygone et utilisez les outils pour convertir automatiquement en polyligne, tamponner, effacer, sélectionner les lignes ne se trouvant pas à l'intérieur du polygone et les supprimer.
la source