グラフィソフト開発パートナー

development partner

グラフィソフト開発パートナーは、ARCHICADのカスタマイズ開発スキル(GDLやAPIなど)を持つ会社です。お客様のニーズに応じた開発を安心してご依頼いただけます。

APIとは「アプリケーション プログラミング インタフェース」を意味します。 プログラマーがARCHICADの機能を拡張するツール(「アドオン」)を開発するために使用できるソフトウェア開発環境のことです。
ARCHICADの機能はバージョンごとに拡張されますが、各国の事情または専門分野の需要が異なるので、それだけでAEC市場のさまざまなニーズを満たすことはできません。GRAPHISOFT社の開発ポリシーは、ARCHICADを”無駄をなくしより効率良く処理できるものに保つこと”です。つまりARCHICADをプラットフォームとして、共通に必要とされるコアのAEC機能だけを整えることです。API開発キットは、アドオンの形で必要なカスタム機能を開発できる環境を提供します。アドオンと言っても、開発者が必ずソリューションを一から「組み立て」しなければならないというわけではありません。ARCHICADのコア機能を利用したり、または標準機能の一部になることも可能です。例えば、DXF/DWG入出力機能や通り芯ツールなどは標準機能の一部としてARCHICAD製品に組み込まれています。
主に三つの領域の機能追加が想定されています。
- ローカル機能の開発
建築や建設業界の共通機能に加え、各国や地域別に設計、構造または法規などに特徴があります。GRAPHISOFT社では、ローカルパートナーと緊密に協力し、実務にあった「ローカル」機能を開発していただくことを期待しています。
- 特殊機能の開発
ARCHICADがベースとなる特殊分野向けの機能開発のニーズが高まっています。例えば、ログハウス設計、2X4などのソリューション提供など、特殊分野での対応はGRAPHISOFT社の開発戦略目標の一つです。
- カスタマイズ
近年、ARCHICADを利用する大手企業が増えているため、カスタマイズの需要が増しています。 APIを活用して、企業のニーズに合ったカスタム開発が可能です。
ARCHICADをカスタマイズする手段はAPI開発だけではありません。GDLプログラミングによるカスタマイズも可能です。また、GDLオブジェクトとAPIアドオンを組み合わせて開発することは、ARCHICADの機能を強化する最も有効な方法の一つです。これらのプログラミング手法は、幅広いツールを提供でき、AEC市場におけるさまざまな問題を解決することが可能となります。
API開発者は、CまたはC ++プログラミング言語の経験が必要です。また、ARCHICADの基本機能について十分ご理解いただくことが前提です。
API開発キットの目的は、開発者にBIMデータにアクセスまたは変更できるアドオンを開発する手段を提供することです。 API開発キットは機能に応じて4つの主要なグループに分けられます。
- データベース機能
これらの機能により、BIMのデータベースにアクセスし、変更することができます。 APIキットにあるElement Testサンプルをご参照ください。
- インタフェース機能
これらの機能により、アドオンでグラフィカルユーザーインターフェイス(GUI)を作成できます。 VIPツールにあるプロファイラー機能は良い例で、 OSプラットフォームに依存しないDialog ManagerとAPIの入力機能が利用されています。
- 統合機能
これらの機能によって、ARCHICADの「操作イベント」を取得することで、アドオンをARCHICAD環境に緊密に統合できるさまざまな可能性が実現できます。簡単な例では、ユーザーのお気に入りの選択を保存して復元できるような選択アドオンで、すべての選択変更をキャッチし(選択、選択解除)、それに応じてインタフェースのステータスを変更します。
- 開発機能
GDLなどの開発を容易に行うことができます。 これに関する良い例は、LibPart testのサンプルアドオンをご参照ください。
- ARCHICADもしくはARCHICAD Solo商用版
- ARCHICADバージョンに対応したAPI開発キット
- Windows環境の場合
Windows 8.1, 10(64-bit)
Microsoft Visual Studio 2015 Update3 (ARCHICAD21以降)
- MacOS 環境の場合
MacOS 10.11 以上
最新のXcode
まず、ARCHICADもしくはARCHICAD Solo商用版をお持ちでない方はご購入いただき、VIPサービスにご加入いただいて、標準のサポートが受けられる環境をご用意いただく必要があります。GRAPHISOFT開発パートナー契約(年額:240,000円)をご締結いただいた後、API開発サイトにてAPIキットが入手できます。 開発契約の詳細について、お問い合わせは以下のメールにてお願いいたします:
dev@graphisoft.co.jp
GRAPHISOFT社と開発パートナーはユーザーのニーズに合わせて幅広いアドオンを開発しています。 APIキットの開発だけでなく、APIの利用側でもあるGRAPHISOFT社は、ARCHICADのリリースとともに、API開発キットの継続的なアップグレードに取り組んでおります。 API機能を改善するためにバグや提案のご報告を歓迎しております。GRAPHISOFT社はこれらのご要望をAPI開発キットの将来のリリースに組み込むよう最善を尽くします。
GDLはARCHICADに内蔵され、BASICに似たプログラミング言語です。GDLは、直方体(BLOCK)や円柱(CYLIND)などの形状を作成するさまざまなコマンドを使用し、これらを組み合わせてARCHICADで使用できる2Dおよび3Dオブジェクトを構築できます。窓、ドア、オブジェクト、ランプ、ラベル、階段などがこの言語によって作成されており、これらオブジェクトを総称してライブラリ部品と呼びます。
ARCHICADはライブラリ部品を作成するために、いくつか簡単な方法を提供しています。DXF・DWGなどの3Dデータをインポートするとオブジェクトに変換できます。またARCHICADの標準ツールでモデリングした形状をライブラリ部品として変換することができますし、その機能をより拡張したアドオンもあります。GDLを自らで記述できることは、それらの部品をより望ましいものに修正することができるようになります。また一からGDLをプログラミングすることは、いずれの方法よりさらに可能性のある部品を作成することができます。
- 複雑な形状のモデリング
GDLは簡単な形状から複雑な形状までさまざまなコマンドを使用できるため、壁や屋根、スラブなどの標準ツールだけでは作成できないモデルを作成できます。

