2021-01-28 01:09 AM
次のような繰り返し作業に何時間も費やしたことがあるかもしれません - 駐車スペースに1つずつ番号を割り当てる、ビューマップで未使用のアイテムを見つける、連続コピーを使用した各要素IDを編集する ‐ これらのタスクがいかに面倒でエラーになりやすいかをご存じのはずです。これらのタスクを自動的に実行できるとしたらどうでしょうか。
Archicad 24では、 実験的な機能としてArchicad-Python Connectionアドオン を公開しています。Pythonを使用すると、このようなタスクを高速に、自動的に、正確に実行できます。Pythonは優れた読みやすさと、平易な英語に似た親しみやすい構文を提供しています。
Python言語を知らなくても、恐れることはありません。まだまだPythonの良さを享受できるでしょう。現在は、https://graphisoft.com/downloads/pythonで入手可能なスクリプトの例がいくつかあります。
ARCHICAD-Python Connection には、インストールされたPython環境(バージョン3.7以降)と実行中のARCHICADインスタンス(バージョン24以降)が必要です。
Pythonをインストールするにはさまざまな方法があります。最も簡単な方法は、こちら から最新のPythonバージョンを直接ダウンロードして、インストーラを実行することです。デフォルトのオプションでインストールすることをお勧めします。
ArchicadなしでPythonスクリプトを実行することはできますが、Pythonパレットはスクリプトを管理および実行するためのよりユーザーフレンドリーな方法を提供します。これを開くには、[作業環境]ダイアログでPythonパレット実験機能を有効にする必要があります。
Pythonパレットは、コンピューターに何かが不足している場合に通知します。Pythonがインストールされていない場合、 [Pythonのインストール]ボタンをクリックすると、Pythonの最新バージョンをダウンロードするためのPythonの公式Webページが開きます。
|
|
Archicad-Python Connection が まだインストールされていない場合、Connectionのインストールボタンは不足しているパッケージを自動的にインストールします。 |
Pythonとの接続が確立されると、Pythonパレットを介していくつかのスクリプトを実行する準備が整います。
使用されているPython環境のバージョンを確認するには、ボタンをクリックします。
複数のバージョンがインストールされている場合は、ボタンを使用してさまざまなバージョンを選択できます。
注:現在、PythonパレットはArchicadを再起動しパレットが開かれるたびに更新を確認する必要があります。したがって、インターネット接続はパレットを開くために必要です。
Pythonパレットには、Pythonスクリプトを管理および実行するためのいくつかの基本的な関数が含まれています。
コンピュータの複数の場所に保存されているスクリプトを表示できます。 ボタンをクリックしてフォルダを追加します。パレットには、メインフォルダー内の実行可能なすべてのスクリプトが一覧表示されます(サブフォルダーを調べることはできません)。
ボタンはリストを更新します。パレットは、追加されたフォルダに新しいスクリプトがあるかどうか、またはスクリプトが移動/削除されたかどうかを確認します。
フォルダを選択しているときにをクリックすると、そのフォルダがパレットから削除されます。アクションを確認するためのダイアログが表示されます。
Pythonパレットでスクリプトを実行するには、次のいずれかを実行できます。
イベントは、パレットの コンソール フィールドに1つずつ表示されます。プロセスが終了すると、パレットに結果が表示され、スクリプトが正常に実行されたかどうかが通知されます。
注:Pythonスクリプトの実行によって行われたすべての元に戻すことができる変更は、1つの元に戻す手順で元に戻すことができます。たとえば、スクリプトが複数の要素のプロパティ値を変更した場合、使用できる元に戻す手順は1つだけで、すべてのプロパティ値が元の状態にリセットされます。
スクリプトがArchicadでは元に戻せない変更を行った場合(たとえば、ナビゲーターのマップの表示でアイテムを移動または名前変更した場合)、それらの変更を元に戻すことはできません。
椅子の番号付け
私たちは通常、連続コピーを使用して、エリア(例.講堂)内に椅子を配置します。ただし、椅子が連続コピーされると、元のオブジェクトの要素IDもすべての新しいオブジェクトに複製されます。要素IDを変更してすばやく番号を付け直すために、Chairnumberingというデモスクリプトを作成しました。
スクリプトが実行されると、すべてのフロアに配置された 椅子 として分類されたすべてのオブジェクトのIDが変更されます。非表示のオブジェクトはこの影響を受けません。
カスタマイズせずにスクリプトを正常に実行するには、次の要件を満たす必要があります。
スクリプトは、オブジェクトのZ座標を使用して行を識別します。デフォルトでは、同じ列の椅子のZ座標間の最大差が0.25m未満の場合、椅子は同じ列にグループ化されます。
カスタマイズオプションの詳細については、ダウンロードしたパッケージ内の添付のPDFガイドをご覧ください。
ビューマップで未使用のアイテムを移動する
このスクリプトは、ビューマップで未使用のアイテムを見つけて、新しいフォルダーに移動します。アイテムがレイアウトに配置されておらず、発行セットによって参照されていない場合、そのアイテムは未使用と見なされます。
注:ナビゲーター項目の移動は元に戻せません。したがって、このスクリプトによって行われた変更は元に戻せません。
カスタマイズせずにスクリプトを正常に実行するには、次の要件を満たす必要があります。
このスクリプトは、現在開いているArchiCADプロジェクト由来のものは必要としません。
PythonパレットなしでもArchiCADPythonAPIを使用できることに注意してください。Archicad pypiパッケージ(Python Wrapper)が既にインストールされている場合は、どこでもPythonスクリプトを実行できます(ターミナル内、またはVisual Studio Codeなどのお気に入りの統合開発環境内)。