ArcMapのフィーチャの横に画像を表示しますか?


11

道路標識を表す一連のポイントフィーチャがあり、各ポイントにはそれぞれの標識の写真が1つずつあります。

ポイントとして表示される標識の位置と、ポイントの横に表示される写真を使用してマップブックを作成します。マップブックの各ページには、複数のサインの場所と写真があります。

ポイントフィーチャの横にあるデータビューでMXDへの写真のインポートを自動化する簡単な方法はありますか?

約1000あるため、自動化が必要です。または、何らかの方法で写真でフィーチャーに「ラベル付け」しますか?

回答:


15

このスクリプトの変更(scale、shiftX、shiftY)および実行

import arcpy, traceback, os, sys
from arcpy import env
env.overwriteoutput=True

scale=10
shiftX=50
shiftY=25

points = r'D:\Scratch\points.shp'
try:
    def showPyMessage():
        arcpy.AddMessage(str(time.ctime()) + " - " + message)

    with arcpy.da.SearchCursor(points,("Shape@","HLINK")) as scur:
        for shp,image in scur:
            worldFile=image.replace(".jpg",".jgw")
            f = open(worldFile, 'w')
            f.write('%s\n'%(float(1)/scale))
            f.write('0.0000000\n')
            f.write('0.0000000\n')
            f.write('%s\n' %(-float(1)/scale))
            f.write('%s\n' %(shp.firstPoint.X+shiftX))
            f.write('%s\n' %(shp.firstPoint.Y+shiftY))
        f.close
except:
    message = "\n*** PYTHON ERRORS *** "; showPyMessage()
    message = "Python Traceback Info: " + traceback.format_tb(sys.exc_info()[2])[0]; showPyMessage()
    message = "Python Error Info: " +  str(sys.exc_type)+ ": " + str(sys.exc_value) + "\n"; showPyMessage()            

スクリプトは、ポイントテーブルに画像へのハイパーリンクがあり、jpegであると想定しています。 ここに画像の説明を入力してください

スクリプトは、ユーザー指定のパラメータースケールファクターと座標シフトを使用してワールドファイルを書き込みます。それらを使用して、スケールと画像の位置に最適な一致を実現します。

スクリプトを実行した後、これを取得するためにモザイクカタログを作成するなど、いくつかのアプローチを使用して画像カタログを作成できます。

ここに画像の説明を入力してください

注:一部のカタログはページ定義クエリをサポートしています

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