ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
テンプレート
テンプレートがありません。
アーキテクチャ — Server と Project/Model/Version
中心の Speckle Server に、コネクタや SDK、Web フロントエンドが接続する構成。データは Project → Model → Version という入れ子の階層で管理されます。新旧用語の対応表とあわせて全体像をつかみましょう。
この記事の要点
- Speckle は Server を中心に、Project → Model → Version という階層でデータを管理する
- 新旧用語は対応している:Project=旧 Stream、Model=旧 Branch、Version=旧 Commit
- 実データはバージョンに紐づくオブジェクトツリー(Base オブジェクト群)として保存される
- クライアントはアクセストークンで認証し、GraphQL API 経由でサーバとやり取りする
- コネクタや SDK は、この API を通じてオブジェクトを送受信している
この記事は Speckle の内部構造を整理します。Speckleとは を読んだ前提で、データがどんな階層で管理され、クライアントがどう認証して通信するかを見ていきます。データの中身(オブジェクト)の話は次の オブジェクトモデル で深掘りします。
1全体構成(Server とクライアント)
Speckle のアーキテクチャは、中心に Speckle Server があり、その周囲に各種クライアント(コネクタ、SDK、Web フロントエンド、Viewer)が接続する構成です。
- データの保存先であり、GraphQL API を公開する中核
- 商用クラウドとして提供されるほか、自前でも構築できる(ホスティング)
2データの階層(Project / Model / Version / Object)
Speckle のデータは入れ子の階層で整理されます。
Object(オブジェクト) は、Version が指し示す実データです。ルートとなる Base オブジェクトから、子オブジェクトへとツリー状に広がります(オブジェクトモデル 参照)。関係を一言でいえば、「Project の中に複数の Model があり、各 Model は複数の Version を時系列に持ち、各 Version が 1 つのオブジェクトツリーを指す」という構造です。
3新旧用語の対応表(最重要)
Speckle は旧版(v2 系)と新世代で主要な用語が変わりました。古い資料や旧版の UI を見るときに混乱しやすいため、対応関係を必ず押さえてください。
| 新世代 | 旧版(v2) | 役割 | Git でのたとえ |
|---|---|---|---|
| Project | Stream | データの最上位の入れ物・共有単位 | リポジトリ |
| Model | Branch | 分野・用途ごとの枝分かれの単位 | ブランチ |
| Version | Commit | send ごとに作られるスナップショット | コミット |
| Object | Object | 実データ(変わらず Object) | ツリー/ブロブ |
このたとえはあくまで理解の補助です。Speckle の Model は Git のブランチほど厳密なマージ概念を持つわけではなく、「同じ Project 内でデータを目的別に分ける枝」という運用的な意味合いが中心です。古い資料を読むときは、まずこの対応表を手元に置き、Stream とあれば Project、Branch とあれば Model、Commit とあれば Version と頭の中で読み替えると、新旧どちらの記述でも迷わず追えるようになります。
4認証(アクセストークン)
クライアントがサーバにアクセスするには認証が必要です。基本は パーソナルアクセストークン(PAT) を使います。トークンには操作範囲を絞る「スコープ」を設定でき、たとえば読み取りのみ、ストリーム作成可、といった権限を付与できます。
必要最小限のスコープのトークンを発行し、環境変数などで管理する
トークンをソースコードに直書きする(秘密情報の漏えいにつながる)
コネクタや SDK は、ユーザのアカウントに紐づいたトークンを使ってサーバにアクセスします。自動化スクリプトでは、必要最小限のスコープのトークンを発行して使うのが安全です。
5GraphQL API
Speckle Server は GraphQL API を公開しています。REST のように URL ごとにエンドポイントが分かれるのではなく、単一のエンドポイントに対してクエリを投げ、必要なフィールドだけを取得・更新する方式です。
- Project / Model / Version の一覧取得や作成、メタデータの読み取りなどが API で行える。
- 大きなオブジェクトデータ本体は、GraphQL とは別の専用の転送経路(Transport の仕組み)でやり取りされる。
- SDK(specklepy など)は、内部でこの GraphQL API を呼び出して階層情報を操作している。
API の全体像は API概要 も参照してください。
6クライアントから見た流れ
まとめると、クライアントがデータを送るときは、次の順序になります。受け取るときは逆に、Version が指すオブジェクトツリーを取得して、各ツールのネイティブ要素へ復元します。
この流れを支えているのが、(1) 認証によるアクセス制御、(2) Project / Model / Version という階層、(3) 内容ハッシュで管理されるオブジェクトツリー、という 3 つの要素です。コネクタも SDK も Web フロントエンドも、見た目こそ違え、内部ではこの同じ仕組みの上で動いています。したがって、どのクライアントを使う場合でも「どの Project / Model に、どの Version として送るのか」を意識することが、Speckle を扱う上での共通の考え方になります。
この具体的な操作は send/receive の基本ワークフロー で扱います。データそのものの構造を理解するには、次の オブジェクトモデル に進んでください。
→次に読む
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
テンプレート
テンプレートがありません。
子ページはありません
- Speckleとは
- アーキテクチャ(Server/Project/Model/Version)
- Speckleオブジェクトモデル
- コネクタ
- send/receive の基本ワークフロー
- Revit ⇄ Speckle の往復ワークフロー
- specklepy(Python SDK)入門
- .NET SDK 入門
- Speckle Automate
- Speckle Viewer・埋め込み
- 自前ホスティング(Docker)
- Speckle と IFC の違い・使い分け
- データ連携の実務パターン
人気ページ
- 1 建築図面の縮尺と寸法表記 — 1/100・1/50 の使い分けと mm 基準・面積をやさしく解説
- 2 Revit ファミリの作り方|テンプレート・参照面・パラメータ化・タイプ作成の手順
- 3 Revit ワークシェアリング徹底解説|ワークセット・セントラルファイル・同期(SWC)・クラウド共同作業
- 4 建築とは — 建築物の定義・建築と土木の違い・ライフサイクルをわかりやすく解説
- 5 Revit パラメータの種類まとめ|共有・プロジェクト・ファミリ・グローバル・組込みの使い分け
- 6 建築・BIM 総合Wiki — 建築の基礎からBIM・Revit・Speckleまで体系的に解説
- 7 通り芯・GL・FL・SL・階高・天井高 — Revit の通り芯/レベルの土台をやさしく理解する
- 8 Revit 共有パラメータとは|作り方・GUID・タグ/スケジュール連携をわかりやすく解説
- 9 Revitのパラメータ — 共有(GUID)/プロジェクト/グローバル/組込み(BuiltInParameter)の違いと連携
- 10 BIM座標系の基礎|内部原点・基準点・測量点・共有座標と真北/プロジェクト北
最近更新/作成されたページ
- Revit 共有パラメータとは|作り方・GUID・タグ/スケジュール連携をわかりやすく解説 2026-07-02 01:01:35
- Revit パラメータの種類まとめ|共有・プロジェクト・ファミリ・グローバル・組込みの使い分け 2026-07-02 00:55:31
- Revit ファミリの作り方|テンプレート・参照面・パラメータ化・タイプ作成の手順 2026-07-02 00:55:30
- Dynamo入門|Revitビジュアルプログラミング・ノードとワイヤ・Pythonノード・Dynamo Player 2026-06-29 15:23:47
- 建築図面の縮尺と寸法表記 — 1/100・1/50 の使い分けと mm 基準・面積をやさしく解説 2026-06-29 15:23:47
- 建築の3分野とは|意匠・構造・設備(MEP)の役割分担とBIMの分野別モデル 2026-06-29 15:23:47
- specklepy入門|Python SDKでSpeckleClient認証・operations.send/receive 2026-06-29 15:23:47
- Speckle .NET SDK入門|NuGet導入・認証・Base作成・send/receiveとRevitアドイン連携 2026-06-29 15:05:23
- Speckle Viewerとは|Web3D表示・プロパティ確認・iframe埋め込みと@speckle/viewer 2026-06-29 15:05:23
- 日本のBIM動向 — 国交省BIM/CIM・建築BIM推進会議・ガイドラインをわかりやすく整理 2026-06-29 15:05:23
- Speckleデータ連携の実務パターン|数量集計・Power BI・QA・他DB連携のパイプライン 2026-06-29 15:03:33
- Speckle Serverセルフホスト|docker-compose構成とデータ主権・運用設計 2026-06-29 15:03:33
- Speckle Automateとは|Version公開トリガーで自動QA・命名規約チェックを走らせる仕組み 2026-06-29 15:03:33
- SpeckleとIFCの違い|標準ファイル交換とライブ連携の比較表と併用の現実解 2026-06-29 15:03:33
- Speckleとは|OSSのAECデータプラットフォームをやさしく解説 2026-06-29 15:03:32
コメントを削除してもよろしいでしょうか?