GHL Version 3.4.4 機能一覧
以下は GHL 3.4.4 が含んでいる機能の一覧です。
目次
GHL 3.4.4 は、以下の形状をサポートしています。
Pnt | 点 | Pln | 平面 |
Vec | ベクトル | Sph | 球面 |
Axp | 局所座標系 | Cyl | 円柱面 |
Lin | 直線 | Con | 円錐面 |
Lsg | ポリライン | Bzs | ベジエ曲面(多項式/有理) |
Cir | 円 | Bss | Bスプライン曲面(多項式/有理) |
Ell | 楕円 | Les | 柱面 |
Par | 放物線 | Rvs | 回転面 |
Hyp | 双曲線 | Rts | 矩形有限曲面 |
Bzc | ベジエ曲線(多項式/有理) | Cbs | 曲線境界曲面 |
Bsc | Bスプライン曲線(多項式/有理) | GS | Sパッチ |
Trc | トリム曲線 |
Cmc | 複合曲線 |
GHL 3.4.4 は、これらの要素を扱うモジュールを組み合わた、
「2Dサブセット」あるいは「フルセット」のいずれかで御利用頂くことができます。
サブセット名 | 対象要素 |
---|
2Dサブセット | 2次元要素(点/ベクトル/局所座標/曲線) + ユーティリティ |
フルセット | 2Dサブセット + 3次元要素(点/ベクトル/局所座標/曲線/曲面) |
ある要素の様々な幾何特性を得る
- あるパラメータ値 (t) における曲線の幾何特性(位置、接ベクトル、曲率、レイ率)を得る
- あるパラメータ値 ((u, v)) における曲面の幾何特性(位置、偏導関数、主曲率)を得る
- 曲線の長さを得る
- 曲線の面積を得る
- 曲線の存在領域(矩形)を得る
- 曲線の尖点を得る
- 自由曲線の特異点を得る
- 自由曲線の変曲点を得る
- 自由曲線、ラインセグメントの自己交差点を得る(2D)
二曲線間の交点を得る
| Lin | Cir | Ell | Par | Hyp | Bzc | Bsc | Lsg | Trc | Cmc |
---|
Lin | ○ | − | − | − | − | − | − | − | − | − |
---|
Cir | ○ | ○ | − | − | − | − | − | − | − | − |
---|
Ell | ○ | ○ | ○ | − | − | − | − | − | − | − |
---|
Par | ○ | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Hyp | ○ | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Bzc | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Bsc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Lsg | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Trc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Cmc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
曲線と曲面の交点を得る
| Lin | Cir | Ell | Par | Hyp | Bzc | Bsc | Trc | Cmc |
---|
Pln | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Sph | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Cyl | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Con | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Bzs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Bss | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Les | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Rvs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Cbs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
二曲面間の交線を得る
| Pln | Sph | Cyl | Con | Bzs | Bss | Les | Rvs | Cbs |
---|
Pln | ○ | − | − | − | − | − | − | − | − |
---|
Sph | ○ | ○ | − | − | − | − | − | − | − |
---|
Cyl | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Con | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Bzs | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Bss | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Les | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Rvs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Cbs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
二曲線間の干渉を得る
| Bzc | Bsc | Lsg | Trc | Cmc |
---|
Bzc | ○ | − | − | − | − |
---|
Bsc | ○ | ○ | − | − | − |
---|
Lsg | − | − | ○ | − | − |
---|
Trc | − | − | − | ○ | − |
---|
Cmc | − | − | − | − | ○ |
---|
3次元については Lsg vs. Lsg だけがあります。
二曲面間の干渉を得る
| Pln | Bzs | Bss |
---|
Pln | − | − | − |
---|
Bzs | ○ | ○ | − |
---|
Bss | ○ | ○ | ○ |
---|
角度(2D/3D)
二要素のなす角度を得る
距離(2D/3D)
二要素間の距離を得る
点と曲線間の最短距離を得る
- 曲線:Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Lsg/Trc/Cmc
二曲線間の最短距離を得る
| Lin | Cir | Ell | Par | Hyp | Bzc | Bsc | Lsg | Trc | Cmc |
---|
Lin | ○ | − | − | − | − | − | − | − | − | − |
---|
Cir | ○ | ○ | − | − | − | − | − | − | − | − |
---|
Ell | ○ | ○ | ○ | − | − | − | − | − | − | − |
---|
Par | ○ | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Hyp | ○ | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Bzc | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Bsc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Lsg | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Trc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Cmc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
ある点が他の要素上にあるかどうかを調べる
- 点/曲線:Pnt/Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Lsg/Trc/Cmc
- 曲面:Pln/Sph/Cyl/Con/Bzs/Bss/RBzs/RBss/Les/Rvs/Rts/Cbs
ある点が曲線の左右どちら側にあるかを調べる
- 曲線:Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Trc/Cmc
Bzc, Bsc, Trc, Cmc については2次元のみです。
投影(2D/3D)
ある点から曲線/曲面への垂線の足を得る
- 曲線:Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Trc/Cmc
- 曲面:Pln/Sph/Cyl/Con/Bzs/Bss/Les/Rvs/Cbs
ある曲線を平面に投影する
- 曲線:Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Lsg/Trc/Cmc
二曲線間の共通法線を得る
| Lin | Cir | Ell | Par | Hyp | Bzc | Bsc | Lsg | Trc | Cmc |
---|
Lin | ○ | − | − | − | − | − | − | − | − | − |
---|
Cir | ○ | ○ | − | − | − | − | − | − | − | − |
---|
Ell | ○ | ○ | ○ | − | − | − | − | − | − | − |
---|
Par | ○ | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Hyp | ○ | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Bzc | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Bsc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Lsg | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Trc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Cmc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
3次元については Lin vs. Lin だけがあります。
ある点から曲線への接線を得る
- 曲線:Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Trc/Cmc
二曲線間の共通接線を得る
| Lin | Cir | Ell | Par | Hyp | Bzc | Bsc | Trc | Cmc |
---|
Lin | ○ | − | − | − | − | − | − | − | − |
---|
Cir | ○ | ○ | − | − | − | − | − | − | − |
---|
Ell | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Par | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Hyp | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Bzc | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Bsc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Trc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Cmc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
- 与えられた2点を通過する直線を得る
- 与えられた点を通過する円錐曲線 (Cir/Ell/Par/Hyp) を得る
- 3要素(点/直線/円)に接する円を得る(2D)
- 与えられた点列を補間する自由曲線 (Bsc) を得る
- 与えられた点列を近似する自由曲線 (Bzc/Bsc) を得る (次数/セグメント指定)
- 与えられた点列を近似する自由曲線 (Bzc/Bsc) を得る (精度指定)
- 与えられた点網を補間する自由曲面 (Bss) を得る
- 与えられた境界を補間する自由曲面 (Bss) を得る
- 与えられた点網を近似する自由曲面 (Bzs/Bss) を得る (次数/セグメント指定)
- 与えられた点網を近似する自由曲面 (Bzs/Bss) を得る (精度指定)
- 与えられた曲線を直線近似する点列を得る
- 与えられた曲線を再現する有理自由曲線 (Bzc/Bsc) を得る
- 与えられた曲面を再現する有理自由曲面 (Bzs/Bss) を得る
- 与えられた曲面の等パラメータ曲線を得る
- 与えられた曲面を平面近似する三角形群を得る
- 与えられた自由曲面 (Bzs/Bss) を指定の精度で再現する格子点を得る
- 与えられたBスプライン曲面 (Bss) のセグメント数を減らす
2次元形状要素間にフィレットを挿入する
| Pnt | Lin | Cir | Ell | Par | Hyp | Bzc | Bsc | Trc |
---|
Pnt | ○ | − | − | − | − | − | − | − | − |
---|
Lin | ○ | ○ | − | − | − | − | − | − | − |
---|
Cir | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Ell | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Par | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Hyp | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Bzc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Bsc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Trc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
3次元形状要素間にフィレットを挿入する
| Pnt | Lin | Cir | Ell | Par | Hyp | Bzc | Bsc |
---|
Pnt | ○ | − | − | − | − | − | − | − |
---|
Lin | ○ | ○ | − | − | − | − | − | − |
---|
Cir | ○ | ○ | ○ | − | − | − | − | − |
---|
Ell | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Par | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Hyp | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Bzc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Bsc | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
| Pnt | Lin | Cir | Ell | Par | Hyp | Bzc | Bsc |
---|
Pln | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Sph | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Cyl | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Con | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Bzs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Bss | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Les | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Rvs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
Cbs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
| Pln | Sph | Cyl | Con | Bzs | Bss | Les | Rvs | Cbs |
---|
Pln | ○ | − | − | − | − | − | − | − | − |
---|
Sph | ○ | ○ | − | − | − | − | − | − | − |
---|
Cyl | ○ | ○ | ○ | − | − | − | − | − | − |
---|
Con | ○ | ○ | ○ | ○ | − | − | − | − | − |
---|
Bzs | ○ | ○ | ○ | ○ | ○ | − | − | − | − |
---|
Bss | ○ | ○ | ○ | ○ | ○ | ○ | − | − | − |
---|
Les | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − | − |
---|
Rvs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | − |
---|
Cbs | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
---|
ある形状をオフセットする
- 2次元要素:Pnt/Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Trc/Cmc
- 3次元要素:Pnt/Lin/Cir/Ell/Par/Hyp/Bzc/Bsc/Trc/Pln/Sph/Cyl/Con/Bzs/Bss/Les/Rvs/Cbs
2次元要素のオフセット結果は線、
3次元要素のオフセット結果は面になります。
スイーピング
ある曲線A (プロファイル) を別の曲線B (スイープパス) に沿って
掃引した軌跡を表す曲面を生成します。
- 入力要素:Bsc,RBsc
- 出力要素:Bss,RBss
スキニング
複数の曲線の間を補間するような曲面を生成します。
- 入力要素:Bsc,RBsc
- 出力要素:Bss,RBss
- ラインセグメントを分割する
- ラインセグメントの前後を切断する
- ラインセグメントの向きを逆にする
- 閉じたラインセグメントの向きを判定する
- Bzc/Bzs の次数を増加させる
- Bzc/Bzs を分割する
- Bzc を多項式表現に変換する
- Bernstein 関数を評価する
- Bsc/Bss の次数を増加させる
- Bsc/Bss に新たなノットを挿入する
- Bsc/Bss を分割する
- Bsc/Bss を Bzc/Bzs 群に変換する
- Bsc のあるセグメントを多項式表現に変換する
- Bspline 関数を評価する
- あるパラメータ値に対応する Bspline のセグメント番号を得る
- Bspline の n 番目のノット値を得る
- ブロッサミング
- Bzs が平面状であるか否かを判定する
- 等々
- 複合曲線の最後尾にトリム曲線を追加する
- 複合曲線を構成するトリム曲線の数を返す
- 複合曲線を構成する i 番目のトリム曲線を返す
- 複合曲線の任意の箇所にトリム曲線を追加する
- 複合曲線のセグメント区間を得る
- 閉じた複合曲線の自己干渉除去(2D)
- 閉じた複合曲線の集合演算(2D)
- 等々
- 疑似埋め込みグラフに頂点/辺/面を生成する
- 疑似埋め込みグラフから頂点/辺/面を削除する
- 疑似埋め込みグラフの各頂点/辺/面に対して任意のデータを付加する
- 疑似埋め込みグラフの各頂点/辺/面に対して指定の関数を呼び出す
- 等々
- ある点群に対するボロノイ図/ドロネー図を生成する
- ボロノイ図/ドロネー図の各頂点/辺/面に対して任意のデータを付加する
- 等々
- ある点群に対する三角形分割を生成する
- 三角形分割の各頂点/辺/面に対して任意のデータを付加する
- 三角形分割の各頂点/辺/面に対して指定の関数を呼び出す
- 等々
- ある点群の多角形に対する内外判定
- 多角形の向き(左回り/右回り)を判定する
- 多角形同士の集合演算(和、積)
- 等々
Sパッチとは、任意の数の辺を境界とする曲面パッチです。
- Sパッチの初期化
- Sパッチを解放する
- Sパッチをベジエ曲面で近似する
- Sパッチを三角形群に変換する
- Sパッチの幾何特性評価
- Gregory Sパッチを生成する
- Sパッチの次数上げ
- Sパッチの法線ベクトルを求める
- 文字列プリント関数の設定/獲得
- 実数値の小数点以下の桁数の設定/獲得
- 要素タイプのプリント
- 要素の定義情報のプリント
- ある点(またはベクトル)を一段階上位の座標系に変換する
- ある点(またはベクトル)を一段階下位の座標系に変換する
GHL が扱う座標系は今のところユークリッド右手直交座標系のみです。
- あるベクトルのノルムを得る
- あるベクトルを単位化する
- 二つベクトルの(和/差/内積/外積)を得る
- 複数ベクトルの重み付き総和を得る
- あるベクトルに直交するベクトルを得る
- 2次方程式の解を得る(実数解、複素解)
- n次代数方程式のすべての解を得る(複素数)
- n次代数方程式のある一つの解を得る(実数解、複素解)
- 多変数の非線形連立方程式を解く(実数解)
- ある関数について区間 ([a, b]) の定積分を得る
- ベクトル多項式の位置ベクトルと一階微分の外積式を得る
- ベクトル多項式の一階微分と二階微分の外積式を得る
- 実数多項式の値を得る
- 複素多項式の値を得る
- 二多項式の積の多項式を得る
- ベクトル多項式のパラメータ区間を変換する
- ある行列をLU分解する
- 連立一次方程式を解く
- 線形最小自乗問題を解く
- 実数配列処理
- リストデータ処理
- 2分木/n分木データ処理
- 許容誤差の外部変数にデフォルト値を設定する
- 点群が共線かどうかを調べる
- 点群が共面かどうかを調べる
- ある形状を平行移動させる
- ある形状を回転させる
- ある形状を拡大/縮小させる
- 2次元のベクトルを角度に変換する
- 角度を0から2πの間に正規化する
- 引数内の最大値/最小値を返す
- パスカルの三角形
- 最大公約数、最小公倍数
- 等々
Copyright (c) 2000 Precision Modeling Laboratory,Inc., Tokyo, Japan. All Rights Reserved.