ArcObjectsスクリプトの実行中に生成されるレイアウトビューの謎の緑の線とは何ですか?


8

ArcObjectsの第一人者が私に、ページレイアウトのこれらの緑の線は何であり、何をすべきか、またはすべきでないので、それらが表示されないのか教えてもらえますか?添付の画像を参照してください。

私はPythonからArcObjectsを使用しました。私のスクリプトは、データフレームグリッドと経緯線をグラフィックスに変換しています。その結果、単一の要素(テキスト、行など)を再生するためにそれらを抽出する必要があるグループ要素を受け取ります。ただし、この操作(3つの個別のグリッドに対して実行されます)の後に、GraphicContainerの一部ではない、神秘的な緑色の線が表示されます。実際、緑の線は、変換と1経緯線(WGS)からの抽出後にのみ表示されます。

いくつかのガイダンスがあり、ここで働く、それらを取り除く(カット&ペーストまたは削除して、すべてのページ要素を元に戻す)を取得する方法について。ただし、そもそもそれらは避けたい。また、切り取りと貼り付けのいくつかの構成を行った後、3つの画像要素(右下隅)を削除して復元すると、緑色の線が消えることを確認しました。

これに責任があると思われるコード:

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()

GIS.SEがそのような技術的、ソフトウェア固有の質問に適切な場所であるかどうか、議論が進んでいることを知っています。申し訳ありませんが、他に満足のいく答えが見つかりませんでした。

ページレイアウトの緑の線


1
すばらしい質問です。このフォーラムのために。この線は印刷されますか?
Brad Nesom 2013

驚いたことに、いいえ、彼らは印刷しません。ズームアウトの特定のレベルでは、それらは消えることがありますが、ズームイン後に再び表示されます。このスクリプトによって.mxdが破損したのではないかと心配していましたが、上記の「カットアンドペースト」または「削除-取り消し」操作の後、それらは完全に消えます。したがって、.mxdは破損していないと思います。本当に、いくつかの説明を聞きたいのですが。
Tomek 2013

これは他のワークステーションで再現可能ですか?同様の問題がありましたが(原因と解決法は異なります)、問題のない他のワークステーション(および問題のあるワークステーション)がありました。 gis.stackexchange.com/questions/3546/…–
Jay Cummins

ArcGIS 10および10.1で3つのワークステーションを試しました。再現可能。
Tomek 2013

すべての要素を選択して、選択した要素にズームすると、何が得られますか?ズームアウトしますか?いつもアクセスできない場所に画像が消えてしまいました。魔法のように(再現性なく)選択して削除した。
gm70560 2013

回答:


5

この行は私には不審に見えます:

for i in range(pGE_no):

グループからi番目の要素を削除した場合、iをインクリメントします。次の要素は、実際にはi + 1要素ではありません。これにより混乱が生じる可能性があります。

これを克服するには、逆方向にループして、pGE_noから始めて、i をデクリメントします

更新

また、graphicscontainer内のすべての要素をループしているため、次の段階で新しい要素をコンテナの最上位に追加すると、別の混乱の原因となる可能性があります。代わりに、おそらくすべてのグループのリストを作成してから、(graphicscontainerの代わりに)リストをループしてを呼び出しMoveElementFromGroupます。入れ子になったグループがある場合は、少し複雑になります。葉から始めて、最初に葉を刈り込む必要があります。


アップデートのアドバイスはチェックしませんでした。後方にループしても何も変わりませんでした。グラフィックスコンテナではなく、リストをループしてみます。
Tomek 2013

実際、ネクスト中にコンテナに新しい要素を追加することが原因でした。カークありがとう。
Tomek

カーク、正しい方法でグループからグループを抽出する方法についてのポインタ(またはグループからグループからの要素)?Everythigは他の要素で問題ありませんが、グループ要素は協力したくありません。手がかりはありますか?
Tomek

0

ガイドや定規に似ています。
ただし、停止して角度を付けることはできません。(光線)

定規

データビューに切り替えても線は消えませんか?
それがレイアウトビューの「上」にあるのか、データ内にあるのかを教えてくれるかもしれません。

データビュー
無効なペア(座標)がラインフィーチャの一部であるのと同じようなことをする異常がありました。
データに対して修復ジオメトリを実行して、データが削除されたかどうかを確認できます。

修復


私はそこにあるすべてのジオメトリを変更せずに修復しようとしました。緑の線がまだ表示されます。私はそれらがガイドラインに戻るとは思わない。私は彼らと全く対話することができません、彼らは現れるだけです。
Tomek 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.