タグ付けされた質問 「arcpy」

Esriによって作成されたサイトパッケージで、ArcGIS Desktop(ArcMapおよびArcGIS Pro)のジオプロセシング、マッピングなどをPythonに公開します。

2
ArcpyとPyQGISの両方を呼び出すことができるスクリプトを作成しますか?
私はこのトピックの明確な答えを探すのにかなりの時間を費やしましたが、スタンドアロンスクリプトでPyQGISにアクセスするという目標を実際に達成することができませんでした。 回答の一部は、次のような多くの異なる質問にわたって提供されています。 QGISと環境変数を使用したスタンドアロンアプリケーション スタンドアロンスクリプトのpyQgis、ベクトルロードエラー PyQGISを使用してスタンドアロンPythonスクリプトを作成しますか? 私が見つけた最も微妙な答えは、ここ @geneによって提供されました。 私が特に興味を持っているのは、ArcpyとPyQGISの両方を呼び出すことができるスクリプトを作成できることです。PyQGISクックブックのドキュメントに従って、PATHとPYTHONPATHの両方のシステム変数を次のように設定しました。 C:\OSGeo4W\apps\qgis\bin,%PATH%;C:\Python27\ArcGIS10.2\Lib\site-packages\PyQt4;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\ そして C:\OSGeo4W\apps\qgis\python; C:\OSGeo4W\apps\Python27\Lib\site-packages それぞれ。 私はこのスクリプトから始めています: from qgis.core import * QgsApplication.setPrefixPath("C:\OSGeo4W\bin\qgis.bat", True) QgsApplication.initQgis() # or your solution # read …

