(57)【要約】【課題】トンネル設計の作成中、および変更中、指定されたトンネル設計パラメータが準拠されることを確実にする。【解決手段】トンネル設計をユーザインタフェース上のそれぞれのトンネルの視覚的モデルとしてロードし、ユーザがポイントを選択して、視覚的モデルの１つまたは複数のオブジェクトを定義する。ユーザがユーザインタフェース上の所望の位置に向けてポイントを移動させ、複数の位置を通るようにする。複数の位置のそれぞれを通るとき、選択されたポイント、および１つまたは複数の定義されたオブジェクトのそれぞれの配置のリアルタイムのプレビューを提供する。それぞれの配置が指定されたトンネル設計パラメータに準拠しない場合、プレビューがそれぞれの位置に更新することを防止すること、それぞれの配置を自動的に修正すること、または準拠しない１つまたは複数の定義されたオブジェクトを視覚的に示す。【選択図】図１Ａ
2017091539.tif 000002
【特許請求の範囲】
【請求項１】
トンネル設計パラメータにより鉱業トンネルを設計するコンピュータにより実施される方法であって、
トンネル設計に関する少なくとも１つのトンネル設計パラメータを提供するステップと、
コンピュータメモリから、コンピュータシステムにおいて前記トンネル設計をロードするステップであって、前記トンネル設計は、それぞれのトンネルの視覚的モデルとして提示され、前記視覚的モデルは、前記コンピュータシステムのユーザインタフェース上に表示されるステップと、
前記ユーザインタフェース上でポイントの選択を表すユーザ入力を受け取るステップであって、前記選択されたポイントは、前記視覚的モデルの１つまたは複数のオブジェクトを定義する、ステップと、
前記ユーザインタフェース上の所望の位置に向けて前記選択されたポイントを移動することを表すユーザ入力を受け取るステップであって、前記ユーザ入力が、前記選択されたポイントが前記移動中に複数の位置を通るようにする、ステップと、
前記選択されたポイントが前記複数の位置のそれぞれを通るとき、前記それぞれの位置が選択された場合、前記選択されたポイント、および前記１つまたは複数の定義されたオブジェクトのそれぞれの配置のリアルタイムのプレビューを提供するステップであって、前記リアルタイムのプレビューは、前記それぞれの配置が前記少なくとも１つのトンネル設計パラメータに準拠するかどうかのリアルタイムの決定を含むステップと、
前記１つの選択された位置において前記選択されたポイントをデジタル化する様態で、前記複数のプレビューされる位置のうちの１つの位置を選択することを表すユーザ入力を受け取るステップであって、前記デジタル化することは、前記１つまたは複数の定義されたオブジェクトを、前記ユーザインタフェース上に表示されるとき、前記視覚的モデルにおける前記それぞれのプレビューされる配置に調整するステップと、
コンピュータメモリにおいて、前記１つまたは複数の定義されたオブジェクトの調整された配置を反映するように前記トンネル設計を更新するステップと
を備えることを特徴とする方法。
【請求項２】
前記１つまたは複数の定義されたオブジェクトは、１つまたは複数のモデル化されたトンネルセグメントであり、前記選択されたポイントは、前記トンネルセグメントのモデル化されたエンドポイント、またはトンネルセグメント間のモデル化された頂点のいずれかであることを特徴とする請求項１に記載の方法。
【請求項３】
１つまたは複数の定義されたオブジェクトの前記配置を調整するステップは、定義されたオブジェクトを拡張するステップ、定義されたオブジェクトの間の角を変化させるステップ、定義されたオブジェクトの勾配を変化させるステップ、および定義されたオブジェクトの半径を変化させるステップのうちの少なくとも１つをもたらすことを特徴とする請求項１に記載の方法。
【請求項４】
前記少なくとも１つのトンネル設計パラメータは、勾配限度、セグメント間の勾配遷移限度、回転半径限度、およびコーナ角限度のうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記リアルタイムの決定が、前記それぞれの配置が前記少なくとも１つのトンネル設計パラメータに準拠しないことを示す場合、前記方法は、
前記ユーザインタフェース上の前記表示において、
前記ユーザインタフェース上の前記プレビューが前記通される位置に更新することを防止するステップ、
前記ユーザインタフェース上の前記プレビューにおいて、前記少なくとも１つのトンネル設計パラメータに準拠するように前記１つまたは複数の定義されたオブジェクトの前記それぞれの配置を自動的に修正するステップ、または
前記ユーザインタフェース上の前記プレビューにおいて、前記少なくとも１つのトンネル設計パラメータに準拠しない前記１つまたは複数の定義されたオブジェクトを視覚的に示すステップのうちの少なくとも１つを実行するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記それぞれの配置を前記自動的に修正するステップは、勾配遷移を、前記勾配遷移が勾配遷移限度パラメータに準拠しない場合、自動的に平滑化するステップを含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記それぞれの配置を前記自動的に修正するステップは、コーナ角がコーナ角限度パラメータに準拠しない場合、前記コーナ角を円弧で自動的に置き換えるステップを含むことを特徴とする請求項５に記載の方法。
【請求項８】
前記１つまたは複数の定義されたオブジェクトの前記調整された配置が前記少なくとも１つのトンネル設計パラメータに準拠することに失敗する場合、前記ユーザインタフェース上で、前記視覚的モデルのそれぞれの部分における前記失敗を視覚的に示すことを特徴とする請求項１に記載の方法。
【請求項９】
前記選択されたポイントは、前記視覚的モデルに追加されている新たなオブジェクト、または前記視覚的モデルにおいて変更されている既存のオブジェクトを定義することを特徴とする請求項１に記載の方法。
【請求項１０】
前記視覚的モデルは、３次元視覚的モデルであることを特徴とする請求項１に記載の方法。
【請求項１１】
トンネル設計パラメータによりトンネルを設計するためのコンピュータシステムであって、前記システムは、
ユーザインタフェースに通信可能に結合された少なくとも１つのプロセッサを備え、前記少なくとも１つのプロセッサは、
トンネル設計に関する少なくとも１つのトンネル設計パラメータを提供すること、および
前記少なくとも１つのプロセッサに通信可能に結合されたメモリから、前記トンネル設計をロードすることであって、前記トンネル設計は、それぞれのトンネルの視覚的モデルとして提示され、前記視覚的モデルは、前記ユーザインタフェース上に表示されることを行うように構成され、
前記ユーザインタフェースは、ユーザが、
前記ユーザインタフェース上でポイントを選択することであって、前記選択されたポイントは、前記視覚的モデルの１つまたは複数のオブジェクトを定義すること、
前記ユーザインタフェース上の所望の位置に向けて前記選択されたポイントを移動することであって、前記選択されたポイントが前記移動中に複数の位置を通るようにすること、および
１つの位置を選択することを行うことができるようにするように構成され、
前記少なくとも１つのプロセッサは、
前記選択されたポイントが前記複数の位置のそれぞれを通るとき、前記それぞれの位置が選択された場合、前記選択されたポイント、および前記１つまたは複数の定義されたオブジェクトのそれぞれの配置のリアルタイムのプレビューを前記ユーザインタフェース上で提供することであって、前記リアルタイムのプレビューは、前記それぞれの配置が前記少なくとも１つのトンネル設計パラメータに準拠するかどうかのリアルタイムの決定を含むこと、
前記ユーザが前記複数のプレビューされる位置のうちの１つの位置を選択した場合、前記１つの選択された位置において前記選択されたポイントを、前記１つまたは複数の定義されたオブジェクトを、前記ユーザインタフェース上に表示される前記視覚的モデルにおける前記それぞれのプレビューされる配置に調整することによってデジタル化すること、および
前記メモリにおいて、前記１つまたは複数の定義されたオブジェクトの調整された配置を反映するように前記トンネル設計を更新することを行うようにさらに構成されることを特徴とするコンピュータシステム。
【請求項１２】
前記１つまたは複数の定義されたオブジェクトは、１つまたは複数のモデル化されたトンネルセグメントであり、前記選択されたポイントは、前記トンネルセグメントのモデル化されたエンドポイント、またはトンネルセグメント間のモデル化された頂点のいずれかであることを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１３】
前記１つまたは複数の定義されたオブジェクトの前記配置を調整することは、定義されたオブジェクトを拡張すること、定義されたオブジェクトの間の角を変化させること、定義されたオブジェクトの勾配を変化させること、および定義されたオブジェクトの半径を変化させることのうちの少なくとも１つをもたらすことを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１４】
前記少なくとも１つのトンネル設計パラメータは、勾配限度、セグメント間の勾配遷移限度、回転半径限度、およびコーナ角限度のうちの少なくとも１つを含むことを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１５】
前記リアルタイムの決定が、前記それぞれの配置が前記少なくとも１つのトンネル設計パラメータに準拠しないことを示す場合、前記少なくとも１つのプロセッサは、前記ユーザインタフェース上の前記表示において、
前記ユーザインタフェース上の前記プレビューが前記通される位置に更新することを防止すること、
前記ユーザインタフェース上の前記プレビューにおいて、前記少なくとも１つのトンネル設計パラメータに準拠するように前記１つまたは複数の定義されたオブジェクトの前記それぞれの配置を自動的に修正すること、または
前記ユーザインタフェース上の前記プレビューにおいて、前記少なくとも１つのトンネル設計パラメータに準拠しない前記１つまたは複数の定義されたオブジェクトを視覚的に示すことのうちの少なくとも１つをリアルタイムで実行することを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１６】
前記少なくとも１つのプロセッサは、勾配遷移を、前記勾配遷移が勾配遷移限度パラメータに準拠しない場合、自動的に平滑化することによって、前記それぞれの配置を自動的に修正するように構成されることを特徴とする請求項１５に記載のコンピュータシステム。
【請求項１７】
前記少なくとも１つのプロセッサは、コーナ角がコーナ角限度パラメータに準拠しない場合、前記コーナ角を円弧で自動的に置き換えることによって、前記それぞれの配置を自動的に修正するように構成されることを特徴とする請求項１５に記載のコンピュータシステム。
【請求項１８】
前記１つまたは複数の定義されたオブジェクトの前記調整された配置が前記少なくとも１つのトンネル設計パラメータに準拠することに失敗する場合、前記少なくとも１つのプロセッサは、前記ユーザインタフェース上で、前記視覚的モデルのそれぞれの部分における前記失敗を視覚的に示すことを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１９】
前記選択されたポイントは、前記視覚的モデルに追加されている新たなオブジェクト、または前記視覚的モデルにおいて変更されている既存のオブジェクトを定義することを特徴とする請求項１１に記載のコンピュータシステム。
【請求項２０】
前記視覚的モデルは、３次元視覚的モデルであることを特徴とする請求項１１に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トンネル設計が指定された設計パラメータおよび許容誤差の範囲内に留まることを確実にすることに関する。
【背景技術】
【０００２】
鉱業において、トンネル設計は、トンネル設計が建設に関する業界標準を満たすことを確実にするように特定のトンネル設計パラメータに準拠しなければならない。例えば、トンネル設計のトンネルセグメントは、特定の勾配設計限度に準拠して、それらのトンネルセグメントが鉱業運営のために実現可能であり、安全であることを確実にしなければならない。従来のトンネル設計システムおよび方法は、鉱山技師が、特定のトンネル設計パラメータに基づいてトンネル設計を作成すること、または変更することを可能にし得る。しかし、これらのシステムおよび方法を使用してトンネル設計を作成した、または変更した後、鉱山技師は、依然として、トンネル設計の各部分が特定のトンネル設計パラメータに実際に準拠することを手作業で検査し、確認する必要がある。鉱山技師にとって、トンネル設計を手作業で検査することは、トンネル設計が要求されるトンネル設計パラメータに準拠することを確認するための効率的な方法でも、費用対効果の大きい方法でもない。さらに、トンネル設計を手作業で検査する鉱山技師は、トンネル設計における誤差を見落として、実現可能性および安全性を確実にする業界標準を満たさないトンネルの建設をもたらす可能性がある。
【発明の概要】
【０００３】
本発明は、トンネル設計の作成中、および変更中、指定されたトンネル設計パラメータが準拠されることを確実にすることによって、従来のトンネル設計システムおよび方法の問題に対処する。特に、本発明は、トンネル設計の作成中、および変更中にリアルタイムのフィードバックおよび案内を提供し、これは、特定のトンネル設計パラメータに準拠しないトンネル設計に対する追加および変更のリアルタイムの検出を含む。本発明は、鉱山技師が、トンネル設計に対して追加および変更を行う処理中（そのトンネル設計をコミットするのに先立って）、要求されるトンネル設計パラメータのそれぞれに照らしてそれらの追加または変更のリアルタイムの正確な検査を実行することによって、そのような検出を提供する。次に、本発明は、要求される（または特定の）トンネル設計パラメータに準拠しないトンネル設計の特定の部分、およびその部分が準拠しない正確な理由について鉱山技師に知らせるリアルタイムの視覚的フィードバックを提供する。また、本発明は、鉱山技師が、特定のトンネル設計パラメータに準拠しない様態でトンネル設計に追加を行うこと、またはトンネル設計を変更することを防止するように構成されることも可能である。さらに、いくつかのトンネル設計パラメータに関して、本発明は、トンネル設計をリアルタイムで自動的に修正して、追加および変更が要求される／特定のトンネル設計パラメータに動的に準拠するようにすることが可能である。
【０００４】
したがって、従来のトンネル設計システムおよび方法とは異なり、鉱山技師は、トンネル設計の各部分が特定のトンネル設計パラメータに実際に準拠することを手作業で検査し、確認する非効率で、費用が高く、誤りが生じやすい業務を有さない。それどころか、特定のトンネル設計パラメータに準拠しない処理中のトンネル設計に対する本発明のリアルタイムの正確なフィードバックおよび応答は、実現可能性および安全性に関する業界標準を満たすトンネル設計の製作を確実にする。
【０００５】
本発明は、トンネル設計パラメータによりトンネルを設計するためのコンピュータシステムおよび方法に向けられる。このコンピュータシステムおよび方法は、トンネルを設計するためにユーザインタフェースおよびコンピュータメモリに通信可能に結合された少なくとも１つのプロセッサを含むことが可能である。トンネルを設計するのに、このコンピュータシステムおよび方法は、このコンピュータシステムおよび方法が、トンネル設計の作成中および変更中に維持されることを確実にする、トンネル設計に関する要求されるトンネル設計パラメータを提供する。このコンピュータシステムおよび方法は、特定の（要求される）トンネル設計パラメータ、およびそれらのそれぞれの許容誤差を、デフォルトの値または保存された値としてコンピュータメモリからロードすること、またはユーザが、ユーザインタフェースにおいて要求されるトンネル設計パラメータ、およびそれらのそれぞれの許容誤差を指定することができるようにすることが可能である。ユーザが要求されるトンネル設計パラメータを指定する場合、このコンピュータシステムおよび方法は、トンネル設計の将来の変更のために要求される／特定のトンネル設計パラメータ、およびそれぞれの許容誤差を保存するようにコンピュータメモリを更新することが可能である。要求される／特定のトンネル設計パラメータは、勾配限度、セグメント間の勾配遷移限度、回転半径限度、セグメント間のコーナ角限度、および他の任意のそのようなトンネル設計パラメータを含むことが可能である。
【０００６】
このコンピュータシステムおよび方法は、コンピュータメモリから案件のトンネル設計をさらにロードする。そのトンネル設計は、変更のためにロードされている既存のトンネル設計であること、または空白のテンプレートもしくは他の初期フォーマットとしてロードされている新たなトンネル設計であることが可能である。このコンピュータシステムおよび方法は、ユーザインタフェース上に表示されたトンネル設計をそれぞれのトンネルの視覚的モデルとして提示する。その視覚的モデルは、３Ｄ空間においてユーザインタフェース上で提示されている３次元（３Ｄ）視覚的モデルであることが可能である。次に、このコンピュータシステムおよび方法は、ユーザインタフェース上のポイントの選択を表すユーザ入力を受け取る。例えば、このコンピュータシステムおよび方法は、ユーザ（例えば、鉱山技師）または他のコンピュータシステムが、視覚的モデルの１つまたは複数のオブジェクトを定義するユーザインタフェース上のポイントを選択することができるようにすることが可能である。選択されたポイントは、モデル化されたトンネル頂点、またはトンネルセグメントのモデル化されたエンドポイントなどのトンネル設計のモデル化されたポイントであることが可能である。その１つまたは複数の定義されたオブジェクトは、選択されたポイントによって定義される案件のトンネル設計の１つまたは複数のモデル化されたトンネルセグメントであることが可能である。このコンピュータシステムおよび方法は、ユーザインタフェース上の所望の位置に向け選択されたポイントの移動を表すユーザ入力を受け取ることによって、選択されたポイントを移動させることをさらにできるようにして、ユーザ入力が、ポイントをユーザインタフェース上の複数の位置を通る（traverse）ようにすることを可能にする。そのユーザ入力は、ユーザがポインティングデバイス（例えば、マウス）を使用することにより、受け取られることが可能である。
【０００７】
選択されたポイントが複数の位置のそれぞれを通るとき、このコンピュータシステムおよび方法は、そのそれぞれの位置がそのポイントを配置するために選択される場合、選択されたポイント、および１つまたは複数の定義されたオブジェクトのそれぞれの配置のリアルタイムのプレビューを提供する。ユーザインタフェース上に表示されるリアルタイムのプレビューの一環として、このコンピュータシステムおよび方法は、１つまたは複数の定義されたオブジェクトのそれぞれの配置が要求されるトンネル設計パラメータに準拠するかどうかのリアルタイムの決定を実行する。このコンピュータシステムおよび方法によるリアルタイムの決定が、それぞれの配置が要求されるトンネル設計パラメータに準拠しないことを示す場合、このコンピュータシステムおよび方法は、様々な方法でプレビューにおいて応答することが可能である。いくつかの実施形態において、このコンピュータシステムおよび方法は、ユーザインタフェース上のプレビューにおいて、トンネル設計パラメータに準拠するように１つまたは複数の定義されたオブジェクトのそれぞれの配置を自動的に修正することが可能である。例えば、それぞれの配置を自動的に修正することは、勾配遷移が要求される勾配遷移限度パラメータに準拠しない場合、勾配遷移を自動的に平滑化することを含むことが可能である。別の例として、１つまたは複数の定義されたオブジェクトのそれぞれの配置を自動的に修正することは、コーナ角が要求されるコーナ角限度パラメータに準拠しない場合、コーナ角を円弧で自動的に置き換えることを含むことも可能である。いくつかの実施形態において、このコンピュータシステムおよび方法は、ユーザインタフェース上のプレビューが、非準拠をもたらすポインティングデバイスの通された位置を表示するように更新することを防止することが可能である。他の実施形態において、このコンピュータシステムおよび方法は、ユーザインタフェース上のプレビューにおいて、要求される／特定のトンネル設計パラメータに準拠しない１つまたは複数の定義されたオブジェクトを視覚的に示す（例えば、赤で、または他の視覚的効果でハイライトする）ことが可能である。
【０００８】
このコンピュータシステムおよび方法は、複数のプレビューされる位置のうちの１つの位置を、その１つの選択された位置における選択されたポイントをデジタル化する様態で選択することを表すユーザ入力をさらに受け取ることが可能である。そのデジタル化することは、１つまたは複数の定義されたオブジェクトを、ユーザインタフェース上に表示される視覚的モデルにおけるそれぞれのプレビューされる配置に対して調整する。実施形態において、１つまたは複数の定義されたオブジェクトを調整することは、定義されたオブジェクトを拡張すること、定義されたオブジェクトの間の角を変化させること、定義されたオブジェクトの勾配を変化させること、および定義されたオブジェクトの半径を変化させることのうちの１つまたは複数をもたらす。１つまたは複数の定義されたオブジェクトの調整された配置が、要求される／特定のトンネル設計パラメータに準拠しない場合、このコンピュータシステムおよび方法は、ユーザインタフェース上の視覚的モデルのそれぞれの部分においてその失敗を視覚的に示すことが可能である。このコンピュータシステムおよび方法は、１つまたは複数の定義されたオブジェクトの調整された配置を反映するようにコンピュータメモリにおいてトンネル設計をさらに更新することが可能である。
【図面の簡単な説明】
【０００９】
前段は、同様の参照符号が異なる図のすべてにわたって同一の部分を参照する、添付の図面に例示される、本発明の例示的な実施形態のより詳細な説明から明白となろう。図面は、必ずしも一律の縮尺に従っておらず、代わりに、本発明の実施形態を例示することに重点が置かれている。
【図１Ａ】本発明の実施形態におけるトンネルを設計する例示的な概略のコンピュータ実施方法を示す流れ図である。
【図１Ｂ】本発明の実施形態におけるリアルタイムのプレビューを提供するためにトンネル設計データを構造化することを示す例示的な図である。
【図１Ｃ】本発明の実施形態におけるリアルタイムのプレビューを提供するためにトンネル設計データを構造化することを示す例示的な図である。
【図１Ｄ】本発明の実施形態におけるトンネル設計の視覚的モデルを示す例示的な図である。
【図２Ａ】本発明の実施形態における特定のトンネル設計パラメータの範囲内でトンネル設計を拡張する例示的なコンピュータベースの方法を示す流れ図である。
【図２Ｂ】本発明の実施形態における特定のトンネル設計パラメータの範囲内でトンネル設計を拡張する例示的なコンピュータベースの方法を示す流れ図である。
【図３Ａ】本発明の実施形態において使用される要求されるトンネル設計パラメータ（制限または制限する限度を定義する）を構成するための例示的なユーザインタフェースを示す図である。
【図３Ｂ】本発明の実施形態において使用される要求されるトンネル設計パラメータ（制限または制限する限度を定義する）を構成するための例示的なユーザインタフェースを示す図である。
【図３Ｃ】本発明の実施形態において使用される要求されるトンネル設計パラメータ（制限または制限する限度を定義する）を構成するための例示的なユーザインタフェースを示す図である。
【図３Ｄ】本発明の実施形態において使用される要求されるトンネル設計パラメータ（制限または制限する限度を定義する）を構成するための例示的なユーザインタフェースを示す図である。
【図３Ｅ】本発明の実施形態において使用される要求されるトンネル設計パラメータ（制限または制限する限度を定義する）を構成するための例示的なユーザインタフェースを示す図である。
【図４Ａ】本発明の実施形態におけるトンネルコーナ限度設計パラメータを使用するための例示的な方法を示す図である。
【図４Ｂ】本発明の実施形態におけるトンネルコーナ限度設計パラメータを使用するための例示的な方法を示す図である。
【図４Ｃ】本発明の実施形態におけるトンネルコーナ限度設計パラメータを使用するための例示的な方法を示す図である。
【図４Ｄ】本発明の実施形態におけるトンネルコーナ限度設計パラメータを使用するための例示的な方法を示す図である。
【図５Ａ】本発明の実施形態におけるトンネル勾配限度設計パラメータを使用するための例示的な方法を示す図である。
【図５Ｂ】本発明の実施形態におけるトンネル勾配限度設計パラメータを使用するための例示的な方法を示す図である。
【図５Ｃ】本発明の実施形態におけるトンネル勾配限度設計パラメータを使用するための例示的な方法を示す図である。
【図６Ａ】本発明の実施形態におけるトンネル回転半径限度設計パラメータを使用するための例示的な方法を示す図である。
【図６Ｂ】本発明の実施形態におけるトンネル回転半径限度設計パラメータを使用するための例示的な方法を示す図である。
【図７Ａ】本発明の実施形態におけるトンネルコーナ角限度設計パラメータを超えるトンネルコーナ角を修正するための例示的な方法を示す図である。
【図７Ｂ】本発明の実施形態におけるトンネルコーナ角限度設計パラメータを超えるトンネルコーナ角を修正するための例示的な方法を示す図である。
【図７Ｃ】本発明の実施形態におけるトンネルコーナ角限度設計パラメータを超えるトンネルコーナ角を修正するための例示的な方法を示す図である。
【図８Ａ】本発明の実施形態における勾配遷移限度設計パラメータを超えるトンネル勾配遷移を修正するための例示的な方法を示す図である。
【図８Ｂ】本発明の実施形態における勾配遷移限度設計パラメータを超えるトンネル勾配遷移を修正するための例示的な方法を示す図である。
【図８Ｃ】本発明の実施形態における勾配遷移限度設計パラメータを超えるトンネル勾配遷移を修正するための例示的な方法を示す図である。
【図９】本発明の実施形態におけるトンネル設計を実行するためのコンピュータ（または、デジタル処理）システムを示すブロック図である。
【図１０】本発明の実施形態が実施されることが可能である例示的なコンピュータネットワーク環境を示す概略図である。
【発明を実施するための形態】
【００１０】
本発明の例示的な実施形態の説明が後に続く。
【００１１】
トンネル設計の概略の方法
図１Ａは、本発明の実施形態におけるトンネルを設計する例示的な概略の方法１００の流れ図を示す。方法１００は、ユーザインタフェースおよびメモリに通信可能に結合されたコンピュータシステムによって実行されることが可能である。コンピュータシステムは、鉱業運営などの業界運営のためのトンネル設計の作成、視覚化、変更、および記憶のために特に実施されるシステムであることが可能である。また、コンピュータシステムは、トンネル設計の表示を視覚的３Ｄモデルとして提供するシステムのユーザインタフェースを含め、３次元（３Ｄ）空間においてこれらの機能を提供するように特に実施されることも可能である。
【００１２】
コンピュータ実施方法１００は、ステップ１１０において、要求される、または特定のトンネル設計パラメータがコンピュータシステムによって提供されることから始まる。トンネル設計パラメータは、トンネル設計の構成要素（例えば、トンネルセグメント）を変更している間、維持されなければならない範囲および許容誤差である。トンネル設計パラメータは、勾配限度（「最小±勾配」許容誤差オプションおよび「最大±勾配」許容誤差オプションを有する）、セグメント間の勾配遷移限度（「セグメント間の最大±遷移」許容誤差オプションおよび「最小遷移セグメント長」許容誤差オプションを有する）、回転半径限度（「最小回転半径」許容誤差オプションを有する）、およびコーナ角限度（「セグメント間の最大角」許容誤差オプションを有する）、または他のそのようなトンネル設計限度のうちの１つまたは複数に関する範囲および許容誤差を含むことが可能である。例えば、トンネル設計を変更することの一環として、ユーザが、トンネルセグメントを、そのトンネルセグメントと隣接するトンネルセグメントの間の角を変化させる様態で移動させた場合、その角に対する変化は、トンネル設計パラメータにおいて指定されるコーナ角限度の範囲内に維持されなければならない。コンピュータシステムは、要求される／特定のトンネル設計パラメータに関するデフォルトの値または保存された値をメモリからロードすること、およびユーザが、ロードされるトンネル設計パラメータを指定する、または調整するユーザインタフェース上のオプションを提供することが可能である。
【００１３】
次に、コンピュータシステムは、トンネル設計をそれぞれのトンネルの視覚的モデルとしてロードすることによって方法１００のステップ１２０を実行することが可能である。いくつかの実施形態において、ステップ１２０のトンネル設計をロードすることは、ステップ１１０のトンネル設計パラメータを提供することより前に実行されることが可能であることに留意されたい。視覚的モデルをロードすることは、システムのユーザが、ユーザインタフェースを介してロードオプションを選択することによって開始されることが可能である。いくつかの実施形態において、視覚的モデルは、システム、またはシステムに通信可能に結合された別のシステムのメモリに記憶された既存のトンネル設計を表す。記憶されたトンネル設計は、それぞれのトンネルにおける構成要素（例えば、トンネルセグメント）の位置付けを定義するデータを含む。例えば、そのデータは、トンネル頂点の位置、湾曲させられたトンネルセグメントの円弧半径がどこで隣接するトンネルセグメントに接するかを定義するパラメータ、または他のそのようなトンネル設計データを含むことが可能である。これらの実施形態において、システムは、記憶されたトンネル設計データを取り出すこと、およびそのデータを、システムのユーザインタフェース上に表示される視覚的モデルに変換することによって視覚的モデルをロードする。視覚的モデルは、それぞれのトンネル設計のトンネルの構成要素（例えば、トンネルセグメントおよびトンネル頂点）を表すオブジェクト（例えば、線、円弧、ポイント、および固体面（solid surface））の組合せとして表示されることが可能である。視覚的モデルの表示は、トンネルタイプ、トンネル状態、トンネル設計に存在する誤り、および視覚的モデルの表示と関係するユーザオプションにさらに基づくことが可能である。他の実施形態において、視覚的モデルは、空白のテンプレートまたは他の初期モデルフォーマットとしてユーザインタフェースにおいて提示されることが可能な、新たなトンネル設計を表す。
【００１４】
システムがステップ１２０においてトンネルモデルをロードすると、システムのユーザが視覚的モデルを変更することが可能である。ユーザは、視覚的モデルにおける既存のオブジェクトを移動させて、もしくはそれ以外で変えることによって、または視覚的モデルに新たなオブジェクトを追加することによって、視覚的モデルを変更することが可能である。視覚的モデルを変更するのに、方法１００のステップ１３０において、ユーザが、視覚的モデルの１つまたは複数のオブジェクトを定義するポイントを選択することが可能である。例えば、ユーザは、それぞれのトンネルセグメントを定義する、トンネルセグメントのエンドポイントを選択することが可能であり、またはユーザは、２つのセグメント間の、両方のトンネルセグメントを定義する頂点ポイントを選択することが可能である。別の例として、ユーザは、既存のセグメントエンドポイントに接続された新たなセグメントを追加するようにユーザインタフェース上で新たなポイントを選択して、その新たなポイントが、その新たなトンネルセグメントを定義するようにすることが可能である。ユーザは、電子ポインティングデバイス（例えば、マウス、カーソル制御デバイスなど）などのポインティングデバイス、または他の任意のポインティング機構（例えば、タッチスクリーンの場合、ユーザの指）の使用によってそのポイントを選択することが可能である。
【００１５】
ステップ１３０においてポイントが選択されると、次に、方法１００のステップ１４０において、ユーザが、所望の位置に向けてポイントを移動させるようにポインティングデバイスを移動させることが可能である。ポインティングデバイスが所望の位置に向けてポイントを移動させるとき、ポインティングデバイスは、複数の他の位置を通る。ユーザが、通される位置のうちの１つに選択されたポイントを配置することを選択した場合、そのポイントの調整された配置は、そのポイントによって定義される１つまたは複数のオブジェクトのそれぞれの調整された配置ももたらす。例えば、そのポイントの調整された配置は、そのポイントによって定義されたオブジェクトを拡張すること、そのポイントによって定義される２つのオブジェクト間の角を変化させること、そのポイントによって定義されたオブジェクトの勾配を変化させること、またはそのポイントによって定義されたオブジェクトの半径を変化させることをもたらすことが可能である。方法１００のステップ１５０において、ポインティングデバイスが複数の位置のそれぞれを通るとき、システムは、ユーザがそれぞれの位置を選択した場合、選択されたポイント、および１つまたは複数の定義されたオブジェクトの調整された配置のリアルタイムのトンネルプレビュー（すなわち、プレビュー）を提供する。リアルタイムのトンネルプレビューは、１つまたは複数の定義されたオブジェクトの調整された配置がトンネル設計パラメータに準拠するかどうかのリアルタイムの決定を含む。
【００１６】
例えば、選択されたポイントがトンネルセグメントエンドポイントである場合、かつトンネルセグメントエンドポイントに関する特定の通される位置を選択することが、それぞれのトンネルセグメントが勾配限度パラメータに準拠しない（例えば、最大垂直勾配を超える）ことをもたらす場合、この決定は、プレビューの一環としてシステムによってリアルタイムで行われる。いくつかの実施形態において、１つまたは複数の定義されたオブジェクトの調整された配置が準拠しない場合、システムは、プレビューにおける調整された配置を自動的に修正して、１つまたは複数の定義されたオブジェクトの配置が要求されるトンネル設計パラメータに準拠するようにすることが可能である。例えば、トンネル設計パラメータは、勾配遷移限度に準拠しないセグメント遷移を修正するための「垂直遷移を自動的に平滑化する」オプションと、コーナ角限度に準拠しないセグメント間の角を修正するための「最大角が超えられた場合、円弧で置き換える」オプションのいずれか、または両方を含むことによってトンネル設計パラメータに準拠しないトンネル設計を自動的に修正するためのオプションを含むことが可能である。いくつかの実施形態において、１つまたは複数の定義されたオブジェクトの調整された配置が準拠しない場合、システムは、プレビューがその調整された配置に更新することを防止すること、または制限することが可能である。他の実施形態において、１つまたは複数の定義されたオブジェクトの調整された配置が準拠しない場合、システムは、ユーザインタフェース上のプレビューにおいて、その調整された配置が要求されるトンネル設計パラメータに準拠しないことを示すこと（例えば、視覚的に、聴覚的になど）が可能である。
【００１７】
各通される位置に関するリアルタイムのプレビューに基づいて、方法１００のステップ１６０において、ユーザが、調整された配置をデジタル化するための選択されたポイントをコミットする位置を選択する。デジタル化することは、３Ｄ空間において物理的ポイント位置を選択すること、および選択された３Ｄポイント位置を、トンネル設計を使用してさらなる自動的機能を実行するようにシステムが実行する方法１００、または通信可能に結合されたシステムによって使用され得るデジタルフォーマットに変換することを表すことに留意されたい。選択された位置は、ユーザが選択されたポイントをそこに向けて最初に移動していた同一の所望の位置であっても、そうでなくてもよい。デジタル化することは、視覚的モデルにおけるそれぞれのプレビューされる、調整された配置に対して１つまたは複数の定義されたオブジェクトを調整する。調整される配置が要求される／特定のトンネル設計パラメータに準拠しない場合、システムは、トンネルモデルの準拠しない部分をハイライトすることなどによって、ユーザインタフェースにおいて非準拠を示すことが可能である。また、非準拠を示すことは、トンネルセグメントの色、線スタイル、または塗りつぶしスタイルを変化させること、またはポインティングデバイスカーソル（形状、スタイル、タイプなど）を変化させることなどの他の視覚的表示を含むことも可能である。いくつかの実施形態において、ユーザは、後の時点でトンネル設計を再ロードして、要求されるトンネル設計パラメータに準拠しないトンネル設計のオブジェクトを修正することが可能である。次に、システムは、視覚的モデルにおける調整された１つまたは複数の定義されたオブジェクトを反映するようにメモリの中のトンネル設計を更新することが可能である。また、システムは、最初のロードされたトンネル設計を、それが将来のトンネル変更に必要とされる場合、記憶することも可能である。
【００１８】
トンネル設計構造化
図１Ｂ〜図１Ｃは、本発明の実施形態におけるリアルタイムのプレビューを提供するためにトンネル設計データを構造化することを示す例示的な図を示す。特に、各トンネル設計は、対応するトンネルプロファイルを有する特定のトンネルタイプのそれぞれのトンネルを表す。図１Ｂに示されるとおり、トンネル設計データは、トンネルタイプデータ構造１５３に記憶され、かつその特定のトンネルタイプに関する有効な詳細なプロパティ（例えば、トンネル設計パラメータ）を記憶する対応するトンネルプロファイルデータ構造１５４に結び付けられた所与のトンネルタイプに関してメモリの中で（トンネル設計構造１５２において）構造化される。このため、トンネル設計構造１５２は、同一のトンネルタイプの各トンネル設計が、トンネルタイプデータ構造１５３における同一のトンネルタイプデータ、およびトンネルプロファイルデータ構造１５４における対応するトンネルプロファイルデータを参照すること（および共有すること）ができるようにする。このため、トンネル設計に関して視覚的モデルが生成されると、それぞれのトンネル設計に関する中心線ジオメトリが、トンネル設計構造１５２のトンネルジオメトリデータ構造１５５において単に作成され、共有されるトンネルタイプデータ構造１５３に結び付けられ、これが、次に、トンネル設計のトンネルタイプに対応するトンネルプロファイルデータ構造１５４に結び付けられる。トンネルタイプデータ構造１５３およびトンネルプロファイルデータ構造１５４の共有される構造化は、トンネルの現在のジオメトリ（トンネルジオメトリデータ構造１５５における）に照らしてトンネル設計データ（トンネルタイプデータ構造１５３およびトンネルプロファイルデータ構造１５４における）を検査するための効率的な編成を提供する。すなわち、ユーザが、視覚的モデルを使用してトンネル設計のジオメトリを操作するとき、トンネル設計の現在のジオメトリからのトンネル設計パラメータの分離が、トンネルプレビューが、共有されるトンネル設計パラメータのリアルタイムのクエリを提供して、トンネル設計の現在のジオメトリに照らしてそれらのトンネル設計パラメータの妥当性を決定することができるようにする。
【００１９】
さらに、図１Ｃの図１５６に示されるとおり、本発明は、メモリの中のトンネルの内部ジオメトリデータ表現１５５（すなわち、トンネルジオメトリデータ構造）を、視覚的モデルとしてユーザインタフェース上に表示される視覚化された表現１５７から分離する。その分離は、メモリの中の内部ジオメトリデータ表現１５５と視覚化された表現１５７の責務の分担を可能にして、本発明を実行するコンピュータシステムが、ユーザインタフェース上で、リアルタイムでユーザにフィードバックを提供することが可能であり、メモリの中のトンネル設計の表現を壊す必要なしにそうすることが可能であるようにする。例えば、メモリの中の内部ジオメトリデータ表現１５５とユーザインタフェース上の視覚化された表現１５７の間のそのような分離は、メモリの中のデータ表現１５５を操作することなしに、視覚化された表現１５７が、トンネルプレビューにおいてリアルタイムで装飾される（例えば、誤りが生じた場合、視覚的にハイライトされる）こと１５８を可能にする。
【００２０】
トンネル設計の視覚的モデルにおいてオブジェクトを移動させること
図１Ｄは、本発明の実施形態における図１Ａの方法１００によって変更されることが可能であるトンネル設計の視覚的モデル１８０の例示的な図を示す。視覚的モデル１８０は、ユーザインタフェース上の視覚的モデルのオブジェクトを定義する３つのポイント１８２、１８６、１９０を含む。これらの定義されたオブジェクトは、それぞれのトンネル設計の構成要素（トンネルセグメント１９４、１９５）を表す。ポイント１（１８２）は、セグメント１（１９４）のエンドポイントであり、このため、セグメント１（１９４）を定義するポイントである。ポイント２（１８６）は、セグメント１（１９４）とセグメント２（１９５）の間の頂点であり、このため、セグメント１（１９４）とセグメント２（１９５）の両方を定義するポイントである。ポイント３（１９０）は、セグメント２（１９５）のエンドポイントであり、このため、セグメント２（１９５）を定義するポイントである。
【００２１】
図１Ｄにおいて、頂点、ポイント２（１８６）が、ポインタ１９６によって選択される。次に、ポインタ１９６が、選択されたポイント２（１８６）を、ユーザインタフェース上の所望の位置に向けて移動させて、選択されたポイント２（１８６）が複数の位置１８７、１８８、１８９を通るようにする。選択されたポイント２（１８６）が、その複数の位置のそれぞれを通るとき、ポイント２、ならびにポイント２（１８６）によって定義されたオブジェクト、すなわち、セグメント１（１９４）およびセグメント２（１９５）のリアルタイムのトンネルプレビューが提供される。図１Ｄにおいて示されるとおり、選択されたポイント２（１８６）が第１の位置１８７を通るとき、リアルタイムのトンネルプレビューは、ユーザが第１の位置１８７を選択した場合、セグメント１（１９４）の調整された配置１８３、およびセグメント２（１９５）の調整された配置１９１を示す。さらに、選択されたポイント２（１８６）が第２の位置１８８を通るとき、リアルタイムのトンネルプレビューは、ユーザが第２の位置１８８を選択した場合、セグメント１（１９４）の調整された配置１８４、およびセグメント２（１９５）の調整された配置１９２を示す。同様に、選択されたポイント２（１８６）が第３の位置１８９を通るとき、リアルタイムのトンネルプレビューは、ユーザが第３の位置１８９を選択した場合、セグメント１（１９４）の調整された配置１８５、およびセグメント２（１９５）の調整された配置１９３を示す。
【００２２】
リアルタイムのトンネルプレビューの一環として含まれるリアルタイムの決定は、セグメント１（１９４）の調整された配置１８３、１８４、１８５、またはセグメント２（１９５）の調整された配置１９１、１９２、１９３が、指定されたトンネル設計パラメータに準拠しないかどうかを計算する。例えば、それらの計算は、セグメント１（１９４）の調整された配置１８５、およびセグメント２（１９５）の対応する調整された配置１９３が、これらの配置１８５、１９３におけるセグメント１（１９４）とセグメント２（１９５）の間の角がそれぞれのセグメント間最大角許容誤差（maximum angle between segments tolerance）を超えるため、コーナ角限度パラメータに準拠しないことを見出すことが可能である。いくつかの実施形態において、その特定の非準拠のため、トンネルプレビューは、位置１８９、ならびに調整された配置１８５および１９３に依然として更新するが、プレビューされるトンネルは、セグメント１（１９４）とセグメント２（１９５）の間のコーナ角を円弧で置き換えることによって自動的に修正される。他の実施形態において、トンネルプレビューは、調整された配置１８５、１９３に更新することを防止される。すなわち、ポインタ１９６は、位置１８９に移動するが、トンネルプレビューは、代わりに、位置１８８に留まり、このため、セグメント１（１９４）およびセグメント２（１９５）は、それぞれ、調整された配置１８４および１９２に留まる。さらに他の実施形態において、トンネルプレビューは、依然として、位置１８９に更新するが、視覚的モデルのトンネルプレビューにおいてセグメント１（１９４）、セグメント２（１９５）、またはその両方をハイライトすることによって非準拠を視覚的に示す。
【００２３】
指定されたパラメータの範囲内でトンネル設計を拡張する方法
図２Ａ〜図２Ｂは、本発明の実施形態における特定のトンネル設計パラメータの範囲内でトンネル設計を拡張する例示的なコンピュータベースの方法２００、またはコンピュータ実施方法２００の流れ図を示す。方法２００は、図１の概略のトンネル設計方法１００の実施形態であることが可能である。コンピュータシステムは、方法２００を実行して、コンピュータメモリからロードされる既存のトンネル設計、または新たなトンネル設計を変更することが可能である。トンネル設計の変更は、そのトンネル設計に新たなトンネルオブジェクト（例えば、新たなトンネルセグメント）を追加すること、またはそのトンネル設計における既存のトンネルオブジェクト（例えば、既存のセグメントおよび頂点）を変更することを含むことが可能である。トンネル設計は、方法２００を始めるのに先立って、コンピュータシステムのユーザインタフェースにおける視覚的モデルとしてロードされる。視覚的モデルのコンピュータレンダリングまたはコンピュータ表示が生じる。
【００２４】
方法２００は、ステップ２０５（図２Ａの）において、ユーザが、表示された視覚的モデル上でポイントを選択することから始まる。これに応答して、コンピュータシステムが、新たなトンネルセグメントをデジタル化する、または視覚的モデルにおいて既存のトンネルセグメントを移動させる。すなわち、そのポイントは、視覚的モデルの終端近くに配置されている新たなポイントであって、その新たなポイントが、視覚的モデルにおいてデジタル化されている新たなオブジェクトを定義するようになることが可能である。例えば、そのポイントは、既存のトンネルセグメントの終端においてデジタル化されている新たなトンネルセグメントを定義する新たなトンネルセグメントエンドポイントであることが可能である。そのポイントは、代わりに、視覚的モデルにおいて移動させられている１つまたは複数の既存のオブジェクトを定義する既存のトンネルポイントであることが可能である。例えば、そのポイントは、視覚的モデルを拡張するように移動させられている２つのトンネルセグメントを定義する既存のトンネル頂点（すなわち、その２つのトンネルセグメントの間に位置付けられた）であることが可能である。さらなる例として、そのポイントは、視覚的モデルを拡張するように移動させられている既存のトンネルセグメントを定義する既存のトンネルセグメントエンドポイントであることが可能である。
【００２５】
方法２００（図２Ａ）のステップ２１０において、ポインティングデバイス（例えば、マウス）を介するユーザコマンドに応答して、システムが、選択された新たなポイントまたは既存のポイントを、ユーザがそのポイントをデジタル化することを望む場所としてユーザによって示される新たな位置に向けて移動させる。ポインティングデバイスのユーザ移動と一致して、システムは、そのポイントを、複数の他の位置を通ることによって、その新たな位置に向けて移動させる。ユーザが、その選択されたポイントを、通される位置のうちの１つに配置することを選択した場合、そのポイントの調整された配置は、そのポイントによって定義される１つまたは複数のオブジェクトのそれぞれの調整された配置をデジタル化することももたらす。ステップ２１５（図２Ａの）において、ユーザがポインティングデバイスを依然として移動させている間、システムが、ポインティングデバイスによってポイントされている（かつ、選択されたポイントによって通されている）現在の位置のリアルタイムの視覚的フィードバックを提供する。ユーザがポインティングデバイスを移動させるとき、提供されているリアルタイムのフィードバックは、トンネルプレビュー（すなわち、プレビュー）と呼ばれる。トンネルプレビューは、ユーザが、選択されたポイントを各通される位置（すなわち、その時点において、ポインティングデバイスの現在の位置）に配置することを選択した場合、トンネル設計のもたらされる視覚的モデルがどのように見えるかをリアルタイムでユーザに示す。特に、トンネルプレビューにおいて、システムは、視覚的モデルにおけるそれぞれの定義されたオブジェクトの調整された配置を、ユーザが、選択されたポイントを、各通される位置に関してそれぞれ配置することを選択したかのように示す。
【００２６】
方法２００（図２Ａの）のステップ２２０において、プレビューは、ユーザにリアルタイムで、そのポイントを、ポインティングデバイスによってポイントされている現在の位置に配置することが、それぞれの定義されたオブジェクトが、要求されるトンネル設計パラメータ、およびそれぞれの許容誤差に準拠しないことをもたらすかどうかを示すことも可能である。この表示を提供するのに、システムは、選択されたポイントによって通される各位置（すなわち、ポインティングデバイスの現在の位置）が、そのトンネル設計に関して指定されたトンネル設計パラメータのそれぞれに準拠するかどうかをリアルタイムで継続的に計算する。すなわち、システムは、定義された１つまたは複数のオブジェクトのそれぞれの配置に照らして、各それぞれのトンネル設計パラメータの許容誤差を別々にリアルタイムで検査して、選択されたポイントの通される位置がトンネル設計パラメータに準拠するかどうかを決定する。例えば、そのポイントが２つのトンネルセグメントの間の頂点である場合、ポインティングデバイスがその頂点を移動させるとき、システムは、その移動させられる頂点の、通される位置における配置が、各指定されたトンネル設計パラメータのそれぞれの許容誤差に準拠するかどうかを決定する。例えば、システムは、通される位置におけるその頂点が、セグメント間の角がトンネルコーナ角限度パラメータ（セグメント間の最大角）の許容誤差を超えることをもたらすかどうかを検査することが可能である。
【００２７】
ポインティングデバイスによってポイントされている現在の位置が、要求されるトンネル設計パラメータに準拠する場合、次に、システム／方法２００は、ステップ２２５（図２Ａの）に進み、ここで、ユーザが、ポインティングデバイスによってポイントされている現在の位置を選択することが可能である。ユーザが現在の位置を選択すると、現在の位置と選択されたポイントの関連付けられたトンネルプレビューは、同一の位置にあることに留意されたい。すなわち、現在の位置がトンネル設計パラメータに準拠すると、トンネルプレビューがその位置に更新することを防止する理由は存在しない。現在の位置の選択は、システムが、選択されたポイントによって定義される１つまたは複数のオブジェクトを、その１つまたは複数のオブジェクトのそれぞれのプレビューされる配置によりデジタル化することをもたらす。例えば、選択されたポイントがトンネル頂点である場合、現在の位置のユーザ選択は、システムが、その頂点によって接続されたセグメントを、トンネルセグメントのそれぞれのプレビューされる配置によりデジタル化することをもたらす。そのデジタル化することは、プレビューされる配置により１つまたは複数のオブジェクトを表示するように視覚的モデルを更新する。次に、ステップ２８０（図２Ａの）において、システムが、その新たなトンネルオブジェクトの追加、またはそのトンネルオブジェクトの新たな位置を反映するようにメモリの中のトンネル設計を更新する。ユーザが、さらなるトンネルオブジェクトを追加すること、または移動させることを続けることを選択した場合、システムは、ステップ２０５（図２Ａの）から開始して、システムインタフェースにおいて所望のトンネルの視覚的モデルが作成され、メモリの中で対応するトンネル設計が更新されるまで、方法２００を繰り返すことを続ける。
【００２８】
方法２００（図２Ａの）のステップ２２０において、選択されたポイントを、ポインティングデバイスによってポイントされている現在の位置に配置することが、定義されたオブジェクトのそれぞれの配置が、要求されるトンネル設計パラメータ、およびそれぞれの許容誤差に準拠しないことをもたらす場合、システムは、ステップ２３０（図２Ａの）に進む。例えば、システムは、定義されたオブジェクトの配置が、勾配限度、セグメント間の勾配遷移限度、回転半径限度、およびコーナ角限度設計パラメータに準拠しないかどうかを検査することが可能である。ステップ２３０（図２Ａの）において、システムは、トンネルプレビューにおける非準拠問題を自動的に修正するオプションが構成されているかどうかを検査する。そのようなオプションが構成されている場合、ステップ２３５（図２Ａの）において、システムは、その構成されたオプションに基づいて、定義されたオブジェクトの非準拠を自動的に修正するようにトンネルプレビューを変更する。例えば、選択されたポイントがトンネル頂点である場合、かつそのトンネル頂点の、現在の位置における配置が、その頂点によって接続された２つのセグメントの間の角がトンネルコーナ限度設計パラメータ（「セグメント間の最大角」許容誤差オプション）を超えることをもたらす場合、システムは、プレビューにおいてその準拠しない角を自動的に修正することが可能である。すなわち、コーナ角限度設計パラメータが、「最大角を超える場合、円弧で置き換える」オプション、またはコーナ角限度設計パラメータに関する他のそのようなオプションが設定されるように構成される場合、その２つのセグメントの間の角は、システムがその角を円弧で置き換えることによってトンネルプレビューにおいて自動的に修正される。別の例として、選択されたポイントがトンネルセグメントエンドポイントである場合、かつトンネルセグメントエンドポイントの、現在の位置における配置が、それぞれのセグメントと、それぞれのトンネルセグメントに接続された別のセグメントの間の垂直勾配遷移が勾配遷移限度設計パラメータ（「セグメント間の最大±遷移」許容誤差オプション）を超えることをもたらす場合、システムは、それらの準拠しないトンネルセグメントの垂直勾配遷移を自動的に修正することが可能である。すなわち、勾配遷移限度設計パラメータが、「垂直遷移を自動的に平滑化する」オプション、または勾配遷移限度設計パラメータに関する他のそのようなオプションが設定されるように構成される場合、それらの準拠しないセグメントの垂直勾配遷移は、システムがこれらの遷移を平滑化することによってトンネルプレビューにおいて自動的に修正される。
【００２９】
システムが、非準拠を自動的に修正するようにトンネルプレビューを変更した後、システムは、ステップ２１５（図２Ａの）に戻り、システムは、ポインティングデバイスによってポイントされている（かつ選択されたポイントによって通されている）現在の位置のリアルタイムの視覚的フィードバックを提供することを続ける。さらに、方法２００（図２Ａの）のステップ２２０において、システムは、プレビューが、選択されたポイントを、ポインティングデバイスによってポイントされている現在の位置に配置することが、それぞれの定義されたオブジェクトが、要求されるトンネル設計パラメータおよび許容誤差に準拠しないことをもたらすことを示すかどうかを検査することを続ける。方法２００（図２Ａの）のステップ２２０において、選択されたポイントを、ポインティングデバイスによってポイントされている現在の位置に配置することが、定義されたオブジェクトのそれぞれの配置が、トンネル設計パラメータおよび許容誤差に準拠しないことをもたらすが、それらの定義されたオブジェクトの非準拠を修正するように構成されたオプションが存在しない場合、システムは、ステップ２４０（図２Ｂの）に進む。図２Ａおよび図２Ｂに示されるとおり、ステップ２３０（図２Ａの）は、図２Ａと図２Ｂの両方に描かれる矢印２３２を介してステップ２４０（図２Ｂの）に進む。ステップ２４０（図２Ｂの）において、システムが、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが、準拠しないトンネルが作成されることを防止するように設定されているかどうかを検査して決定する。そうである場合、このオプションは、システムが、選択されたポイントを、ポインティングデバイスによってポイントされている現在の位置にシステムが移動させることを、その現在の位置が、それぞれの定義されたオブジェクトの準拠しない配置をもたらす場合、制限することができるようにする。すなわち、トンネルプレビューは、選択されたポイントの配置、およびそれぞれの定義されたオブジェクトを、ポインティングデバイスによってポイントされている現在の位置に対して更新することに失敗し、その結果、ユーザが、選択されたポイントをデジタル化するためにその現在の位置を選択することを防止する。
【００３０】
このオプションが設定されない場合、ステップ２６０（図２Ｂの）において、システムは、ユーザが、選択されたポイントを、ポイントデバイスによってポイントされる現在の位置に移動させることを可能にし、その結果、トンネルプレビューにおける選択されたポイントおよびそれぞれの定義されたオブジェクトの配置を更新する。次に、システムは、トンネルプレビューにおいて、トンネル設計パラメータに準拠しない視覚的モデルの部分をハイライトすること（または他の視覚的効果）によって視覚的に示す。例えば、選択されたポイントの配置が、その選択されたポイントによって定義される２つのセグメントの間の角がトンネルコーナ角限度を超えることをもたらす場合、システムは、いずれか、または両方のセグメント、およびそれらのセグメントの間の角のそれぞれの値をハイライトして（明滅させる、明るくさせるなどして）、トンネル設計パラメータに対するその非準拠を示すことが可能である。次に、方法２００は、ステップ２６５（図２Ｂの）に進み、ここで、ユーザが、ポインティングデバイスによってポイントされている現在の位置を選択することが可能である。ユーザが現在の位置を選択すると、現在の位置と選択されたポイントの関連付けられたトンネルプレビューは、同一の位置にあることに留意されたい。すなわち、現在の位置がトンネル設計パラメータに準拠すると、トンネルプレビューがその位置に更新することを防止する理由は存在しない。
【００３１】
やはりステップ２６５において、現在の位置の選択は、システムが、選択されたポイントによって定義される１つまたは複数のオブジェクトを、その１つまたは複数のオブジェクトのそれぞれのプレビューされる配置によりデジタル化することをもたらす。例えば、選択されたポイントがトンネル頂点である場合、現在の位置の選択は、システムが、その頂点によって接続されるトンネルセグメントを、それらのトンネルセグメントのそれぞれのプレビューされる配置によりデジタル化することをもたらす。そのデジタル化することは、プレビューされる配置によりその１つまたは複数のオブジェクトを表示するように視覚的モデルを更新する。次に、ステップ２７０（図２Ｂの）において、システムが、新たなトンネルオブジェクトの追加、またはトンネルオブジェクトの新たな位置を反映するようにメモリの中のトンネル設計を更新する。ステップ２７５（図２Ｂの）において、システムが、トンネルプレビューにおいて、トンネル設計パラメータに準拠しない視覚的モデルの部分をハイライトすることによって、またはそれ以外で視覚的に示す。視覚的に示され、ハイライトされる視覚的モデルの部分は、ステップ２６０（図２Ｂの）におけるトンネルプレビューにおいて視覚的に示され、ハイライトされた同一の部分である。ユーザが、さらなるトンネルオブジェクトを追加すること、または移動させることを続けることを選択した場合、システムは、ステップ２０５（図２Ａの）から開始して、システムインタフェースにおいて所望の視覚的モデルがデジタル化され、メモリの中で対応するトンネル設計が更新されるまで、方法２００を繰り返すことを続ける。
【００３２】
ステップ２４０（図２Ｂの）において「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが設定されていると決定された場合、次に、ステップ２４５（図２Ｂの）において、システムが、トンネルプレビューが選択されたポイントを、ポインティングデバイスによってポイントされる現在の位置に更新することを防止して、その結果、トンネルプレビューが定義されたオブジェクトのそれぞれの配置を更新することをさらに防止する。システムは、トンネルプレビューが、要求されるトンネル設計パラメータ、および許容誤差に対する準拠を維持するように制限されているというリアルタイムの視覚的フィードバックを提供する。例えば、選択されたポイントがトンネルセグメントエンドポイントであり、かつそのトンネルセグメントエンドポイントを、ポインティングデバイスによってポイントされる現在の位置に移動させることが、そのセグメント、および接続された隣接するセグメントが、回転半径限度設計パラメータを下回る回転半径を有することをもたらす場合、システムは、トンネルプレビューがトンネルセグメントエンドポイントを現在の位置に更新することを防止する。選択ポイントがトンネルプレビューにおいて、ポインティングデバイスによってポイントされる現在の位置に更新されることを防止されるので、ポインティングデバイスの位置と関連付けられたトンネルポイントは、同一の位置にあるのではなく、代わりに、システムが、トンネルプレビューにおいてその２つの位置の間の距離を最小化することに留意されたい。いくつかの実施形態において、選択されたポイントは、ユーザインタフェース上の３次元空間にあり、このため、距離は、３次元空間において最小化されている３次元距離であることに留意されたい。
【００３３】
次に、方法２００は、ステップ２５０（図２Ｂの）に進み、ここで、ユーザが、選択されたポイントを、トンネルプレビューに現在示される位置において（すなわち、最小距離位置において）デジタル化することが可能である。例えば、トンネルプレビューが、トンネルプレビューにおける選択されたポイントが、ポインティングデバイスによってポイントされる位置に更新することを、その位置が、そのセグメント、および接続された隣接するセグメントが回転半径限度を下回る回転半径を有することをもたらすために、制限した場合、システムは、選択されたポイントを、トンネルプレビューにおけるその制限された位置においてデジタル化する。現在の位置の選択は、システムが、選択されたポイントによって定義される１つまたは複数のオブジェクトを、その１つまたは複数のオブジェクトのそれぞれのプレビューされる配置によりデジタル化することをさらにもたらす。そのデジタル化することは、プレビューされる配置により１つまたは複数のオブジェクトを表示するように視覚的モデルを更新する。次に、ステップ２５５（図２Ｂの）において、システムが、トンネルプレビューにおいて示されるとおりにオブジェクトの追加、またはオブジェクトの新たな位置を反映するようにメモリの中のトンネル設計を更新する。ユーザが、さらなるトンネルオブジェクトを追加すること、または移動させることを続けることを選択した場合、システムは、ステップ２０５（図２Ａの）から開始して、システムインタフェースにおいて所望のトンネルの視覚的モデルがデジタル化され、メモリの中で対応するトンネル設計が更新されるまで、方法２００を繰り返すことを続ける。
【００３４】
トンネル設計パラメータ
図３Ａ〜図３Ｅは、本発明の実施形態において使用される要求されるトンネル設計パラメータを構成するための例示的なユーザインタフェースを示す。図３Ａは、トンネルセグメントに関する勾配限度に関する許容誤差を構成するための例示的なユーザインタフェースを示す。この例示的なユーザインタフェースにおいて、ユーザは、「最小±勾配」および「最大±勾配」に関するパーセンテージを選択することによって勾配限度を構成することが可能である。図３Ｂは、トンネルセグメント間の勾配遷移限度を構成するための例示的なユーザインタフェースを示す。この例示的なユーザインタフェースにおいて、ユーザは、「トンネルセグメント間の最大＋／−遷移」に関するパーセンテージを選択すること、および「最小遷移セグメント長」に関する値を選択することによって勾配遷移限度に関する許容誤差を構成することが可能である。この例において、ユーザは、「垂直遷移を自動的に平滑化する」オプションを選択すること（チェックボックスを介して）も可能である。このチェックボックスの選択は、システムが、セグメント間の垂直遷移を、その遷移が、構成された勾配遷移限度に準拠しない場合、自動的に修正すること（すなわち、その遷移を平滑化することによって）を可能にする。
【００３５】
図３Ｃは、トンネルセグメントに関する回転半径限度を構成するための例示的なユーザインタフェースを示す。この例示的なユーザインタフェースにおいて、ユーザは、「最小回転半径」に関する値を選択することによって回転半径限度に関する許容誤差を構成することが可能である。図３Ｄは、直線のトンネルセグメント間のコーナ角限度を構成するための例示的なユーザインタフェースを示す。この例示的なユーザインタフェースにおいて、ユーザは、「セグメント間の最大角」に関する値を度数で選択することによってコーナ角限度に関する許容誤差を構成することが可能である。この例において、ユーザは、「最大角を超えた場合、円弧で置き換える」オプションを選択すること（チェックボックスを介して）も可能である。このチェックボックスの選択は、システムが、セグメント間の角を、その角が、構成されたコーナ角限度に準拠しない場合、円弧で自動的に修正することを可能にする。
【００３６】
図３Ｅは、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションを選択する（チェックボックスを介して）ための例示的なユーザインタフェースを示す。このチェックボックスの選択は、前述したように、システムが、ユーザが、トンネル設計パラメータに準拠しない様態でトンネル設計を作成すること、または変更することを防止することを可能にする。いくつかの実施形態において、このオブジェクトが選択された場合でさえ、システムは、ユーザが、またはいくつかのシステム動作が、時々の特別な状況下で、準拠しないトンネル設計変更を行うことができるようにする一時的オーバライドオプションを依然として許すことが可能である。
【００３７】
トンネルコーナ限度設計パラメータを使用すること
図４Ａおよび図４Ｂは、本発明の実施形態においてトンネルコーナ限度設計パラメータを使用するための例示的な方法を示す図を示す。図４Ａおよび図４Ｂにおいて、トンネルコーナ角設計パラメータ（セグメント間の最大水平角）は、６０度に設定され、トンネル回転半径限度パラメータ（最小回転半径）は、２０ｍに設定される。図４Ａの図４１０、図４１２、および図４１４において、表示されるカーソルによって示されるポインティングデバイスが、トンネル設計の視覚的モデルにおける配置のために新たなポイント（ポイント３）を移動させるのに使用されている。新たなポイント３の配置は、ポイント３と既存のセグメント１のエンドポイント（ポイント２）の間に配置されている新たなセグメント（セグメント２）を定義する。図４Ａの図４１０において、ポイント３の配置のプレビューが、セグメント２のそれぞれの配置が、セグメント１とセグメント２の間に５９度の水平角をもたらすことを示す。その５９度の角は、６０度のセグメント間の指定された最大水平角を超えないので、セグメント２の配置は、トンネルコーナ角設計パラメータに準拠する。さらに、回転半径限度設計パラメータは、トンネル設計の視覚的モデルが、円弧を含むことも、円弧を含むように更新される必要もないので、考慮されない。このため、セグメント２の配置は、構成されたすべてのトンネル設計パラメータに準拠するので、ポインティングデバイスの位置が、トンネルプレビューの範囲内で追跡される（すなわち、プレビューが、ポインティングデバイスの位置に更新することを、それがすべてのトンネル設計パラメータに準拠するので、制限する理由は存在しない）。
【００３８】
セグメント間の最大水平角を検査するのに、その２つのセグメント（セグメント１とセグメント２）の間の角が、図４に示されるとおり計算されることが可能であることに留意されたい。すなわち、図４Ｃに示されるとおり、セグメント１は、ポイント「Ｐ１」（ポイント１）および「Ｐ２」（ポイント２）から構成され、セグメント２は、ポイント「Ｐ２」（ポイント２）および「Ｐ３」（ポイント３）から構成され、２つの対応するベクトルが、以下のとおりそれらのポイントから計算されることが可能である。すなわち、Ｖｅｃｔｏｒ１＝｛ＸP2−ＸP1，ＹP2−ＹP1，ＺP2−ＺP1｝であり、Ｖｅｃｔｏｒ２＝｛ＸP3−ＸP2，ＹP3−ＹP2，ＺP3−ＺP2｝である。次に、それらのベクトルの間の水平角が、以下のアルゴリズムによって決定され得る。すなわち、Ａｎｇｌｅ＝ａｃｏｓ（（Ｖｅｃｔｏｒ１・Ｖｅｃｔｏｒ２）／（ｌｅｎｇｔｈ（Ｖｅｃｔｏｒ１）*（ｌｅｎｇｔｈ（Ｖｅｃｔｏｒ２）））であり、ここで、ｌｅｎｇｔｈ（ｖｅｃｔｏｒ）は、
【００３９】
【数１】
2017091539.tif 000003
【００４０】
として定義され、対応するセグメント間の角が最大水平角を超えるかどうかを検出するのに使用されることが可能である。
【００４１】
図４Ａの図４１２において、ポインティングデバイスが、セグメント２の対応する配置が、６１度のセグメント２とセグメント３の間の水平角をもたらすように、ポイント３を移動させようと試みる（ポイント３の左下に示されるカーソルが、表示されない６１度の試みられた移動を示す）。このため、ポイント３の配置は、セグメント２の対応する配置が、６０度のセグメント間の指定された最大水平角を超えるセグメント１とセグメント２の間の水平角をもたらすので、トンネルコーナ角限度設計パラメータに準拠しない。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが図４１２において「ＯＮ」に設定されているので、プレビューは、ポイント３のこの配置に更新することを制限される。すなわち、ポインティングデバイスは、試みられた位置に配置されるが、プレビューにおいて、ポイント３は、セグメント２とセグメント３の間の最大許容可能水平角が６０度を超えない位置に制限される。このシナリオにおいてポイント３に関する位置を計算するのに、システムは、ポインティングデバイスの位置とプレビューにおける制限された位置の間の距離を最小化する。
【００４２】
システムは、図４Ｄに示されるとおり、ポインティングデバイスと制限された位置の間の距離を最小化することが可能であることに留意されたい。２つのポイントの間の最小距離は、２つのポイントを接続する直線に沿っている。図４１２に示されるとおり、２つのポイント（ポイント１およびポイント２）は、それらのポイント（セグメント１）によって定義される最初のベクトルの配置から６０度オフセットされて第１のベクトルに沿っている必要がある。このため、最小距離は、第１のベクトルに直交するマウスポインティングデバイスの座標（ＸM，ＹM，ＺM）に対するポイント１（ＸP1，ＹP1，ＺP1）から定義される所望の第２のベクトルに直交する直線に沿って見出される。図４Ｄに示されるとおり、第１のベクトルおよび第２のベクトルを使用して、出力座標ＸP2，ＹP2，ＺP2が、第１のベクトルと第２のベクトルのドット積によって決定されることが可能であり、これが、次に、最初のベクトルに掛けられる。出力座標（すなわち、最小化された距離）は、制限されたベクトルに沿っており、マウスポインティングデバイス座標（ＸM，ＹM，ＺM）に対して垂直であり、制限された位置にセグメント（セグメント１）を配置するのに使用されることが可能である。
【００４３】
図４の図４１４において、図４１２の場合と同様に、ポインティングデバイスは、セグメント２の対応する配置が、６１度のセグメント１とセグメント２の間の水平角をもたらすように、ポイント３を移動させようと試みる。しかし、図４１４において、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。さらに、図４１４において、「最大が超えられた場合、コーナ角を円弧で自動的に置き換える」オプションが「ＯＦＦ」に設定されており、これが、システムが、準拠しないコーナ角を、それを円弧で置き換えることによって自動的に修正することを不能にする。このため、システムは、プレビューを制限するようにも、プレビューにおいてコーナ角を修正するようにも構成されず、したがって、ポイント３を移動させるポインティングデバイスの位置は、その位置におけるポイント３の配置が、トンネルコーナ角限度を超えるセグメント１とセグメント２の間の水平角をもたらすものの、プレビューの範囲内で追跡される。それどころか、システムは、プレビューにおいて、トンネルコーナ限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図４１４において、システムは、プレビューにおいて、セグメント２、ならびにセグメント２の配置によってもたらされる６１度の角をハイライトして（点線）、セグメント２の配置がトンネルコーナ限度設計パラメータに準拠しないことを示す。
【００４４】
図４Ｂの図４２０、図４２２、および図４２４において、ポイント２は、視覚的モデルの既存のセグメント１とセグメント２の間の頂点である。図４２０、図４２２、および図４２４におけるポインティングデバイスは、視覚的モデルの範囲内の配置のためにポイント２を移動させるのに使用されている。ポイント２の配置は、セグメント１とセグメント２の間のコーナ角も調整されるように、セグメント１とセグメント２のそれぞれの配置を調整する。図４Ｂの図４２０において、ポイント２の配置のプレビューが、セグメント１およびセグメント２のそれぞれの調整された配置がセグメント１とセグメント２の間に５９度の水平角をもたらすことを示す。５９度の角は、６０度のセグメント間の指定された最大水平角を超えないので、ポイント２の配置は、トンネルコーナ角限度設計パラメータに準拠する。このため、ポイント２の配置は、構成されたすべてのトンネル設計パラメータに準拠するので、ポインティングデバイスの位置は、トンネルプレビューの範囲内で追跡される（すなわち、プレビューがポインティングデバイスの位置に更新することを、それがすべてのトンネル設計パラメータに準拠するので、制限する理由は存在しない）。
【００４５】
図４Ｂの図４２２において、ポインティングデバイスが、セグメント１およびセグメント２の対応する配置が、６１度の水平隣接角をもたらすように、ポイント２を移動させようと試みる（ポイント２の右上に示されるカーソルが、表示されない６１度の試みられた移動を示す）。このため、ポイント２の配置は、セグメント１とセグメント２の間の水平角が、６０度のセグメント間の指定された最大水平角を超えるので、トンネルコーナ角限度設計パラメータに準拠しない。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが図４２２において「ＯＮ」に設定されているので、プレビューは、ポイント２のこの配置に更新することを制限される。すなわち、ポインティングデバイスは、試みられた位置に配置されるが、プレビューにおいて、ポイント２は、セグメント１とセグメント２の間の最大許容可能水平角が６０度を超えない位置に制限される。このシナリオにおいてポイント２に関する位置を計算するのに、システムは、ポインティングデバイスの位置とプレビューにおける制限された位置の間の距離を最小化する。
【００４６】
図４Ｂの図４２４において、図４２２の場合と同様に、ポインティングデバイスが、セグメント１およびセグメント２の対応する配置が６１度の隣接水平角をもたらすように、ポイント２を配置するように移動される。しかし、図４２４において、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。さらに、図４２４において、「最大が超えられた場合、コーナ角を円弧で自動的に置き換える」オプションが「ＯＦＦ」に設定されており、これが、システムが、コーナ角を、それを円弧で置き換えることによって自動的に修正することを防止する。このため、システムは、プレビューを制限するようにも、コーナ角を修正するようにも構成されず、したがって、ポイント２を移動させるポインティングデバイスの位置は、その位置におけるポイント２の配置が、トンネルコーナ角限度を超えるセグメント１とセグメント２の間の水平角をもたらすものの、プレビューの範囲内で追跡される。それどころか、システムは、トンネルコーナ限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図４１４で示されるとおり、システムは、プレビューにおいて、セグメント２、ならびにポイント２の配置によってもたらされる６１度の角をハイライトして（点線）、トンネルコーナ限度設計パラメータに準拠しないセグメント２の配置を例示する。
【００４７】
トンネル勾配限度設計パラメータを使用すること
図５Ａおよび図５Ｂは、本発明の実施形態において勾配限度設計パラメータを使用するための例示的な方法を示す図を示す。図５Ａおよび図５Ｂにおいて、トンネル勾配限度設計パラメータ（最大±垂直勾配）は、±１５％に設定される。図５Ａの図５１０、図５１２、および図５１４において、表示されるカーソルによって示されるポインティングデバイスが、トンネル設計の視覚的モデルにおける配置のために新たなポイント（ポイント３）を移動させるのに使用されている。新たなポイント３の配置は、ポイント３と既存のセグメント１のエンドポイント（ポイント２）の間に配置されている新たなセグメント（セグメント２）を定義する。図５Ａの図５１０において、ポイント３の配置のプレビューは、セグメント２のそれぞれの配置が、ポイント２とポイント３の間の−１０％の垂直勾配をもたらすことを、システムが、セグメント２のリアルタイムの上昇／延長（rise/run）計算を実行すること、およびその計算を±１５％の最大±垂直勾配と比較することによって示す。−１０％の垂直勾配は、±１５％の指定された最大±垂直勾配を超えないので、セグメント２の配置は、トンネル勾配限度設計パラメータに準拠する。図５１０において、「垂直遷移を自動的に平滑化する」オプションは「ＯＦＦ」に設定されており、このことは、ポイント３が、セグメント１とセグメント２の間で、セグメント間の勾配遷移限度に準拠するように平滑化を要求する勾配遷移をもたらすような様態で配置されないので、図５１０において問題とならないことに留意されたい。このため、セグメント２の配置は、構成されたすべてのトンネル設計パラメータに準拠するので、ポインティングデバイスの位置が、トンネルプレビューの範囲内で追跡される（すなわち、プレビューが、ポインティングデバイスの位置に更新することを、それがすべてのトンネル設計パラメータに準拠するので、制限する理由は存在しない）。
【００４８】
最大垂直勾配限度を検査するのに、セグメントの勾配が、図５Ｃに示されるとおり計算されることが可能であることに留意されたい。すなわち、図５Ｃに示されるとおり、勾配は、角測定（１０進度（decimal degrees）／ラジアンではなく、パーセンテージとして表される）である。勾配は、水平距離の変化によって割られた垂直距離の変化を使用して計算される。最終的な値は、パーセンテージとして表され（例えば、４５度は、１００％の勾配を有し、９０度は、無限の勾配を有する）、セグメント（例えば、セグメント２）が最大垂直勾配限度を超えるかどうかを検出するのに使用されることが可能である。
【００４９】
図５Ａの図５１２において、ポインティングデバイスが、セグメント２の対応する配置が−１６％の勾配を有するように、ポイント３を移動させようと試みる。このため、ポイント３の配置は、セグメント２の対応する配置が、±１５％の指定された最大±垂直勾配を超えるので、トンネル勾配限度設計パラメータに準拠しない（ポイント３の左下に示されるカーソルが、表示されない−１６％の試みられた移動を示す）。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが図５１２において「ＯＮ」に設定されているので、プレビューは、ポイント３のこの配置に更新することを制限される。すなわち、ポインティングデバイスは、試みられた位置に配置されるが、プレビューにおいて、ポイント３は、セグメント２の最大±垂直勾配が±１５％を超えないようにする位置に制限される。このシナリオにおいてポイント３に関する位置を計算するのに、システムは、ポインティングデバイスの位置とプレビューにおける制限された位置の間の距離を最小化する。「垂直遷移を自動的に平滑化する」オプションは「ＯＦＦ」に設定されており、したがって、システムは、セグメント３の配置によってもたらされるセグメント１とセグメント２の間の垂直勾配遷移問題をプレビューにおいて自動的に修正すること（平滑化することによって）はしないことに留意されたい。
【００５０】
図５Ａの図５１４において、図５１２の場合と同様に、ポインティングデバイスは、セグメント２の対応する配置が、セグメント２が−１６％の勾配を有するように、ポイント３を配置するように移動される。さらに、図５Ａの図５１４において、図５１２の場合と同様に、「垂直遷移を自動的に平滑化する」オプションが「ＯＦＦ」に設定されている。しかし、図５１４において、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。このため、システムは、トンネル勾配限度にプレビューを制限するように構成されず、したがって、ポイント３を移動させるポインティングデバイスの位置は、その位置におけるポイント３の配置が、セグメント２がトンネル勾配限度を超える勾配を有するようにするものの、プレビューの範囲内で追跡される。システムは、トンネル勾配限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図５１４に示されるとおり、システムは、セグメント２、ならびにセグメント２の配置によってもたらされる−１６％の勾配をハイライトして（点線）、勾配限度設計パラメータに準拠しないセグメント２の配置を例示する。
【００５１】
図５Ｂの図５２０、図５２２、および図５２４において、ポイント２は、図５Ａの図５１０、図５１２、および図５１４において示される新たなポイントではなく、視覚的モデルの既存のセグメント１とセグメント２の間の頂点である。図５２０、図５２２、および図５２４におけるポインティングデバイスは、トンネル設計の視覚的モデルの範囲内の配置のためにポイント２を移動させるのに使用されている。ポイント２の配置は、セグメント２の勾配も調整されるように、セグメント２の配置を調整する。図５Ｂの図５２０において、ポイント２の配置のプレビューは、セグメント２のそれぞれの配置が、ポイント２とポイント３の間に−１０％の垂直勾配をもたらすことを示す。−１０％の垂直勾配は、±１５％の指定された最大±垂直勾配を超えないので、セグメント２の配置は、トンネル勾配限度設計パラメータに準拠する。さらに、「垂直遷移を自動的に平滑化する」オプションは「ＯＦＦ」に設定されており、このことは、ポイント２が、ポイント２とポイント３の間で、セグメント間の勾配遷移限度に準拠するように平滑化を要求する勾配遷移をもたらすような様態で配置されないので、図５２０において問題とならない。このため、セグメント２の配置は、構成されたすべてのトンネル設計パラメータに準拠するので、ポインティングデバイスの位置が、トンネルプレビューの範囲内で追跡される（すなわち、プレビューが、ポインティングデバイスの位置に更新することを、それがすべてのトンネル設計パラメータに準拠するので、制限する理由は存在しない）。
【００５２】
図５Ｂの図５２２において、ポインティングデバイスが、セグメント２の対応する配置が−１６％の勾配を有するように、ポイント２を移動させようと試みる。このため、ポイント２の配置は、セグメント２の対応する配置が、±１５％の指定された最大±垂直勾配を超えるので、トンネル勾配限度設計パラメータに準拠しない（ポイント２の右上のカーソルの表示が、表示されない−１６％の試みられた移動を示す）。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが図５２２において「ＯＮ」に設定されているので、プレビューは、ポイント２のこの配置に更新することを制限される。すなわち、ポインティングデバイスは、試みられた位置に配置されるが、プレビューにおいて、ポイント２は、セグメント２の垂直勾配が±１５％を超えない位置に制限される。このシナリオにおいてポイント２に関する位置を計算するのに、システムは、ポインティングデバイスの位置とプレビューにおける制限された位置の間の距離を最小化する。
【００５３】
図５Ｂの図５２４において、図５２２の場合と同様に、ポインティングデバイスが、セグメント２の対応する配置が−１６％の勾配を有するように、ポイント２を配置するように移動される。しかし、図５２４において、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。また、「垂直遷移を自動的に平滑化する」オプションも「ＯＦＦ」に設定されており、したがって、システムは、ポイント２の配置によってもたらされるポイント２とポイント３の間の垂直勾配遷移問題をプレビューにおいて自動的に修正すること（平滑化することによって）はしない。このため、システムは、トンネル勾配限度にプレビューを制限するように構成されず、したがって、ポイント２を移動させるポインティングデバイスの位置は、その位置におけるポイント２の配置が、セグメント２がトンネル勾配限度を超える勾配を有するようにするものの、プレビューの範囲内で追跡される。システムは、トンネル勾配限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図５２４に示されるとおり、システムは、プレビューにおいて、セグメント２、ならびにセグメント２の配置によってもたらされる−１６％の勾配をハイライトして（点線）、勾配限度設計パラメータに準拠しないセグメント２の配置を例示する。
【００５４】
回転半径限度設計パラメータを使用すること
図６Ａおよび図６Ｂは、本発明の実施形態においてトンネル回転半径限度設計パラメータを使用するための例示的な方法を示す図を示す。図６Ａおよび図６Ｂにおいて、トンネル回転半径限度設計パラメータ（最小回転半径）は、２０メートルに設定される。図６Ａの図６１０、図６１２、および図６１４において、表示されたカーソルによって示されるポインティングデバイスが、トンネル設計の視覚的モデルにおける配置のために新たなポイント（ポイント３）を移動させるのに使用されている。新たなポイント３の配置は、ポイント３と既存のセグメント１のエンドポイント（ポイント２）の間に配置されている新たな円弧トンネルセグメント（セグメント２）を定義する。図６Ａの図６１０において、ポイント３の配置のプレビューは、セグメント２のそれぞれの配置が２１メートルの回転半径を有することを示す。セグメント２の２１メートル回転半径は、２０メートルの最小回転半径を超えているので、セグメント２の配置は、トンネル回転半径設計パラメータに準拠する。このため、セグメント２の配置は、構成されたすべてのトンネル設計パラメータに準拠するので、ポインティングデバイスの位置が、トンネルプレビューの範囲内で追跡される（すなわち、プレビューが、ポインティングデバイスの位置に更新することを、それがすべてのトンネル設計パラメータに準拠するので、制限する理由は存在しない）。
【００５５】
図６Ａの図６１２において、ポインティングデバイスは、セグメント２の対応する配置が、セグメント２が１７メートルの回転半径を有するように、ポイント３を移動しようと試みる（ポイント３の左上のカーソルの表示が、表示されない１７メートルへの試みられた移動を示す）。このため、ポイント３の配置は、セグメント２の対応する配置が、２０メートルの指定された最小回転半径を下回る回転半径を有することをもたらすので、トンネル回転半径限度設計パラメータに準拠しない。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが図６１２において「ＯＮ」に設定されているので、プレビューは、ポイント３のこの配置に更新することを制限される。すなわち、ポインティングデバイスは、試みられた位置に配置されるが、プレビューにおいて、ポイント３は、セグメントの回転半径が２０メートルを超えるようにする位置に制限される。このシナリオにおいてポイント３に関する位置を計算するのに、システムは、ポインティングデバイスの位置とプレビューにおける制限された位置の間の距離を最小化する。
【００５６】
図６Ａの図６１４において、図６１２の場合と同様に、ポインティングデバイスは、セグメント２の対応する配置が、セグメント２が１７メートルの回転半径を有するように、ポイント３を配置するように移動される。しかし、図６１４において、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。このため、システムは、トンネル回転半径限度内にプレビューを制限するように構成されず、したがって、ポイント３を移動させるポインティングデバイスの位置は、その位置におけるポイント３の配置が、セグメント２がトンネル回転半径限度を下回るトンネル半径を有するようにするものの、プレビューの範囲内で追跡される。システムは、回転半径限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図６１４に示されるとおり、プレビューにおいて、システムは、セグメント２、ならびにセグメント２の配置によってもたらされる１７メートル回転半径をハイライトして、トンネル回転半径限度設計パラメータに準拠しないセグメント２の配置を示す。
【００５７】
図６Ｂの図６２０、図６２２、および図６２４において、ポイント２は、図６Ａの図６１０、図６１２、および図６１４において示される新たなポイントではなく、視覚的モデルの既存のセグメント１とセグメント２の間の頂点である。図６Ｂの図６２０、図６２２、および図６２４におけるポインティングデバイスは、トンネル設計の視覚的モデルの範囲内の配置のためにポイント２を移動させるのに使用されている。移動中、通される位置におけるポイント２の配置は、セグメント２の回転半径も調整されるように、セグメント２の配置を調整する。図６Ｂの図６２０において、ポイント２の配置のプレビューが、セグメント２のそれぞれの配置が、２１メートルの回転半径を有することを示す。セグメント２の２１メートル回転半径は、２０メートルの最小回転半径を超えるので、セグメント２の配置は、トンネル回転半径設計パラメータに準拠する。このため、セグメント２の配置は、構成されたすべてのトンネル設計パラメータに準拠するので、ポインティングデバイスの位置が、トンネルプレビューの範囲内で追跡される（すなわち、プレビューが、ポインティングデバイスの位置に更新することを、それがすべてのトンネル設計パラメータに準拠するので、制限する理由は存在しない）。
【００５８】
図６Ｂの図６２２において、ポインティングデバイスは、セグメント２の対応する配置が、セグメント２が１７メートルの回転半径を有するように、ポイント２を移動させようと試みる。このため、ポイント２の配置は、セグメント２の対応する配置が、２０メートルの指定された最小回転半径を下回るので、トンネル回転半径限度設計パラメータに準拠しない（ポイント２の右下のカーソルの表示が、表示されない１７メートルへの試みられた移動を示す）。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが図６２２において「ＯＮ」に設定されているので、プレビューは、ポイント２のこの配置に更新することを制限される。すなわち、ポインティングデバイスは、試みられた位置に配置されるが、プレビューにおいて、ポイント２は、セグメント２の回転半径が２０メートルを超えたままである位置に制限される。このシナリオにおいてポイント２に関する位置を計算するのに、システムは、ポインティングデバイスの位置とプレビューにおける制限された位置の間の距離を最小化する。
【００５９】
図６Ｂの図６２４において、図６Ｂの図６２２の場合と同様に、ポインティングデバイスは、セグメント２の対応する配置が１７メートルの回転半径をもたらすように、ポイント２を配置するように移動される。しかし、図６２４において、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。このため、システムは、トンネル回転半径限度内にプレビューを制限するように構成されず、したがって、ポイント２を移動させるポインティングデバイスの位置は、その位置におけるポイント２の配置が、セグメント２がトンネル回転半径限度を下回るトンネル半径を有するようにするものの、プレビューの範囲内で追跡される。システムは、回転半径限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図６２４に示されるとおり、システムは、プレビューにおいて、セグメント２、ならびにセグメント２の配置によってもたらされる１７メートル回転半径をハイライト（点線）して、トンネル回転半径限度設計パラメータに準拠しないセグメント２の配置を示す。
【００６０】
限度を超えるトンネルコーナ角を修正すること
図７Ａおよび図７Ｂは、本発明の実施形態におけるトンネルコーナ角限度を超えるトンネルコーナ角を修正するための例示的なコンピュータ方法を示す図７１０、図７１２、図７２０、図７２２を示す。図７Ａおよび図７Ｂにおいて、図４Ａおよび図４Ｂの場合と同様に、トンネルコーナ角設計パラメータ（セグメント間の最大水平角）は、６０度に設定され、トンネル回転半径限度パラメータ（最小回転半径）は、２０メートルに設定される。図７Ａの図７１０、および図７Ａの７１２において、表示されるカーソルによって示されるポインティングデバイスが、トンネル設計の視覚的モデルにおける配置のために新たなポイント（ポイント３）を移動させるのに使用されている。新たなポイント３の配置は、ポイント３と既存のセグメント１のエンドポイント（ポイント２）の間に配置されている新たなセグメント（セグメント２）を定義する。図７Ａの図７１０において、図４Ａの図４１４の場合と同様に、ポインティングデバイスは、位置を、その位置におけるセグメント２の対応する配置が、６０度限度を超える、６１度のセグメント１とセグメント２の間の水平角をもたらすように通している。
【００６１】
図７Ａの図７１０において、図４Ａの図４１４の場合と同様に、「最大が超えられた場合、コーナ角を円弧で自動的に置き換える」オプションが「ＯＦＦ」に設定されており、このため、システムは、プレビューにおける過度のコーナ角を、そのコーナ角を円弧で置き換えることによって自動的に修正することをしない。さらに、図７Ａの図７１０において、図４Ａの図４１４の場合と同様に、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。このため、システムは、トンネルコーナ角限度でプレビューを制限するように構成されず、したがって、ポイント３を移動させるポインティングデバイスの位置は、その位置におけるポイント３の配置が、トンネルコーナ角限度を超えるセグメント１とセグメント２の間の水平角をもたらすものの、プレビューの範囲内で追跡される。それどころか、システムは、トンネルコーナ限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図７１０において、図４Ａの図４１４の場合と同様に、システムは、プレビューにおいて、セグメント２、ならびにセグメント２の配置によってもたらされる６１度の角をハイライトして（点線）、トンネルコーナ限度設計パラメータに準拠しないセグメント２の配置を示す。
【００６２】
図７Ａの図７１２は、図７Ａの図７１０と同一のシナリオを示すが、図７１２において、「最大が超えられた場合、コーナ角を円弧で自動的に置き換える」オプションは、「ＯＮ」に設定されている。このため、システムは、プレビューにおいてコーナ角を円弧で置き換えることを、そのコーナ角がトンネルコーナ角限度パラメータ（セグメント間の最大水平角）を超えた場合、行うように構成される。図７１２において、ユーザが、セグメント１とセグメント２の間のコーナ角が６１度となるようにセグメント２が配置されることをもたらすように位置を越えてポインティングデバイスを移動させる一方で、システムが、そのような配置が６０度の最大水平角を超えることをリアルタイムで決定し、プレビューにおいてその角を円弧で自動的に置き換える。置換え円弧は、コーナ角を形成していたセグメントに接するように作成される。図７Ｃに示されるとおり、円弧の中心は、各セグメント（セグメント１およびセグメント２）の垂直方向を表す２つのベクトルが、最初の線セグメントから正確に半径オフセット距離において、どこで交差するかを解くことによって見出され、過度のコーナ角を置き換える円弧をそれに相応して配置するのに使用される。セグメントが、２０メートルの回転半径を下回る回転半径を使用することなしには、その接線に対応するには短すぎる場合、システムは、プレビューにおいてそのコーナ角を置き換えることをしない。図７１２において、セグメント１および２は、その接線に対応するのに十分なだけ長く、このため、プレビューにおいてコーナ角を円弧で置き換えることが行われる。
【００６３】
プレビューにおけるこの自動的置換えを用いて、ユーザは、セグメント２の配置がトンネルコーナ角限度パラメータによってもはや制限されていないため（セグメント１は、コーナ角によってもはや定義されず、代わりに、円弧によって定義される）、ポイント３を移動させ続けることができる。さらに、円弧の回転半径は、２０メートルであるので、その円弧は、２０メートルに設定されたトンネル回転半径設計パラメータ（最小回転半径）に準拠し、このため、プレビューにおける視覚的モデルは、セグメント２に関してさらなる修正も制限も要求しない。次に、ユーザが、ポインティングデバイスを使用してその位置を選択した場合、システムは、ポイント３の現在の位置をデジタル化し、視覚的モデルにおけるセグメント２のプレビューされる配置（置き換えられた円弧を有する）をコミットする。このため、視覚的モデルによって表されるトンネル設計は、指定されたトンネル設計パラメータに準拠する。
【００６４】
図７Ｂの図７２０および図７２２において、ポイント２は、視覚的モデルの既存のセグメント１とセグメント２の間の頂点である。図７２０および図７２２におけるポインティングデバイスは、視覚的モデルの範囲内でポイント２を移動させるのに使用されている。移動中に通される位置におけるポイント２の配置は、セグメント１とセグメント２の間のコーナ角が調整されるように、セグメント１とセグメント２の配置を調整する。図７Ｂの図７２０において、図４Ｂの図４２４の場合と同様に、ポインティングデバイスは、セグメント１およびセグメント２の対応する配置が、６１度の水平角をもたらすように、ポイント２を配置するように移動される。図７Ｂの図７２０において、図４Ｂの図４２４の場合と同様に、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。さらに、図７２０において、図４Ｂの図４２４の場合と同様に、「最大が超えられた場合、コーナ角を円弧で自動的に置き換える」オプションが「ＯＦＦ」に設定されており、これは、システムが、コーナ角を、それを円弧で置き換えることによって自動的に修正することを防止する。このため、システムは、プレビューを制限するようにも、コーナ角を修正するようにも構成されず、したがって、ポイント２を移動させるポインティングデバイスの位置が、その位置におけるポイント２の配置が、トンネルコーナ角限度を超えるセグメント１とセグメント２の間の水平角をもたらすものの、プレビューの範囲内で追跡される。システムは、トンネルコーナ限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。図７２０に示されるとおり、システムは、プレビューにおいて、セグメント２、ならびにセグメント２の配置によってもたらされる６１度の角をハイライトして（点線）、セグメント２の配置がトンネルコーナ限度設計パラメータに準拠しないことを示す。
【００６５】
図７Ｂの図７２２は、図７２０と同一のシナリオを示すが、図７２２において、「最大が超えられた場合、コーナ角を円弧で自動的に置き換える」オプションは、「ＯＮ」に設定されている。このため、システムは、プレビューにおいてコーナ角を円弧で置き換えることを、そのコーナ角がトンネルコーナ角限度パラメータ（セグメント間の最大水平角）を超えた場合、行うように構成される。図７２２において、ユーザが、セグメント１とセグメント２の間のコーナ角が６１度に調整されることをもたらす位置を越えてポイント２を移動させる一方で、システムが、そのような配置が６０度の最大水平角を超えることをリアルタイムで決定する。次に、システムは、プレビューにおいてその角を円弧で自動的に置き換えることが可能である。置換え円弧は、コーナ角を形成していたセグメントに接するように作成される。セグメントが、２０メートルの回転半径を下回る回転半径を使用することなしには、その接線に対応するには短すぎる場合、システムは、プレビューにおいてそのコーナ角を置き換えることをしない。図７２０において、セグメント１および２は、その接線に対応するのに十分なだけ長く、このため、プレビューにおいてコーナ角を円弧で置き換えることが行われる。
【００６６】
プレビューにおけるこの自動的置換えを用いて、ユーザは、セグメント２の配置がトンネルコーナ角限度パラメータによってもはや制限されていないため（セグメント２は、コーナ角によってもはや定義されず、代わりに、円弧によって定義される）、ポイント２を移動させ続けることができる。さらに、円弧の回転半径は、２０メートルであるので、その円弧は、２０メートルに設定されたトンネル回転半径設計パラメータ（最小回転半径）に準拠し、このため、プレビューにおける視覚的モデルは、セグメント２に関してさらなる修正も制限も要求しない。次に、ユーザが、ポインティングデバイスを使用してその位置を選択した場合、システムは、ポイント２の現在の位置をデジタル化し、視覚的モデルにおけるセグメント２のプレビューされる配置（置き換えられた円弧を有する）をコミットする。このため、視覚的モデルによって表されるトンネル設計は、指定されたトンネル設計パラメータに準拠する。
【００６７】
プレビューにおけるこの自動的置換えを用いて、ユーザは、セグメント１およびセグメント２の配置がトンネルコーナ角限度パラメータによってもはや制限されていないため（それらは、コーナ角によってもはや定義されず、代わりに、円弧によって定義される）、ポイント２を移動させることを続けることができる。さらに、円弧の回転半径は、２０メートルであるので、その円弧は、２０メートルに設定されたトンネル回転半径設計パラメータ（最小回転半径）に準拠し、このため、プレビューにおける視覚的モデルは、ポイント２に関してさらなる修正も制限も要求しない。次に、ユーザが、ポインティングデバイスを使用してその位置を選択した場合、システムは、ポイント２の現在の位置をデジタル化し、視覚的モデルにおけるセグメント２のプレビューされる配置（置き換えられた円弧を有する）をコミットする。このため、視覚的モデルによって表されるトンネル設計は、指定されたトンネル設計パラメータに準拠する。
【００６８】
トンネル勾配遷移を修正すること
図８Ａ〜図８Ｃは、本発明の実施形態においてトンネル勾配遷移を修正するコンピュータ例方法を示す図８１０、図８１２、図８２０、図８２２、図８３０、図８３２を示す。図８Ａ〜図８Ｃにおいて、勾配限度パラメータ（最大±垂直勾配）が±１５％に設定され、勾配遷移限度パラメータ（セグメント間の最大±遷移）がデルタ５％に設定される。さらに、図８Ａ〜８Ｃにおいて、「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションが「ＯＦＦ」に設定されている。図８Ａの図８１０、および図８Ｂの８２０、および図８Ｃの８３０において、表示されるカーソルによって示されるポインティングデバイスが、トンネル設計の視覚的モデルにおける配置のために新たなポイント（ポイント３）を移動させるのに使用されている。新たなポイント３の配置は、ポイント３とセグメント１のエンドポイント（ポイント２）の間に配置されている新たなセグメント（セグメント２）を定義する。図８Ａの図８１０において、ポイント３の配置のプレビューは、セグメント２のそれぞれの配置が、セグメント１とセグメント２の間に−１５％の垂直勾配をもたらすことを示す。図８Ｂの図８２０において、ポイント３の配置のプレビューは、セグメント２のそれぞれの配置が、セグメント１とセグメント２の間に−１２％の垂直勾配をもたらすことを示す。図８Ｃの図８３０において、ポイント３の配置のプレビューは、セグメント２のそれぞれの配置が、セグメント１とセグメント２の間に−８％の垂直勾配をもたらすことを示す。このため、図８１０、図８２０、および図８３０は、デルタ５％のセグメント間の構成された最大±遷移を超える。「トンネルがトンネルパラメータおよび許容誤差を超えることを防止する」オプションと「垂直遷移を自動的に平滑化する」オプションがともに「ＯＦＦ」に設定されているので、システムは、プレビューを制限するようにも、準拠しない勾配を修正するようにも構成されず、したがって、ポインティングデバイスの位置は、その位置におけるポイント３の配置が、セグメント２が勾配遷移限度パラメータを超える勾配を有するようにするものの、プレビューの範囲内でポイント３に移動される。それどころか、システムは、図８１０、図８２０、および図８３０においてセグメント２、および準拠しない勾配をハイライトすること（点線）によって示されるとおり、トンネル勾配遷移限度設計パラメータに準拠しない視覚的モデルの部分を視覚的に示す。
【００６９】
「垂直遷移を自動的に平滑化する」オプションが、この場合、「ＯＮ」に設定されていることを除いて、図８Ａの図８１２、図８Ｂの８２２、および図８Ｃの８３２は、それぞれ、図８Ａの図８１０、図８Ｂの８２０、および図８Ｃの８３０と同一のシナリオを例示する。すなわち、この場合、システムは、図８１２、図８２２、および図８３２における過度の勾配遷移を自動的に平滑化するように構成される。このため、図８１２、図８２２、および図８３２において、システムは、セグメント１とセグメント２の間のそれぞれの過度の遷移を、８メートル長遷移セグメント（８メートルに設定された「最小遷移セグメント長」パラメータによって指定されるとおり）を挿入して、より小さい等しいサイズの勾配遷移に細分することによって自動的に平滑化することを実行する。システムは、セグメント１とセグメント２の間の最大±勾配遷移がデルタ５％の指定された許容誤差を超えないことを確実にするのに必要とされる最小長セグメント（１つまたは複数の）の数を計算する。次に、システムは、それらの新たな最小長セグメントを挿入して、セグメント（セグメント１および２）間の垂直勾配遷移を等化する。それらの新たなセグメントは、現在の勾配遷移ポイントから等しい距離で接続される。
【００７０】
最小長セグメントの数を計算するのに、最小長セグメントの数＝上限（絶対（セグメント間の現在の勾配遷移）／セグメント間の最大±勾配遷移）−１である。図８Ａ〜図８Ｃにおいて、セグメント間の最大±勾配遷移は、デルタ５％に設定されることに留意されたい。
【００７１】
セグメント間の新たな勾配遷移を計算するのに、新たな勾配遷移セグメント＝現在の勾配遷移／（最小遷移セグメント長＋１）である。図８Ａ〜図８Ｃにおいて、最小遷移セグメント長＝８メートルであることに留意されたい。
【００７２】
このようにして、図８Ａの図８１２において、２つの新たなセグメント（セグメントＡおよびセグメントＢ）が、垂直遷移を平滑化するように自動的に生成される。それらは、以下に基づいて計算される。すなわち、セグメント１＝０％勾配であり、セグメント２＝−１５％勾配であり、その２つのトンネルセグメント間の現在の勾配遷移＝−１５％であり、要求される最小長セグメントの数＝上限（絶対（−１５％）￥５％）−１＝２である（￥はバックスラッシュの代替文字）。セグメント間の新たな勾配遷移は、＝−１５％／（２＋１）＝−５％である。新たなセグメントの勾配は、セグメントＡ＝−５％であり、セグメントＢ＝−１０％である。
【００７３】
図８の図８２２において、２つの新たなセグメント（セグメントＡおよびセグメントＢ）が、垂直遷移を平滑化するように自動的に生成される。それらは、以下に基づいて計算される。すなわち、セグメント１＝０％勾配であり、セグメント２＝−１２％勾配であり、その２つのトンネルセグメント間の現在の勾配遷移＝−１２％であり、要求される最小長セグメントの数＝上限（絶対（−１２％）￥５％）−１＝２である。セグメント間の新たな勾配遷移は、＝−１２％／（２＋１）＝−４％である。新たなセグメントの勾配は、セグメントＡ＝−４％であり、セグメントＢ＝−８％である。
【００７４】
図８Ｃの図８３２において、１つの新たなセグメント（セグメントＡ）が、垂直遷移を平滑化するように自動的に生成される。それらは、以下に基づいて計算される。すなわち、セグメント１＝０％勾配であり、セグメント２＝−８％勾配であり、その２つのトンネルセグメント間の現在の勾配遷移＝−８％であり、要求される最小長セグメントの数＝上限（絶対（−８％）￥５％）−１＝１である。セグメント間の新たな勾配遷移は、＝−８％／（１＋１）＝−４％である。新たなセグメントの勾配は、セグメントＡ＝−４％である。
【００７５】
プレビューにおけるこの自動的置換えを用いて、ユーザは、セグメント２の配置が勾配限度パラメータおよび勾配遷移限度パラメータによってもはや制限されていないため、ポイント３を移動させ続けることができる。次に、ユーザが、ポインティングデバイスを使用してその位置を選択した場合、システムは、ポイント３の現在の位置をデジタル化し、視覚的モデルにおけるセグメント２（および図８１２および図８２２における新たなセグメントＡおよびＢ、ならびに図８３２における新たなセグメントＡ）のプレビューされる配置をコミットする。このため、図８Ａ〜図８Ｃにおける視覚的モデルによって表されるトンネル設計は、指定されたトンネル設計パラメータに準拠する。
【００７６】
デジタル処理環境
図９は、本発明の実施形態による文書（設計システムファイル）においてトンネルを設計するのに使用されることが可能であるコンピュータベースのシステム９２０の簡略化されたブロック図である。システム９２０は、バス９２５を備える。バス９２５は、システム９２０の様々な構成要素の間のインターコネクタ（interconnector）の役割をする。バス９２５に接続されるのが、キーボード、マウス、ディスプレイ、スピーカなどの様々な入力デバイスおよび出力デバイスをシステム９２０に接続するための入出力デバイスインタフェース９２８である。中央処理装置（ＣＰＵ）９２２が、バス９２５に接続され、コンピュータ命令の実行を提供する。メモリ９２７が、コンピュータ命令を実行するために使用されるデータのための揮発性ストレージを提供する。ストレージ９２６が、オペレーティングシステム（図示せず）などのソフトウェア命令のための不揮発性ストレージを提供する。詳細には、メモリ９２７および／またはストレージ９２６は、（ａ）図１Ａ〜図２Ｂにおいて前段で詳述されるトンネルを設計するための方法１００〜２００、（ｂ）図３Ａ〜図３Ｅのユーザインタフェース、および（ｃ）図４Ａ〜図８Ｃの動作を実施するためのプログラム命令を有して構成される。また、システム９２０は、クラウド、ワイドエリアネットワーク（ＷＡＮ）、およびローカルエリアネットワーク（ＬＡＮ）を含め、当技術分野において知られる任意の様々なネットワークに接続するためのネットワークインタフェース９２１も備える。
【００７７】
バス９２５にさらに接続されるのが、第１のモジュール９２３である。第１のモジュール９２３は、トンネル設計をユーザインタフェース上の視覚的モデルとしてロードするように構成される。第１のモジュール９２３は、当技術分野において知られる任意の手段を介してローディング機能を提供することが可能である。例えば、第１のモジュール９２３は、ストレージデバイス９２６上、またはメモリ９２７上に記憶されたトンネル設計データを参照することが可能である。さらなる例として、第１のモジュール９２３は、ネットワークインタフェース９２１および／または入出力デバイスインタフェース９２８を介してシステム９２０に通信可能に結合された任意のポイントからトンネル設計をロードすることが可能である。
【００７８】
システム９２０は、第１のモジュール９２３に通信可能に／動作可能に結合された第２のモジュール９２４をさらに備える。第２のモジュール９２４は、トンネル設計の視覚的モデルに行われている追加または変更のリアルタイムのトンネルプレビューを提供するように構成される。第２のモジュール９２４は、当技術分野において知られる任意の手段を介してリアルタイムの機能を提供することが可能である。例えば、第２のモジュール９２４は、視覚的モデルに関するリアルタイムの表示データ（例えば、ピクセルデータ）をストレージデバイス９２６上、またはメモリ９２７上に記憶することが可能である。別の例として、第２のモジュール９２４は、リアルタイムのプレビューにおけるオブジェクトの配置がトンネル設計パラメータに準拠するかどうかを、バス９２５を介してＣＰＵ９２２を用いて計算することが可能である。さらなる例として、第２のモジュール９２４は、ネットワークインタフェース９２１および／または入出力デバイスインタフェース９２８を介してシステム９２０に通信可能に結合された任意のポイントからリアルタイムのプレビューをバッファすることが可能である。
【００７９】
本明細書で説明される例示的な実施形態は、異なる多くの方法において実施されることが可能であることを理解されたい。いくつかの実例において、本明細書において説明される様々な方法および機械はそれぞれ、コンピュータシステム９２０などの物理的な、仮想の、またはハイブリッドの汎用コンピュータによって実施されることが可能である。コンピュータシステム９２０は、例えば、ソフトウェア命令を、ＣＰＵ９２２によって実行されるようにメモリ９２７または不揮発性ストレージ９２６にロードすることによって、本明細書において説明される方法を実行する機械に変換されることが可能である。さらに、第１のモジュール９２３と第２のモジュール９２４は別々のモジュールとして示されるが、例示的な実施形態において、これらのモジュールは、様々な構成を使用して実施されることが可能である。
【００８０】
システム９２０およびその様々な構成要素は、本明細書において説明される本発明の任意の実施形態を実行するように構成されることが可能である。例えば、システム９２０は、図１Ａ〜図２Ｂに関連して前段で説明される方法１００〜２００、ならびに図３Ａ〜図８Ｃのサポートするユーザインタフェースおよび動作を実行するように構成されることが可能である。例示的な実施形態において、第１のモジュール９２３および第２のモジュール９２４は、メモリ９２７上、および／またはストレージデバイス９２６上に記憶されたソフトウェアにおいて実施されることが可能である。そのような例示的な実施形態において、ＣＰＵ９２２およびメモリ９２７が、コンピュータコード命令がメモリ９２７上、および／またはストレージデバイス９２６上に記憶されて、トンネル設計を視覚的モデルとしてロードする第１のモジュールを実施する。さらに、システム９２０の構成要素が、第１のモジュールに動作可能に結合され、かつ視覚的モデルに対する追加および変更のリアルタイムのプレビューを提供するように構成された第２のモジュールを実施する。
【００８１】
図１０は、本発明の実施形態が実施されることが可能なコンピュータネットワーク環境１０６０を示す。コンピュータネットワーク環境１０６０において、サーバ３１が、通信ネットワーク３２を介してクライアント３３ａ〜ｎに結び付けられる。環境１０６０は、クライアント３３ａ〜ｎが、単独で、またはサーバ３１との組合せで、前段で説明される方法のいずれかを実行することを可能にするのに使用されることが可能である。前段で説明される例示的な実施形態は、異なる多くの方法で実施されることが可能であることを理解されたい。いくつかの実例において、本明細書において説明される様々な方法および機械はそれぞれ、物理的な、仮想の、またはハイブリッドの汎用コンピュータ、あるいはコンピュータ環境１０６０などのコンピュータネットワーク環境によって実施されることが可能である。
【００８２】
実施形態、またはそれらの態様は、ハードウェア、ファームウェア、またはソフトウェアの形態で実施されることが可能である。ソフトウェアにおいて実施される場合、ソフトウェアは、プロセッサがソフトウェア、またはその命令のサブセットをロードすることができるようにするように構成された任意の非一時的コンピュータ可読媒体上に記憶されることが可能である。次に、プロセッサが、それらの命令を実行し、本明細書において説明される様態で動作するように、または装置を動作させるように構成される。
【００８３】
さらに、ファームウェア、ソフトウェア、ルーチン、または命令が、データプロセッサのいくつかのアクションおよび／または機能を実行するものとして本明細書において説明されることが可能である。しかし、本明細書に包含されるそのような説明は、単に便宜のためであること、およびそのようなアクションは、実際には、ファームウェア、ソフトウェア、ルーチン、命令などを実行するコンピューティングデバイス、プロセッサ、コントローラ、または他のデバイスからもたらされることを認識されたい。
【００８４】
流れ図、ブロック図、およびネットワーク図は、より多くの、またはより少ない要素を含むことが可能であり、異なるように構成されることが可能であり、あるいは異なるように表されることが可能であることを理解されたい。しかし、いくつかの実施が、ブロック図およびネットワーク図を規定することが可能であり、実施形態の実行を示すブロック図およびネットワーク図のいくつかは、特定の方法で実施されることが可能であることをさらに理解されたい。
【００８５】
したがって、さらなる実施形態が、様々なコンピュータアーキテクチャ、物理的コンピュータ、仮想コンピュータ、クラウドコンピュータ、および／またはそれらの何らかの組合せにおいて実施されることも可能であり、このため、本明細書において説明されるデータプロセッサは、実施形態の限定としてではなく、例示の目的だけに向けられている。
【００８６】
本発明は、その例示的な実施形態を参照して詳細に示され、説明されてきたが、添付される特許請求の範囲によって包含される本発明の範囲を逸脱することなく、そこにおいて形態および詳細の様々な変更が行われることが可能であることが当業者によって理解されよう。
【図１Ａ】
2017091539.tif 000004
【図１Ｂ】
2017091539.tif 000005
【図１Ｃ】
2017091539.tif 000006
【図１Ｄ】
2017091539.tif 000007
【図２Ａ】
2017091539.tif 000008
【図２Ｂ】
2017091539.tif 000009
【図３Ａ】
2017091539.tif 000010
【図３Ｂ】
2017091539.tif 000011
【図３Ｃ】
2017091539.tif 000012
【図３Ｄ】
2017091539.tif 000013
【図３Ｅ】
2017091539.tif 000014
【図４Ａ】
2017091539.tif 000015
【図４Ｂ】
2017091539.tif 000016
【図４Ｃ】
2017091539.tif 000017
【図４Ｄ】
2017091539.tif 000018
【図５Ａ】
2017091539.tif 000019
【図５Ｂ】
2017091539.tif 000020
【図５Ｃ】
2017091539.tif 000021
【図６Ａ】
2017091539.tif 000022
【図６Ｂ】
2017091539.tif 000023
【図７Ａ】
2017091539.tif 000024
【図７Ｂ】
2017091539.tif 000025
【図７Ｃ】
2017091539.tif 000026
【図８Ａ】
2017091539.tif 000027
【図８Ｂ】
2017091539.tif 000028
【図８Ｃ】
2017091539.tif 000029
【図９】
2017091539.tif 000030
【図１０】
2017091539.tif 000031