
2026/02/19 0:53
ガーメント・ノーテーション言語:衣服の構造を記述するための形式的な説明言語
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
要約:
GNL(Garment Notation Language)は、衣服の構造を曖昧さなく機械可読で記述できる形式言語です。主要な概念としては、ボディに基づく座標、位相表面表現、構築順序のエンコード、および単純要素から複雑な衣服を合成する能力があります。例示された構文では、布地特性、パターン配置(前面・背面・袖)、開口部(襟元・裾)と、
S(縫製)や F(折りたたみ)のような操作を用いた構築ステップでTシャツを定義する方法が示されています。GNL は Peggy を対象にした PEG 文法で正式に定義されており、パーサーは豊富に型付けされた抽象構文木(AST)を生成し、レンダラーが実行時にそれを消費します。リポジトリには npm ワークフロー(
npm install、npm run generate、npm test)が用意されており、パーサーの生成とすべての例のテストが可能です。ライブビューアは GNL ファイルを解析し、縫い目線・寸法・構築詳細を含む組み立てられた衣服ビューや、繊維線・形状アウトラインを示すフラットパターンピースをレンダリングします。例として T‑シャツ、ウェアスカート、ジャケットカラーがあり、システムは Korosteleva NeurIPS 2021 データセットを JSON‑to‑GNL コンバータで統合しています。このコンバータは初回実行時に GitHub から自動的に21のテンプレート(tee, skirt, pants, dress)をダウンロードし、原始的な幾何学入力と変換された意味論的出力を直接比較できるようにします。
現在の仕様はドラフト v0.2 で、粒度パラメータ、方向性イーズ、プリンセスシーム(
EDGE)、裏地(LAYER)、およびコンポーネント合成コマンド(USE/ATTACH)が含まれています。仕様の洗練は、衣服製作者・パターンドラフタ―・計算デザイナーからのフィードバックを通じて進められます。本プロジェクトに関する全権利は保留されています。
本文
GNL — Garment Notation Language
服装構築のための形式的記述言語
ライブビューアーで試してみてください。
ダンスはラバノテーション、音楽は五線譜、建築は平面図・断面図・立面図の規約を持っています。GNL は同じ厳密さを衣服に適用し、妥当な表現があれば曖昧さなくて構築できる生成的記述言語です。
コアコンセプト
- ボディアンカリング – 体を座標系とし、解剖学的ランドマーク(
)や領域(@shoulder.L
)を用います。%torso.front - トポロジカル – 衣服は境界と開口部を持つ表面です。
- 構築型 – 説明は最終形だけでなく、作成順序もエンコードします。
- コンポーザブル – 複雑な衣服は単純要素の合成です。
速習例
GARMENT t_shirt [SYM] { FABRIC: M(160gsm, fluid, biaxial:15%, 1.0, knit.jersey) front = P(%torso.front, contour, 1.15) back = P(%torso.back, contour, 1.15) sleeve = P(%arm[0..0.4], contour, 1.2) neck = O(@neck, circle, body+8cm) hem = O(@hip, circle, body+10cm) BUILD: S(front.shoulder, back.shoulder, serged) >> S(sleeve.cap, {front.armhole, back.armhole}, serged) >> S(front.side, back.side, serged) >> F(hem, 2.5cm, in) }
文法
言語は Peggy を対象とした PEG 文法で正式に定義されています。生成されるパーサは型付き AST を返し、実行時にレンダラの内部フォーマットへ変換されます。
npm install # Peggy(開発依存のみ)をインストール npm run generate # grammar/gnl.peg から viewer/src/gnl-parser.js を再生成 npm test # すべての例に対して parse + adapter テストを実行
ビューア
リポジトリにはライブビューアが含まれ、GNL を解析し組み立った衣服と平面パターンピースを両方描画します。
-
組み立て表示 – 左側に GNL を書き、右側で縫い目線・寸法注記・構築詳細付きの完全な衣服を見る。
- T‑シャツ
- ラップスカート
- ジャケットカラー
-
パターンピース – 「Pieces」を切り替えて、形状アウトライン・縫い目線・寸法付きの個別平面パターンを確認。
Korosteleva データセットコンバータ
リポジトリには Korosteleva NeurIPS 2021 データセット(JSON で表現された 2D パネル幾何)から GNL への変換ツールが含まれています。
# 初回実行時に GitHub から 21 テンプレートを自動ダウンロードし、すべて変換 node converter/convert.js
tee, skirt, pants, dress の 4 つのサンプルテンプレートもビューアで直接利用可能です。例一覧ドロップダウンの「Korosteleva Dataset」セクションから選択してください。GNL/JSON トグルにより、元の幾何入力と変換後の意味的出力を比較できます。
マッピング手法の詳細は
converter/README.md を参照ください。
ドキュメント
- 完全仕様 – v0.2 の完全な仕様書
- Star History
ステータス
v0.2 — 草案。グレインパラメータ、方向性イーズ、プリンセスシーム(EDGE)、裏地(LAYER)、コンポーネント合成(USE/ATTACH)を含む開始点です。実際に使用し、批評・衣服作り手・パターンドラフタ―・計算デザイナーからのフィードバックで洗練される必要があります。
ライセンス
全著作権所有。