70
X 7107 : 2005 (ISO 19107 : 2003)
では,しばしば,向きが適切に用いられないことによって,あいまいさの原因となる。
6.4.37 GMTriangulatedSurface GMTriangulatedSurface(三角網曲面)(図21参照)は,複数の三角形
(GMTriangle)だけから構成したGMPolyhedralSurfaceとする。その三角形網の生成方法は制約されない。
6.4.38 GMTriangle GMTriangle(三角形)は三つの頂点で定義した平面上のGMPolygonとする。こ
のため,GMTriangleは次の形式のコンストラクタの結果として得られる。
GMPolygon(GMLineString(<P1,P2,P3,P1>))
ここで,P1,P2及びP3 は三つのGMPositionとする。GMTriangleには穴はない。GMTriangleは
GMTriangulatedSurfaceを構成するために用いる。
備考 三角形の点はc1 + c2 + c3 = 1.0となる三つの負でない数字c1,c2及びc3からなる重心座標の集合
を定義することによって,その頂点の式で位置付けることができる。このとき,三角形の各点
Pはある重心座標の集合で示すことができる。
P c1P1 c2P2 c3P3
6.4.39 GMTin
6.4.39.1 意味 GMTin(不規則三角網)(図21参照)はドローネ・アルゴリズム又はこれに抑止線,傾
斜変換線及び三角形の最大辺長に対する考慮を補った同様のアルゴリズム(図22参照)を使用した
GMTriangulatedSurfaceとする。これらの網はこの修正にもかかわらず,網の各三角形に対してその頂点を
通過する円はその内部に他の三角形の頂点を含まないという,ドローネの基準を満たす。
――――― [JIS X 7107 pdf 76] ―――――
71
X 7107 : 2005 (ISO 19107 : 2003)
傾斜分割線を用いない 追加の抑止線
最初の(ドローネ)三角形分割
傾斜分割線を用いた 穴及び境界変更を引き起こす
再三角形分割 抑止線を用いた再三角形分割
図 22 不規則三角網の生成 (TIN construction)
6.4.39.2 stopLines stopline(抑止線)は,曲面の連続性又は正則性に局所的に問題がある部分の線であ
る。これらの異常な領域では抑止線と交わる三角形は不規則三角網曲面から取り除き,曲面の穴として残
すものとする。交差が曲面の境界三角形上で発生した場合,結果として曲面の境界は変化する。“stopLines”
(抑止線)属性はすべての異常な曲線分を線分の集合として含む。
GMTin::stopLines : Set<GMLineString>
6.4.39.3 breakLines breakline(傾斜変換線)は,曲面の局所的な稜線又は(流水線のような)谷線を表
す,曲面の形の決定的な本質の線とする。Delaunayの基準を満たさない場合であっても,不規則三角網は,
これらを構成する曲線分を含まなければならない。“breakLines”(傾斜変換線)属性はこれらの決定的曲線
分を線分の集合として含む。
GMTin::breakLines : Set<GMLineString>
6.4.39.4 maxLength データが適切な計算の保証に十分な密度をもたない曲面の領域は,その辺の長さに
基づいた三角形の保持基準を追加することによって取り除く。最大辺長(maxLength)を超える三角形の
辺については,その辺に隣接する三角形を曲面から削除する。
GMTin::maxLength : Distance
――――― [JIS X 7107 pdf 77] ―――――
72
X 7107 : 2005 (ISO 19107 : 2003)
6.4.39.5 controlPoint 不規則三角網の三角形の頂点は,しばしばポスト(標柱)として参照される。
“controlPoint”(制御点)属性は,この不規則三角網のポストとして用いるGMPositionの集合を含む。そ
れぞれの不規則三角網は,三角形を含むため,最低でも三つのポストがなければならない。これらの点の
順序は,表現する曲面には影響しない。応用スキーマは,controlPointから不規則三角網の再構築を容易に
するために制御点の順序に基づいた情報を付け加えてもよい。
GMTin::controlPoint[3..n] : GMPosition
備考 不規則三角網の制御点は,多くの場合“ポスト(標柱)”と呼ばれる。
6.4.39.6 GMTin(コンストラクタ) この限定されたDelaunay網のコンストラクタは,三角形の頂点(ポ
スト),傾斜変換線,抑止線及び三角形の最大辺長を必要とする。
GMTin::GMTin(post : Set<GMPosition>, stopLines : Set<GMLineString>,
breakLines : Set<GMLineString>, maxLength : Number): GMTin
6.4.40 GMParametricCurveSurface
6.4.40.1 意味 このパラメタ化曲線による曲面を形成する曲面分GMParametricCurveSurface(パラメタ化曲線
面)(図23)は,曲線のすべてが連続な族で次の形式の構成関数で与えられる。
[c,d] -> DirectPosition
surface(s,t): [a,b]
パラメタのいずれかの値を固定することによって,曲線の単一パラメタの族を得る。
ct(s) = cs(t) = surface(s,t)
GMParametricCurveSurface(図23)の関数は,これら二つの曲線の族を表す。一つ目は“水平”の横断
面ct(s)を示し,二つ目は“垂直”の横断面cs(t)を示す。水平及び垂直の用語は,パラメタ空間を参照する
もので,座標参照系における曲線が水平であったり垂直であったりする必要はない。表6.1は,これらの
曲面曲線の型の対で可能なものの幾つかを一覧する(これらと同じ曲面に対して別の表現も可能である。)。
曲面のパラメタ式の二つの導関数i及びjは,次の式で与えられる。
dsurface d c (s)
i surface(s,t)
ds ds t s
dsurface d c (t)
j s surface(s, t)
dt dt t
――――― [JIS X 7107 pdf 78] ―――――
73
X 7107 : 2005 (ISO 19107 : 2003)
Type [{interpolation = "parametricCurve"}]
GMParametricCurveSurface
+ horizontalCurveType : GMCurveInterpolation
+ verticalCurveType : GMCurveInterpolation
+ horizontalCurve(t : Real) : GMCurve
+ verticalCurve(s : Real ) : GMCurve
+ surface(s : Real, t : Real) : DirectPositionType CodeList
GMKnot GMBSplineSurfaceForm
+ value : Real + planar
+
+ multiplicity : Integercylindrical
Type + weight : Real + conical
GMGriddedSurface + spherical
+ toroidal
+ controlPoint : GMPointGrid + unspecified
/+ rows : Integer
/+ columns : Integer
Type
GMCone [{horizontalCurveType = "conic"}]
[{verticalCurveType = "linear"}]
Type
GMCylinder [{horizontalCurveType = "conic"}]
[{verticalCurveType = "linear"}]
Type
GMSphere [{horizontalCurveType = "circularArc3Points"}]
[{verticalCurveType = "circularArc3Points"}]
Type
GMBilinearGrid [{horizontalCurveType = verticalCurveType = "cubicSpline"}]
[{numDerivativesOnBoundary = 2}]
Type Type
GMBSplineSurface GMBicubicGrid
+degree[1, 2] : Integer +horiVectorAtStart : Sequence<Vector>
+knot[2] : Sequence<GMKnot> +horiVectorAtEnd : Sequence<Vector>
+knotSpec : GMKnotType +vertVectorAtStart : Sequence<Vector>
+surfaceForm : GMBSplineSurfaceForm +vertVectorAtEnd : Sequence<Vector>
+isPolynomial : Boolean
+ GMSplineSurface(pts : GMPointGrid,
deg[1, 2] : Integer, k[0, 2] : Sequence<GMKnot>,
ks[0, 1] : GM KnotType) : GMBSplineSurface
[{horizontalCurveType = verticalCurveType = "linear"}]
[{horizontalCurveType = "polynomialSpine" OR horizontalCurveType = "rationalSpine"}]
[{verticalCurveType = "polynomialSpine" OR verticalCurveType = "rationalSpine"}]
図 23 GMParametricCurveSurface(パラメタ化曲線曲面)及びその下位型
――――― [JIS X 7107 pdf 79] ―――――
74
X 7107 : 2005 (ISO 19107 : 2003)
曲面のupNormalの既定値は,これらの二つの曲線の導関数のベクトルが両方とも零でない場合,それ
らの外積となる。
k = i×j
座標系が二次元の場合,ベクトルkが“上方向”の高度ベクトルを供給することによって局所座標系を
拡張する。この場合,基底ベクトル (i,j) は,右手系でなければならない,すなわち,iからjへの方向
角は180゜以下でなければならない。これは <i,j> によって与えられる局所座標軸の右手系“動枠”を与
える。動枠は,幾何オブジェクトから,そのオブジェクト局所接空間の基底への連続関数として定義する。
曲線に対して,これは,局所接線である曲線の導関数となる。局面に対して,これは,局所接線対となる。
パラメタ化曲線は,自然な動枠をもち,この箇条で定義した方法で曲面のupNormalを定義するのに使用
する。
備考 明示的な動枠の存在は,“有向”な多様体を定義する。連続なupNormalの存在が曲面が向き付
け可能であることを示すのはこのためである。メビウスの輪又はクラインの壷のような向き付
け不可能な曲面は,直感的に理解しがたい。6.3.17.1は,この規格に合致する応用スキーマでこ
れらを使用することを禁止する。クラインの壷を構成するには三次元空間では足りず,特異な
表現ができる四次元空間が必要となる。
表 7 パラメタ化曲線曲面の様々な型
曲面型 水平曲線型 垂直曲線型
GMCylinder 円,半径固定 直線分
GMCone 円,半径減少 直線分
GMSphere 定数緯度円 定数経度円
GMBilinearGrid 折れ線 折れ線
GMBicubicGrid 三次スプライン 三次スプライン
6.4.40.2 horizontalCurveType “horizontalCurveType”(水平曲線)属性は,パラメタ“s”に対応した,
曲面を水平に横断する曲面曲線の型を示す。
GMParametricCurveSurface::horizontalCurveType : GMCurveInterpolation
6.4.40.3 verticalCurveType “verticalCurveType”(垂直曲線)属性は,パラメタ“t”に対応した,曲面を
垂直に横断する曲面曲線の型を示す。
GMParametricCurveSurface::verticalCurveType : GMCurveInterpolation
6.4.40.4 horizontalCurve “horizontalCurve”(水平曲線取得)操作は,パラメタ“s”に対応した,曲面
を水平に横断する曲線を生成する。この曲線は,バラメタ“t”を定数として保持する。
GMParametricCurveSurface::horizontalCurve(t : Real) : GMCurve
備考 この関数又は対応する垂直曲線取得関数が返すGMCurveは,通常,この曲面を含む
GMComplexのいずれの一部でもない。これらは,たいてい一時的な値である。この例外は,
パラメタ空間の両端で発生することがある。曲面を維持するパラメタ空間の境界は,対象曲面
の境界に正規に写像される。
6.4.40.5 verticalCurve “verticalCurve”(垂直曲線取得)操作は,パラメタ“t”に対応した,曲面を垂直
に横断する曲線を生成する。この曲線は,バラメタ“s”を定数として保持する。
GMParametricCurveSurface::verticalCurve(s : Real) : GMCurve
6.4.40.6 surface “surface”(曲面上位置取得)操作は,垂直及び水平の両方向で曲面を横断する。
GMParametricCurveSurface::surface(s : Real, t : Real) : DirectPosition
――――― [JIS X 7107 pdf 80] ―――――
次のページ PDF 81
JIS X 7107:2005の引用国際規格 ISO 一覧
- ISO 19107:2003(IDT)
JIS X 7107:2005の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.240 : 情報技術(IT)の応用 > 35.240.70 : 自然科学へのITの応用
JIS X 7107:2005の関連規格と引用規格一覧
- 規格番号
- 規格名称
- JISX7111:2014
- 地理情報―座標による空間参照