数理・データサイエンス・AI 入門
Python で学ぶ建築デザイン
ブラウザだけで Python を実行し、Grasshopper と同じ書き方でジオメトリを生成して確かめられる演習環境つきの教材です。Rhino も Grasshopper も、Python のインストールも必要ありません。
はじめに読んでください
本文の右側(画面が狭いときは右下のボタン)に GHPython コンポーネントを模した演習環境があります。
左のスライダが入力、まん中が Python エディタ、右の出力が下の Rhino ビューポートに描かれます。
スライダを動かすと自動で再計算されるところも Grasshopper と同じです。
初回だけ Python 実行環境(約 10 MB)をダウンロードするため、 インターネット接続が必要です。2 回目以降はキャッシュから起動します。
初回だけ Python 実行環境(約 10 MB)をダウンロードするため、 インターネット接続が必要です。2 回目以降はキャッシュから起動します。
第 10 回 ・ 2025/12/1
Python で学ぶ建築デザイン
変数・型・演算子から始め、スーパー楕円と押し出しでパラメトリックな形をつくる。
第 11 回 ・ 2025/12/8
文字列と入出力・条件分岐/GHPython で家具デザイン
文字列と input/split で仕様を受け取り、if・elif・else で形状そのものを切り替える。
第 12 回 ・ 2025/12/15
while 文と for 文/GHPython で簡易シミュレーション
条件で回る while と回数で回る for。高さ制限まで積むスラブ、円周に配る柱。
第 13 回 ・ 2025/12/22
関数・オブジェクト・リスト/GHPython でジオメトリデザイン
処理を関数にまとめ、リストと辞書で集計する。ファサードの窓割とトラスの重量推定。
自由制作
GHPython サンドボックス
白紙のコンポーネントとスライダで自由に形をつくる。このページで使える Rhino.Geometry の一覧つき。
この教材について
Rhino も Grasshopper も要りません
Grasshopper 本体はブラウザでは動きませんが、この教材では
Rhino.Geometry の互換ライブラリをブラウザ用に実装しています。
授業で書く rg.Point3d・rg.Polyline・rg.Extrusion.Create といった
コードは、そのままここで動きます。実物の Rhino より機能はずっと少ないですが、
この授業の範囲は十分にカバーしています。
Python の実行Pyodide(CPython を WebAssembly にしたもの)
3D 表示p5.js の WEBGL モード
エディタCodeMirror(行番号・シンタックスハイライト付き)
ジオメトリRhino.Geometry 互換シム(この教材のために実装)
操作のしかた
| 操作 | 結果 |
|---|---|
▶ 実行 または Ctrl + Enter | コードを実行する |
| スライダをドラッグ | 入力値が変わり、自動で再計算される |
| ビューポートをドラッグ | 視点を回す(スクロールで拡大縮小) |
| 本文を広く | 右の演習パネルを畳み、見出し・本文を優先表示する |
| 最初から | 編集内容を捨てて、最初の穴あきコードに戻す |
| 提出 | いまのコードをサーバへ提出する(教員が確認できます) |
書いたコードは自動保存されます
演習ごとにブラウザの localStorage へ保存されるので、ページを閉じても消えません。
授業での提出は 提出 ボタンを押してください(学籍番号の登録が必要です)。
うまく動かないとき
- ずっと「準備しています」のまま:ネットワークに接続されているか確認してください。
学内のプロキシで
cdn.jsdelivr.netが塞がれている場合は起動できません。 - 「実行中断」と出る:無限ループになっています。
whileの条件かbreakを見直してください(5 秒で自動的に打ち切ります)。 - EOFError と出る:
input()の回数に対して標準入力パネルの行が足りません。 行を追加してください。