この規格ページの目次
40
X 7107 : 2005 (ISO 19107 : 2003)
曲線分は,最後を除き,その終点が一連の曲線分の次の曲線分の始点と互いに連結する。
Type
GMPrimitive
Type Interface
GMOrientablePrimitive GMGenericCurve
(from Coordinate Geometry)
Type
GMOrientableCurve
+ boundary() : GMCurveBoundary
Type
GMCurve
+ GMCurve(segment[1..n] : GMCurveSegment) : GMCurve
0..1 +curve
Abstract
[{Sequence}] 1..n
GMCurveSegment
Segmentation (from Coordinate Geometry)
+segment
図 11 GMCurve
6.3.16.2 GMCurve(コンストラクタ) GMCurveのコンストラクタは,終点及び始点に対応関係をも
つ一連のGMCurveSegmentをとり,GMCurveを生成する。
GMCurve::GMCurve(segment[1..n] : GMCurveSegment) : GMCurve
6.3.16.3 Segmentation関連 “Segmentation”(分割)関連は,それぞれが曲線の一部分に沿った点の直接
位置を定義するような,GMCurveの一連の構成要素(GMCurveSegment)を示す。GMCurveSegmentの
順番は,GMCurveを描くのに用いる順番とする。
GMCurve::segment [1..n] : GMCurveSegment
GMCurveSegment::curve [0,1] : Reference<GMCurve>
特定のパラメタ区間に対してGMCurveとGMCurveSegmentとは一致する。
GMCurveSegment:
[{curve.startParam() <= self.startParam()}];
[{curve.endParam() >= self.endParam()}];
[{self.startParam() < self.endParam()}];
[{s : Distance (startParam() <= s <= endParam())
implies (curve.parameterization(s) = self.parameterization(s)));
備考 この規格では,曲線分は,曲線の文脈以外では現れず,したがってこの関連での“curve”役割
――――― [JIS X 7107 pdf 46] ―――――
41
X 7107 : 2005 (ISO 19107 : 2003)
の多重度は“1”となるが,これは,この方法以外で曲線分を用いる妨げとなる。そこで,この
規格には影響しないので,多重度を“0..1”とすることで,他の規格がこれに基づいて,より制
限しない方法で曲線分を用いることができるようにする。
6.3.17 GMSurface
6.3.17.1 意味 GMSurface(曲面)(図12参照)は,GMPrimitiveの下位クラスとし,二次元の幾何の基
本的な要素とする。メビウスの輪のような向きをもてない曲面は許されない。曲面の向きは,上向きの法
線を選択することによって“上”方向を選択し,曲面が輪体でない場合には,外部境界が反時計回りとな
ることからその上方向が判断できる。曲面の方向性の反転は,各境界要素の曲線の方向性を反転させ,曲
面の概念的な“上”及び“下”の方向を交換する。曲面が立体の境界となる場合,“上”の方向は,通常は
外側とする。境界をもたない閉曲面の場合,上の方向は,その曲面分の上方向とし,それらは互いに一致
しなければならない。これに含まれるGMSurfacePatchはGMSurfaceの内部構造を定める。
備考 GMSurfaceに求められる“妥当性”の条件は,向きについての制約だけである。
6.3.17.2 GMSurface(コンストラクタ) 一つ目の形式のGMSurfaceのコンストラクタは,辺と辺とに
対応関係をもつ一連のGMSurfacePatchをとり,GMSurfaceを生成する。
GMSurface::GMSurface(patch[0..n] : GMSurfacePatch) : GMSurface
二つ目の形式は,常に二次元座標空間で機能することが保証され,GMSurfaceBoundaryを構成する
GMCurveの集まりとして境界を指定することによって,GMSurfaceを構築する。三次元座標空間では,
このコンストラクタの二つ目の形式は,すべての境界を定義するGMCurveのインスタンスが,曲面内部
を定義する共通面上にある(単一の面上に存在する)ことを必要とする。
GMSurface::GMSurface(bdy : GMSurfaceBoundary) : GMSurface
6.3.17.3 Segmentation関連 “Segmentation”(分割)関連は,GMSurfaceを形成する互いに繋がった
GMSurfacePatchの集合と関係付ける。内挿法に応じて,曲面分の集合は,意味をもった追加的な構造を
必要としてもよい。一般に,曲面分の形状は,応用スキーマで定義しなければならない。
GMSurface::patch [1..n] : GMSurfacePatch
GMSurfacePatch::surface [0,1] : Reference<GMSurface>
GMSurface.coordinateDimensionが2の場合,GMSurface全体は境界からの線型補間によって定義され
る一つの論理的な曲面分になる。
備考 この規格では,曲面分は,曲面の文脈以外には現れないため,この関連での“surface”役割の
多重度は“1”とすることになるが,それは,この方法以外で曲面分を使用する妨げとなる。多
重度を“0..1”とすることによって,この規格には影響を与えず,また,他の規格がこれに基づ
いてより制限のない方法で曲面分を使用することができるようになる。
――――― [JIS X 7107 pdf 47] ―――――
42
X 7107 : 2005 (ISO 19107 : 2003)
Type
GMPrimitive
Type Interface
GMOrientablePrimitive GMGenericSurface
(from Coordinate Geometry)
Type
GMOrientableSurface
+ boundary() : GMSurfaceBoundary
Type
GMSurface
+ GMSurface(patch[1..*] : GMSurfacePatch) : GMSurface
+ GMSurface(bdy : GMSurfaceBoundary) : GMSurface
0..1 +surface
Abstract
1..n
GMSurfacePatch
Segmentation (from Coordinate Geometry)
+patch
図 12 GMSurface
6.3.18 GMSolid
6.3.18.1 意味 GMSolid(立体)(図13参照)はGMPrimitiveの下位クラスとし,三次元幾何の基本的
な要素とする。立体の範囲は,境界面によって定義する。
Type
GMPrimitive
Type
GMSolid
+ boundary() : GMSolidBoundary
+ area() : Area
+ volume() : Volume
+ GMSolid(boundary : GMSolidBoundary) : GMSolid
図 13 GMSolid (立体)
――――― [JIS X 7107 pdf 48] ―――――
43
X 7107 : 2005 (ISO 19107 : 2003)
6.3.18.2 boundary “boundary”(境界取得)操作は,GMObject及びGMPrimitiveで定義する境界取得
操作を対応した戻り値の型をもつよう特化したものとする。これは,このGMSolidの範囲を限定する
GMSurfaceの集合の列を返す。これらの曲面は,GMSolidの境界要素のそれぞれに一つの曲面集合を構
成する。これらの殻は,それぞれ輪体(境界のない合成閉曲面)とする。
GMSolid::boundary() : GMSolidBoundary
備考 立体の外部殻は,その存在する座標空間が常に三次元のユークリッド空間であるという理由だ
けで定義する。一般に,有界な三次元多様体中の立体は,識別可能な外部境界をもたない。
“exterior”境界が明確に定義されていない場合,GMSolidBoundaryのすべての殻は,“interior”境界と
して列挙されなければならない。
立体の境界となるGMOrientableSurfaceは,外側を向く。すなわち,各GMSurfaceの向きによって定
義された“上”が,立体の内部から離れる方向を向く。
合成曲面としての各GMShellは,輪体となる(6.2.2.7参照)。
6.3.18.3 area “area”(表面積取得)操作は,立体の境界要素のすべての曲面の面積の合計を返す。
GMSolid::area() : Area
Set<GMSurface>クラスは,集合の要素の面積を累積する“area”という“列演算”をもつ。これを用い
て,GMSolidについて次のように表すことができる。
GMSolid:
area() = boundary().area()
6.3.18.4 volume “volume”(体積取得)操作は,このGMSolidの体積を返す。これは,外部境界殻の内
部の体積から各内部境界殻の内部の体積の合計を引いたものとする。
GMSolid::volume() : Volume
6.3.18.5 GMSolid(コンストラクタ) この規格では,座標参照系を三次元までに制限しているため,
あらゆる立体は,その境界で定義できる。GMSolidの既定のコンストラクタは,適切に構造化され,
GMSolidBoundaryを構成するGMShellの集合から生成する。
GMSolid::GMSolid(boundary : GMSolidBoundary) : GMSolid
6.4 Coordinate geometryパッケージ
6.4.1 DirectPosition
6.4.1.1 意味 DirectPosition(直接位置)オブジェクトデータ型(図14参照)は,ある空間参照系上の位
置の座標を保持する。この空間参照系は,JIS X 7111で定義する。DirectPositionは,データ型として,た
いていはJIS X 7111のSCCRSへの参照をもった(GMObjectsのような)より大きなオブジェクトに含
まれる。このため,DirectPosition::cordinateReferenceSystemの値は,対象となるDirectPositionがこのよう
なSCCRSへの参照をもつ,より大きなオブジェクトに含まれている場合には,NULLのままとしてよい。
この場合,DirectPosition::cordinateReferenceSystemは,暗黙でそれを含むオブジェクトのSCCRSの値をと
るものとして扱う。
6.4.1.2 coordinate “coordinate”(座標)属性は,この位置の座標を指定した参照系で保持するNumber
の列とする。
DirectPosition::coordinate : Sequence<Number>
6.4.1.3 dimension “dimension”(次元)属性は,座標列の長さ(項数)とする。これは,参照系によっ
て決まる。
/ DirectPosition::dimension : Integer = (coordinate.length)
――――― [JIS X 7107 pdf 49] ―――――
44
X 7107 : 2005 (ISO 19107 : 2003)
6.4.1.4 coordinateReferenceSystem “coordinateReferenceSystem”(座標参照系)関連役割は,その座標
を定めている座標系とする。SCCRS型はJIS X 7111で規定する。
DirectPosition::cordinateReferenceSystem [0,1] :JIS X 7111::SCCRS
[{coordinateReferenceSystem.dimension = DataType
coordinate.size = GMEnvelope
dimension}]
+ upperCorner : DirectPosition
+ lowerCorner : DirectPosition
DataType
DirectPosition
Union
+ coordinate : Sequence<Number> GMPosition
/+ dimension : Integer
+ direct : DirectPosition
0..n +directPosition + indirect : GMPointRef
関連が存在しない場合のCRSは,例えばこの DataType
直接位置をもつGMObjectのCRSなどのように, GMPointRef
このデータ型の名前空間によって決定される。
0..n
0..1 +coordinateReferenceSystem +point 1
Abstract Type
SCCRS GMPoint
(from Spatial Referencing by Coordinates) (from Geometric primitive)
DataType +row DataType +column Union
GMPointGrid i : Integer GMPointArray i : Integer GMPosition
1..n 1..n
column.の個数は,定数 である。
row, column.の個数は,定数
図 14 DirectPosition
6.4.2 GMPointRef GMPointRef(点参照データ)は,存在する点を参照するために使用する。これは
テンプレートクラスReference<GMPoint>をインスタンス化したものとする。
GMPointRef::point : Reference<GMPoint>
6.4.3 GMEnvelope
6.4.3.1 意味 GMEnvelope(包被データ)は,多くの場合,最小境界直方体又は長方形として用いられ
る。GMEnvelopeは,次元の値に関係なく二つの直接位置(点座標)として明確に表現できる。GMEnvelope
の符号化には,この二つの点を符号化するだけでよい。これは,この規格のすべてのデータ型と矛盾する
ことはなく,その状態をその公開アクセス可能な属性によって表す。
――――― [JIS X 7107 pdf 50] ―――――
次のページ PDF 51
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
- 地理情報―座標による空間参照