複数のMXD内のすべてのデータセットのシンボルの概要表を作成していますか?


9

これは、Mapinfo TABの次のRetain ESRIシンボルに関連しています。最初のステップ(arcpyで)として、すべてのデータセットのシンボルにアクセスし、以下の図のように、シンボルの詳細を含むドキュメントを作成します。 ここに画像の説明を入力してください

これは可能ですか(時間をかけて解決する必要があります)、それができない場合は、何百ものMXDで手動で実行する必要があります(:-

ステップを分解するために、できればプロセスの少なくとも一部を自動化できるといいですね。

  1. mxdをスクロールして、オンになっているデータセットを取得しても問題ありません。

    lyrFile.visible == Trueの場合、lyrFile = arcpy.mapping.Layer:

  2. データセットが見つかると、.lyrファイル(ほとんどがshp / gdbファイル)を作成し、次にAttribXXX = lyrFile.xxxを作成する必要があります。

ここで、XXXとxxxは

BRIGHTNESS = lyrFile.brightness

(上記のフォーマットから次のフォーマットへ)

CONTRAST contrast
DATASETNAME datasetName
DATASOURCE dataSource
DESCRIPTION description
LABELCLASSES labelClasses
LONGNAME longName
NAME name
SHOWLABELS showLabels
TRANSPARENCY transparency
WORKSPACEPATH A layer's workspace or connection file path

問題は、RGB、線/点/ポリゴンタイプ、線の太さ、フォントなどを取得するものが何も見つからないことです。これらが見つかった場合は、次のステップ

  1. 上記の各値をCSVに書き込む(簡単)...たとえば(これは展開する必要があります)

                    f = open(origPath+'\\LayerAtrributes_LOG.txt', 'a')
                    f.write(str(DATASETNAME)+","+str(DATASOURCE)+","+str(DESCRIPTION)+","+str(MXDName)+"\n")
                    f.close()
    
  2. 可能であれば、例のようにシンボルのjpgを作成し、それへのリンクをcsvに追加する必要があります。

Arcpyの多くに質問していますか?


これはArcObjectsでは可能かもしれませんが、arcpyでは不可能です。
blah238 '20年

ありがとう。だれでもarcobjectsの処理を支援できますか?
GeorgeC

どこから始めればよいかを示すことができるだけです。ArcObjects.NET SDKヘルプシンボルと色の操作およびレイヤーとレンダラーの操作。それを読んだ後に他に何もない場合は、要件をより正確に定義し、作業の範囲を制限することできるでしょう。これは多くの作業になるためです。
blah238

次に、スタイルシンボルをエクスポートするための古いVB6サンプルを示します。Style Dump。その内容については、StyleDump.basを確認してください。
blah238

回答:


3

MXDドキュメントをMSD(単なるzipファイル)に変換することで同様の問題を解決したので、拡張子を「.zip」に変更して開くと、それぞれの方法に関する多くの情報を含むいくつかの.xmlドキュメントが見つかります。 mxd内のレイヤーが表示されます。arcpy.ConvertToMSD必要な情報を取得するための作業が含まれる場合がありますが、どこかにあるはずです。お役に立てば幸いです。


この独創的なアイデアをありがとう。本当に助かります。xmlで生成されたコードは非常に複雑です。関連するxmlを自動的にキャプチャするプログラムを作成しました。そうであれば、それを共有できます。そうでない場合は、この側面の作業を開始します。
GeorgeC 2012年

私はxmlの2つの値にのみ興味があったので、私が持っていたものはすべて構築するのが非常に困難になります。しかし、非常に優れたpython xmlチュートリアルが山ほどあるので、時間をかけて読む準備ができていれば、問題を解決できると確信しています。ハッピーコーディング:)
dango

2

基本的にこれは不可能でしたが、結果を得るための回り道を考え出しました。最終的な結果については、ツールの問題に対するarcgis pythonスクリプトを参照してください。

この段階に到達するための他の質問は

ArcGISスタイル(シンボロジー)をMapInfo / OpenGeoのフォントに変換しますか?

Mapinfo TABでESRIシンボルを保持する

そして

複数のMXD内のすべてのデータセットのシンボルの概要表を作成していますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.