3
頻度を使用せずにツール検証を使用してArcGISで複数値選択リストを生成しますか?
「複数値選択リストの生成」というタイトルの ESRIのブログサイトにあるモデルとスクリプトの組み合わせを適応させようとしてい ます。 ただし、埋め込みスクリプトで使用される検証の一部は、適切に機能するために「周波数」ツールに依存していると結論付けましたが、これはAdvancedライセンス(lame)でのみ利用可能です。ブログの投稿では、ワークフローと、モデルとスクリプトをダウンロードする場所について説明しています(ただし、リクエストに応じてここに喜んで投稿します)。私が知る限り、私が求めている機能の中核は、複数値選択リストを生成することです。 ..は、検証スクリプトが適切に機能することを前提としています。検証を行わないと、フィールドから値を取得してリストとして表示できません。この検証スクリプトから削除して機能を取得できるものはありますか、または回避策はありますか?私は検証プロセスに不慣れです。検証用のコードを次に示します(コードサンプルとして投稿するつもりでしたが、これは従う方が簡単なようです) [ 編集者注:これは実際の検証コードです。画像は正しくありません] import arcpy class ToolValidator(object): """Class for validating a tool's parameter values and controlling the behavior of the tool's dialog.""" def __init__(self): """Setup arcpy and the list of tool parameters.""" self.params = arcpy.GetParameterInfo() def initializeParameters(self): """Refine the properties of a tool's parameters. This method …

4
ArcObjectsではなくArcPyを使用してArcMapの開いている属性テーブルを更新しますか?
ArcMapのarcpyからCalculate Field GPツールを実行しています。行の値が更新されると、キャッシュの再読み込みツール([テーブルオプション]> [キャッシュの再読み込み])を使用するまで表示されません。ArcObjectsを使用せずに属性テーブルを自動的に更新するにはどうすればよいですか? 私が提案し、@ blah238として定義クエリ更新しようとしたのpythonを使用して、どのようにあなたの「リロードキャッシュ」をオープン属性テーブルが、これは助けません。フィーチャクラスが編集セッションにある可能性があり、ソースデータへの接続を失いたくないため、データソースのリセットはオプションではありません。

2
.mxdファイルを作成するためのPythonスクリプトをお探しですか?
私はArcGISとPythonの両方が初めてです。私の要件は、以下の手動プロセスを自動化することです。 ArcGIS for Desktopでレイヤーを作成します。別の言い方をすれば、ArcMapドキュメント(* .mxd)を作成します。 作成されたArcMapドキュメント(ステップ1)をArcGIS Serverへのサービスとして公開します。 現在、これを手動で行っています。Pythonを使用してステップ2を自動化するスクリプトに出会いました。 ステップ1とステップ2を自動化するにはどうすればよいですか?

4
ArcPyでポイントペア座標からラインを作成しますか?
いくつかのポイントペア座標(開始ポイントと終了ポイント)があり、それらを線に変換する必要があります。これまで、a pippo.Point()、a の両方の座標のアペンドを使用してpippo.CalculateGeometry()各ピオントのジオメトリを定義し、pippo.append(defined geometry)ポイントのペアを識別してから、PointsToLineを使用してラインを取得しました。これは、数百の行に対して非常に時間がかかります。 これを行う簡単な方法はありますか? たとえば、各行の開始点と終了点を単一のテーブルの異なるフィールドに配置し、ポイントジオメトリを渡さずに行を直接インポートします。

4
ArcGIS Pythonスクリプトツールのドロップダウンボックスで選択されたレイヤーのフルパスを取得しますか?
ArcGISにPythonスクリプトベースのツールがあります。ツールのパラメーターの1つは入力ラスターファイルで、これは(ツールボックス内のツールのプロパティを使用して)ラスターレイヤーとして設定しました。つまり、ツールを実行すると、現在ロードされているラスターレイヤーのドロップダウンリストからそのパラメーターを選択するか、ファイルシステム内で新しいラスターレイヤーを見つけるためにナビゲートするオプションが表示されます。 次に、標準arcpy.GetParameterAsText(0)コードを使用して、Pythonスクリプトにパラメーターを取得しています。私は、ダイアログのテキストとして、ファイルシステムをブラウズして、ファイルを選択すると、これは、ファイルへの完全なパスがあるが、私はちょうどドロップダウンリストから選択したときに、私は戻って取得テキストはファイル名だけで正常に動作します(例:。 file.tif)。 私が実行しているコードは、ファイルへのフルパスを知っている必要があります-これをどうやって取得しますか? ファイルが常にワークスペースにあると想定できる場合、ファイル名をarcpy.env.workspaceに追加できますが、それを想定することはできません。同じ名前のレイヤーが見つかるまでロードされたすべてのレイヤーを反復処理し、そのフルパスを見つける必要がありますか、それとも簡単な方法がありますか?

2
ArcPyを使用してラインの中点を見つけますか?
ジオプロセシングフレームワークを使用して、たとえばPythonスクリプトでポリラインの中間点を計算するにはどうすればよいですか? polyline.centroidプロパティを返し、それが内または機能にある場合はtrue重心を。それ以外の場合、ラベルポイントが返されます。重心が非直線上にあることはめったにありませんが、これは私の目的には役に立ちません。 [ フィーチャの頂点からポイントへ]ツールには中間点オプションがありますが、これにはArcInfoが必要ですが、現在はありません。 オプションとして、ポリラインにメジャーを追加し、ラインに沿って50%のルートイベントを作成できます。 別の回避策は、ArcMapで[ジオメトリの計算]オプションを使用することですが、理想的には、このプロセスをスクリプトで自動化する必要があります。 より良い/より速い提案はありますか? 現時点では、ArcGIS 10.0(ArcInfoレベルライセンスへのアクセスなし)に制限されています。

3
フィーチャクラスのロックを解除
同じ機能クラスを使用するArcgisエンジンアプリの使用後または使用中に機能クラスを削除しようとすると、ロックに関するエラーが発生するため、コンピューターを再起動するまでこのロックに乗ることができません。 私はarcpyまたはarcobjects 10.1を使用してロックを削除する方法を知りたいのですが、ジオデータベースをロックするarcengineアプリ内のロックに乗ることができれば完璧でしょうそれらのうち、ArcObjectsを使用してロックを解放するソリューションを提供します。

5
ArcPyを使用してポリゴンをラインで分割しますか?
ArcGIS for Desktopを使用した物理的バリアを使用したバッファリングを検討していますか?、ArcGISのジオプロセシングツールを使用して、ポリゴンをラインでプログラム的に分割する方法がわからないことがわかりました。 手動で、[トポロジ]ツールバーの[ポリゴンのカット]ツールまたは[ ポリゴンの分割] ツールを使用しますが、モデルビルダーまたはPython groprocessingスクリプトツールを使用して同じタスクをどのように達成しますか? 右のバット私は、内のすべてのツールを考える分析tooboxなど連合、アイデンティティ、等が挙げられるが、これらはすべてポリゴンポリゴンツール、あるNOTポリゴンラインツール。分割ツールでさえ多角形-多角形です。 何か案は?

4
ArcPyで排他的スキーマロックエラーを回避しますか?
毎晩データベースの一部の機能を更新するためのスクリプトがあります(一部の機能をコピーして置換するためだけです)。この機能は「読み取り専用」です。私の問題は、これらの機能がユーザーによって開かれることを避けることができず、スクリプトが次のエラーを表示する可能性があることです。 ExecuteError: ERROR 000464: Cannot get exclusive schema lock. Either being edited or in use by another application. いくつかのコマンドを使用して、ファイルをコピーし、一部のユーザーによって開かれた場合でも、phytonスクリプトを強制できますか?スクリプトを実行する前にデータベース上のすべての接続を切断できますか?

2
PythonとArcGIS Desktopを使用して、別の属性の変更に基づいて新しい属性を計算しますか?
一連のgps時間エンコードポイントデータを、異なる属性に基づいて動作に分類しようとしています。 自宅に0、自宅に1の属性を作成しましたが、自宅からの旅行に番号を付けたいと思います(自宅01111111111110で開始および終了するため、ポイントのセットは1つの旅行になります)。旅行番号を持つ属性フィールドを追加しましたが、フィールドの計算方法がわからないため、ホーム/アウェイフィールドに基づいています。 GPSデータの例(「*」を使用して無関係な情報を示し、時間を1、2などとして単純にインデックス付けします)、上記の「ホーム/アウェイ」インジケータ、および希望のトリップインジケータ「トリップ」、計算する必要があります: Time Lat Lon Home/Away Trip 1 * * 0 0 2 * * 1 1 3 * * 1 1 .... 12 * * 1 1 13 * * 0 0 14 * * 0 0 15 * * 1 2 16 * * 1 2 .... …

1
データドリブンページを使用してテーブルを作成するPythonスクリプト
特定のデータドリブンページ内にある機能のテーブル(dbfに基づく)を表示するために、Pythonスクリプトを変換しようとしています。これまでのところ、特定のテーブルへのマップを正常に更新できるスクリプトがありますが、テーブルは更新されません。 ユーザーがArcToolboxからスクリプトを実行するときに3つの特定のフィールドで更新する必要がある3つのテキストボックスとして設定しています。 テーブルが更新されない理由に関する提案はありますか? import arcpy, sys, os #Reference current MXD mxd = arcpy.mapping.MapDocument("current") #Get input parameter Name = arcpy.GetParameterAsText(0) #Reference data frames mapatlasDF = arcpy.mapping.ListDataFrames(mxd, "Layers")[0] locatorDF = arcpy.mapping.ListDataFrames(mxd, "Locator Map")[0] #Reference appropriate layers atlasLyr = arcpy.mapping.ListLayers(mxd, "PinalCreekMapAtlas_HalfMile", mapatlasDF)[0] locatorLyr = arcpy.mapping.ListLayers(mxd, "Locator Map", locatorDF)[0] atlasoutlineLyr = arcpy.mapping.ListLayers(mxd, "Map Atlas …

4
ArcGIS Python SearchCursorファイルのロック?
シェイプファイルのフィールドから値を取得してユーザーに返すスクリプトがあります。 arcpy.SearchCursorが呼び出されると、ArcMap 10.0がファイルをロックし、スクリプトの実行が終了した後も削除されないようです。ロックを解除するには、ArcMapを閉じる必要があります。スクリプトでは、SearchCursorオブジェクトと行オブジェクトを使用した後に削除します。 スクリプトを機能させる方法は、以降の実行でワークスペースフォルダーを削除しようとしますが、ロックのためにできないことです...もちろん、ArcMapを閉じるまでです。 このロックを解除するためのアドバイスはありますか?

2
ArcPyを使用してフォルダー内の複数のジオデータベースのフィーチャクラスをリストしますか?
多数のジオデータベースを含むフォルダーがあります。ジオデータベース内にはフィーチャクラスがあります。Pythonスクリプトを使用して、これらのジオデータベースのフィーチャクラスのリストを取得したいと思います。これまでのところ、ジオデータベースのリストを取得しました。ジオデータベース内のフィーチャクラスのリストに関する提案はありますか? スクリプトの印刷アイテムの行は、次の結果をもたらします。 C:\output\data.gdb C:\output\otherdata.gdb C:\output\somethingelse.gdb 上記のジオデータベースでフィーチャクラスのリストを生成したい。以下は、これまでの私のスクリプトです。 import arcpy, os, sys from arcpy import env arcpy.env.workspace = "D:\\output" inWorkspace = arcpy.env.workspace workspaces = arcpy.ListWorkspaces("*", "FileGDB") for item in workspaces: print item #This part gives me the print statements I shared above # fcList = arcpy.ListFeatureClasses() #I haven't figured this part out …

2
ArcGIS Desktop用のPythonスクリプトツールでチェックボックスパラメーターを作成しますか?
執筆中のPythonスクリプトからArcGISツールを作成しています。チェックボックスパラメータを使用できるかどうか疑問に思っています。 ユーザーがフィーチャクラスを選択し、フィーチャクラスからモデルの最上層のフィールドを選択し、スクリプトに必要なレイヤーを選択できるようにするパラメーターが必要です最上層のフィールドから派生したチェックボックス構造で実行します。 これはPythonとArcGIS Desktopで可能ですか?

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