- パラメトリックなモデル
パラメトリックなモデルの作成が可能になります。部品に幅や高さなどの形状、色や材質といった属性、価格や性能といったプロパティなどをパラメーター(可変値)として備えることができます。

- グラフィカルな編集機能
部品のパラメータを平面図や断面図、立面図、3Dウィンドウ上でグラフィカルに編集するための機能を実装できるため、モデリングの効率を高めることができます。

- ユーザーインターフェイス
パラメータや画像などを表示するインターフェイスを作成することができます。リストボックスやポップアップメニューなど様々なコマンドが用意されているため、ユーザビリティの高いインターフェイスを提供することができます。

- 最適化
FOR文やIF文などの一般的なプログラミングで使用される処理も記述できるため、条件に応じた柔軟なモデルを作成することができます。例えば、スケールに応じてモデルの詳細度を変更することで、ポリゴンの数を最適化できます。

- 独自アドオンとの連携
ライブラリ部品はそれ単体でも非常に有益なものになり得ますが、独自で開発したアドオンと連携することでその可能性を非常に広げることができます。(アドオン開発については別ページで紹介しています)

パラメトリック形状 パラメトリック属性 シンボル表現 スケール対応
GDLプログラミング
Library Part Marker ×
ARCHICAD要素を保存 × ×
インポート × × × ×
- 拡張子
ライブラリ部品はバイナリ形式(.gsm)が使用されます。ARCHICADをインストールすると標準で付属されているLPXML_Converterを使用してテキスト形式(.xml)に変換することができ、テキスト形式からバイナリ形式に戻すことも可能です。

- GUID
ARCHICADでは、ライブラリ部品はGUIDによって識別されます。GUIDは2つの部分で構成され、各部分は16進数の32文字です。最初の36文字はメインIDを表し、最後の36文字はリビジョンIDを表します。 メインIDは、ライブラリ部品が初めて保存されるときに作成されます。また、「名前を付けて保存」コマンドを使用してライブラリ部品を再保存する場合にも変更されます。
リビジョンIDは、ライブラリパーツを初めて保存するときにも作成されますが、「保存」コマンドを使用してライブラリパーツを上書き保存すると変更されます。
プロジェクトに同じ名前のライブラリ部品が存在しても、メインIDが異なっていれば別のものとして扱います。
メインIDを参照することで、ライブラリ部品の移行が可能になり異なるバージョン間でも互換性を保つことができます。

- サブタイプ
ライブラリ部品にはサブタイプが割り当てられています。ライブラリ部品は選択したサブタイプから、自動的にパラメータを継承し、どのツールで使用されるかが決まります。サブタイプはARCHICAD内に予め定義されていますが、独自で新しく定義することができます。

- Script: スクリプト
ライブラリ部品には下記のスクリプトを記述することができ、それぞれ異なる機能が備わっています。GDLは、2Dと3Dのスクリプトが分かれているため、それぞれ異なる表現をすることができます。(例:2Dはとても詳細な図面表現でありながら、3Dは簡易的なモデルであるオブジェクト)

  • マスター: 必ず実行されるスクリプト
  • 2D: 平面図やレイアウト図面など2Dモデルを構築する場合に実行されるスクリプト
  • 3D: 3Dや断面図、立面図など3Dモデルを構築する場合に実行されるスクリプト
  • インターフェイス: インターフェイス:
  • パラメータ: パラメータの値や状態をコントロールするためのスクリプト
  • 移行: ライブラリ部品を移行する場合に実行されるスクリプト
GDL学習をはじめるにあたり、デザインの手法、プログラミングの経験、幾何学の知識が重要になります。
最初はGDLリファレンスガイドを参考に、単純な形状からスタートしてください。段階を踏んで少しずつ自分の技量を上げながら学習してください。プログラミングの経験がある方は、既存のスクリプトを見ればGDLに慣れることができます。ARCHICADに標準で付属しているライブラリ部品を開き、スクリプトを観察することでさらに多くのことを学ぶことができます。

GDLに関するページ: