螺旋階段: 手すりパスの難題

楕円形の螺旋階段を設計する際、蹴込みから踊り場へと続く手すりのパスを、元の楕円の曲率を維持したままスムーズに延長するのは、Rhino/Grasshopperユーザーにとって共通の課題です。特に、手すりのスイープパスがプランビューで元のフットプリントからわずかにずれてしまうと、意図したデザインと異なる結果になりかねません。今回は、この「曲線延長における曲率制御」という、一見シンプルながら奥深い問題に迫ります。

なぜ難しい?NURBS曲線の壁

この問題の根源は、NURBS curveの特性にあります。元の楕円形は滑らかでも、その曲線を延長しようとすると、制御点(コントロールポイント)がフットプリントの外側に位置してしまい、正確な曲率を再現するのが困難になります。

単純にExtend Curveコンポーネントで延長し、交点を求め、その距離をフィードバックして再度延長するというアプローチを試しても、終点がフットプリントからずれてしまうことが多々あります。また、Interpolate Curveや新しいNURBS curveを生成するために既存の点リストに新しい点を挿入しても、元の曲線と完全に一致させるのは至難の業です。特に、半径が常に変化する楕円のような形状では、延長の仕方を正確に指定するのが非常に難しいのです。

BlendCrv: エレガントな解決策か?

この課題に対して、RhinoのBlendCrvコマンド(Grasshopperにも同等の機能を持つコンポーネントが存在します)を使用するという提案がありました。これは、二つの曲線間に滑らかなブレンド曲線を作成する非常にエレガントな方法であり、多くの場合に有効な解決策となります。

しかし、今回のケースでは、BlendCrvを用いても、プランビューで手すりのパスが元の楕円フットプリントからわずかに「さまよってしまう」という問題が残りました。手すりのプロファイルを内側のエッジに対して一貫させたいという要件があるため、このわずかなずれも許容できない場合があるのです。BiArcによるブレンドも試みられましたが、同様の課題に直面しました。

精度追求: 代替アプローチ

では、どうすればこの精度を追求できるのでしょうか。一つのアプローチとして考えられるのは、元の楕円の「サブカーブ」を正確な曲率を持つ部分として利用することです。しかし、このサブカーブの制御点を、手すりの蹴込み部分に正確に配置し、新しい曲線に変換する方法は簡単ではありません。

もし完全に正確な方法が見つからない場合でも、わずかなずれを許容し、手すり部分のボイドを「少し大きめ」に設定する、という実用的な妥協案も考えられます。しかし、理想はやはり、スーパーにクリーンで正確な方法を見つけることです。もしかしたら、曲線延長ではなく、最初からより全体的なアプローチでパスを構築する必要があるのかもしれません。

複雑な曲線制御の重要性

Rhino/Grasshopperにおける複雑な曲線の延長と曲率制御は、単なるツールの使い方以上の、設計意図を正確に形にするための重要なスキルです。特に、意匠性と機能性が密接に関わる螺旋階段のような建築要素では、わずかなずれが全体に影響を与えます。今回紹介した試行錯誤や課題を通じて、皆さんのGrasshopperでの曲線制御の理解が深まれば幸いです。