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.