L'un des gourous d'ArcObjects pourrait-il me dire quelles sont ces lignes vertes sur ma mise en page et que faire ou ne pas faire pour qu'elles n'apparaissent pas? Voir l'image ci-jointe.
J'ai utilisé ArcObjects de Python. Mon script convertit des grilles de trame de données et des graticules en graphiques. En conséquence, je reçois un élément de groupe à partir duquel j'ai besoin d'extraire des éléments uniques (texte, lignes, etc.) afin de jouer avec eux. Cependant, après cette opération (qui est effectuée pour 3 grilles distinctes), je reçois ces mystérieuses lignes vertes, qui ne font pas partie de GraphicContainer. En fait, les lignes vertes n'apparaissent qu'après conversion et extraction à partir d'un réticule (WGS).
Il y a quelques conseils ici sur la façon de s'en débarrasser, ce qui fonctionne (couper et coller ou supprimer et restaurer tous les éléments de la page). Cependant, je voudrais tout de même les éviter en premier lieu. De plus, après certaines configurations de couper et coller, j'ai pensé que les lignes vertes disparaissent lorsque ces 3 éléments d'image (coin inférieur droit) sont supprimés et restaurés.
Code soupçonné d'être responsable de cela:
pGCL.Reset() #reset graphics containere
pElem = pGCL.Next()
while pElem:
pEP3 = CType(pElem, esriCarto.IElementProperties3)
if pEP3.Name == '' and pEP3.Type == 'Group':
pGE = CType(pElem, esriCarto.IGroupElement3)
pGE_no = pGE.ElementCount
for i in range(pGE_no):
if pGE.ElementCount > 0:
pGEe = pGE.Element[0]
pGCL.MoveElementFromGroup(pGE, pGEe, 0)
else: break
pElem = pGCL.Next()
Je sais qu'il y a une discussion en cours, si GIS.SE est le lieu approprié pour ces questions techniques spécifiques au logiciel. Je m'en excuse, mais je n'ai trouvé de réponse satisfaisante nulle part ailleurs.
Réponses:
Cette ligne me semble suspecte:
Si vous supprimez le ième élément du groupe, puis incrémentez i l'élément suivant n'est pas vraiment l'élément i + 1. Cela pourrait créer de la confusion.
Pour surmonter cela, essayez de boucler en arrière, commencez à pGE_no et décrémentez i.
Mise à jour
De plus, étant donné que vous parcourez tous les éléments du conteneur graphique, l'ajout d'un nouvel élément au niveau supérieur du conteneur pendant votre prochaine navigation peut être une autre cause de confusion. Au lieu de cela, faites peut-être une liste de tous les grouplements, puis parcourez la liste (au lieu du conteneur graphique) appelant
MoveElementFromGroup
. Si vous avez des groupes imbriqués, les choses deviennent un peu plus compliquées, vous devrez commencer par les feuilles et les tailler en premier.la source
Il ressemble aux guides et aux dirigeants.
cependant, il n'est pas possible de les faire s'arrêter et s'incliner (rayon).
La ligne persiste-t-elle si vous passez en mode données?
Cela pourrait vous dire si c'est quelque chose "sur" la vue de mise en page ou dans vos données.
J'ai eu des anomalies qui ont fait quelque chose de similaire alors qu'une paire non valide (coordonnées) faisait partie d'une entité linéaire.
Vous pouvez essayer d'exécuter la géométrie de réparation sur vos données pour voir si cela les a supprimées.
la source