JIS X 7107:2005 地理情報-空間スキーマ | ページ 22

100
X 7107 : 2005 (ISO 19107 : 2003)
TPDirectedNode [1] : Reference<TPNode>
7.3.12.3 boundary TPNodeの境界取得操作は,空集合を指定することによって,TPObjectで定義され
た境界を置き換える。
TPPrimitive::boundary() : NULL
7.3.12.4 制約 TPNodeの次元は0でなければならず,その境界は空(NULL)とする。
TPNode:
TPObject::dimension = 0;
TPObject::boundary() = NULL;
備考 ノードは,エッジがそれを含むフェイスの境界上にない限り,フェイスの中で孤立しながらも
エッジの端点となってよい。この幾何実現には,空間にぶら下がった曲線が曲面と交差する場
合がある。
7.3.13 TPDirectedNode
7.3.13.1 意味 TPDirectedNode(有向ノード)クラスは,計算位相幾何クラスのTPExpressionにおいて,
TPNodeに対応する。TPNodeの場合,TPObjectで定義した“boundary”操作は,常に空となる幾何に
対応した0値式を返す。この操作は,TPObjectから継承したものを置き換える。
TPNode::boundary() : NULL
7.3.14 TPEdge
7.3.14.1 意味 TPEdge(エッジ)プリミティブ(図42参照)は,位相のための一次元プリミティブとす
る。TPEdgeの場合,TPObjectで定義した“boundary”操作は,一方がエッジの始点(負のTPDirectedNode)
に,もう一方がエッジの終点(正のTPDirectedNode)となるノードの対を返す。この操作は,TPObject
から継承したものを置き換える。同じ情報を関連として表現してよい。
TPEdge::boundary() : Set<TPDirectedNode> [{size = 2}]
TPEdge::Boundary.boundary : Set<TPDirectedNode> [{size = 2}]
Type Type
CoBoundary + spoke
TPPrimitive TPDirectedFace
[{CircularSequence}] 0..n
1
+ topo
Type
TPDirectedNode
+ hub 1..n
+ boundary 2
0..n Boundary
Type
TPEdge + primitive
+boundary() : TPEdgeBoundary
1 + topo
Type
Center + proxy
TPDirectedEdge
2
subset
+ proxy Type
Center
TPDirectedTopo
2
図 42 TPEdge

――――― [JIS X 7107 pdf 106] ―――――

                                                                                            101
X 7107 : 2005 (ISO 19107 : 2003)
7.3.14.2 coBoundary TPEdgeの場合,TPObjectで定義した“coBoundary”(双対境界取得)操作は,こ
のエッジ(正のTPDirectedFaceの場合)又はその逆向きの代替表現(負のTPDiretedFaceの場合)をそ
の境界として使用しているフェイスを示す,有向フェイスの環状列を返す。環状列は,このTPEdgeを含
む極大TPComplexの幾何実現において,これらのフェイスを関連付けられた曲線の端点から見て時計回
りに列挙して表現しなければならない。この操作は,TPObjectから継承したものを置き換える。同じ情
報を関連として実装してよい。
TPEdge::coBoundary() : CircularSequence<TPDirectedFace> [{size = [0..n]}]
TPEdge::coBoundary.spoke : CircularSequence<TPDirectedFace> [{size = [0..n]}]
備考 二次元平面の場合,双対境界は,最大でも二つのフェイスとなる。完全位相の場合,ちょうど
二つが存在し,一方の有向フェイスは正である“+”の向きをもって関連付けられたフェイス
がエッジの左側に位置して,もう一方は負である“-”の向きをもって関連付けられたフェイス
がエッジの右側に位置する。
7.3.14.3 boundary TPEdgeのboundary操作は,始点ノード及び終点ノードからなるTPEdgeBoundary
を指定することによって,TPObjectからの継承として置き換える。
TPEdge::boundary() : TPEdgeBoundary
TPEdgeは,Boundary関連及びboundary関連役割も格納しなければならない。boundary関連役割は,こ
れと同じ情報を,終点ノードに対して正の方向を向き,始点ノードに対して負の方向を向く二つの有向エ
ッジとして規定する。
TPEdge::boundary [2] : TPDirectedNode
7.3.14.4 Center関連 TPEdgeを含む各TPPrimitiveは,二つのTPDirectedTopoインスタンスに関連付
けられる。
TPEdge::proxy [2] : TPDirectedEdge
TPDirectedEdge::topo [1] : Reference<TPEdge>
備考 二次元平面では,各有向エッジは,最大でも一つのフェイスの境界となり,完全平面位相では,
ちょうど一つのフェイスの境界となる。三次元又は非平面二次元複体では,有向エッジは,幾
つかのフェイスの境界となることができる。
7.3.14.5 制約 TPEdgeの次元は,1でなければならない。
TPEdge:
TPObject::dimension() = 1
7.3.15 TPDirectedEdge TPDirectedEdge(有向エッジ)クラスは計算位相幾何クラスのTPExpression
においてTPEdgeに対応する。これは,元となる曲線・エッジが必要なときにその代替として機能すると
いう点で,GMOrientableCurveの概念に類似する。
7.3.16 TPFace
7.3.16.1 意味 TPFace(フェイス)クラス(図43参照)は,GMSurfaceに対応する位相プリミティブ
を提供する。
7.3.16.2 boundary TPFaceの場合,TPObjectで定義した“boundary”(境界取得)操作は,適切な方向
性をもつ有向エッジの集合を返す。この操作は,TPObjectから継承したものを置き換える。同じ情報を
関連として表現してよい。
TPFace::boundary() : TPFaceBoundary

――――― [JIS X 7107 pdf 107] ―――――

102
X 7107 : 2005 (ISO 19107 : 2003)
備考 exteriorの意味について,幾何と同一の制約を位相にも適用する。
Type Type
CoBoundary + spoke
TPPrimitive TPDirectedSolid
0..2
1
+ topo
Type
TPDirectedEdge
+ hub 1..n
+ boundary 1..n
0..n
Type
TPFace + primitive Boundary
+boundary() : TPFaceBoundary
1 + topo
Type
Center + proxy
TPDirectedFace
2
subset
+ proxy Type
Center
TPDirectedTopo
2
図 43 TPFace
TPFaceは,Boundary関連及びboundary関連役割も格納しなければならない。boundary関連
役割は,これと同じ情報を,エッジの左側に対して正の方向を向き,エッジの右側に対して負
の方向を向く有向エッジとして規定する。
TPFace::boundary [1..*] : TPDirectedEdge
境界取得操作は,TPFaceBoundaryを構成する輪及び外部となる輪の指定を付加情報として
返す。
7.3.16.3 coBoundary TPFaceの場合,TPObjectで定義した“coBoundary”(双対境界取得)操作は,こ
のフェイス(正のTPDirectedSolidの場合)又はその逆向きの代替表現(負のTPDirectedSolidの場合)を
その境界に用いる位相立体を示す,有向位相立体への参照の集合を返す。この操作は,TPObjectから継
承したものを置き換える。同じ情報を関連として実装してよい。
TPFace::coBoundary() 0..2] : Reference<TPDirectedSolid>
TPFace::CoBoundary.spoke [0..2] : Reference<TPDirectedSolid>
7.3.16.4 Center関連 TPFaceを含む各TPPrimitiveは,二つのTPDirectedTopoインスタンスに関連付
けられる。
TPFace::proxy [2] : TPDirectedFace
TPDirectedFace::topo [1] : Reference<TPFace>
7.3.16.5 制約 TPFaceの次元は,2でなければならない。
TPFace:
TPFace: TPObject::dimension = 2
7.3.17 TPDirectedFace TPDirectedFace(有向フェイス)は,TPSolidの境界の定義に用いる。これは,
元となる曲面・フェイスが必要なときに,その代替として機能するという点で,GMOrientableSurfaceの
概念に類似している。

――――― [JIS X 7107 pdf 108] ―――――

                                                                                            103
X 7107 : 2005 (ISO 19107 : 2003)
7.3.18 TPSolid
7.3.18.1 意味 TPSolid”(位相立体)クラス(図44参照)は,GMSolidに対応する位相プリミティブを
提供する。
Type Type
TPPrimitive TPDirectedFace
1 + boundary 1..n
+ topo
+ primitive Boundary
Type
TPSolid 0..2
+boundary (): TPSolidBoundary
1 + topo
Type
Center + proxy
TPDirectedSolid
2
subset
+ proxy Type
Center
TPDirectedTopo
2
図 44 TPSolid
7.3.18.2 boundary TPSolidの場合,TPObjectで定義した“boundary”(境界取得)操作は,フェイス又
はその負の代替表現の集合を返す。この操作は,TPObjectから継承したものを置き換える。同じ情報を
関連として表現してよい。
TPSolid::boundary() : TPSolidBoundary
TPSolidは,Boundary関連及びboundary関連役割も格納しなければならない。boundary関連役割
は,これと同じ情報を,フェイスの下方に対して正の方向を向き,フェイスの上方に対して負の方向
を向く有向エッジとして規定する。
TPSolid::boundary [1..*] : TPDirectedFace
境界取得操作は,TPFaceBoundaryを構成する殻及び外部となる殻の指定を付加情報として返す。
7.3.18.3 coBoundary TPSolidの場合,“coBoundary”(双対境界取得)操作は,NULLを返す。
TPSolid::coBoundary() : NULL
7.3.18.4 Center関連 TPSolidを含む各TPPrimitiveは,二つのTPDirectedTopoインスタンスと関連付
けられる。
TPSolid::proxy [2] : TPDirectedSolid
TPDirectedSolid::topo [1] : Reference<TPSolid>
7.3.18.5 制約 TPSolidの次元は3でなければならない。
TPSolid:
TPObject::dimension = 3
7.3.19 TPDirectedSolid “TPDirectedSolid”(有向位相立体)クラスは,計算幾何クラスのTPExpression
においてTPSolidに対応する。

――――― [JIS X 7107 pdf 109] ―――――

104
X 7107 : 2005 (ISO 19107 : 2003)
7.3.20 TPExpression
7.3.20.1 意味 代数位相幾何及び計算位相幾何は,TPPrimitiveに対応する変数となる多変数一次多項式
の演算として考えると簡単になる。TPDirectedTopoクラスは,この代数における項を表す。TPExpression
(位相式データ)クラス(図45参照)は多項式を表す。
多項式の項の順序は,その値に影響しないので,TPExpressionクラスはSet<TPDirectedTopo>の下位ク
ラスとして表す。TPExpressionクラスの演算は,これらの多項式の生成,操作及び試験に必要な演算とす
る。
計算位相幾何の特徴は,位相の各要素を代数的又は組合せ的な手法で取り扱うことができる点にある。
この代数で扱うプリミティブは,TPPrimitiveである。単項式(単一変数で単一項の多項式)は
TPExpressionTermとしてインスタンス化した整数係数をもつTPPrimitiveのインスタンスである。
多変数一次多項式代数の満たす制約は,TPExpressionに対しても次のとおり有効でなければならない。
TPDirectedTopo:
negate().asTPExpression() = asTPExpression().negate()
asTPExpression.negate().plus(asTPExpression).isZero()
DataType
TPExpression
+ TPExpression(dt : TPDirectedTopo) : TPExpression
+ TPExpression(sdt : Set<TPDirectedTopo>) : TPExpression
+ plus(s : TPExpression) : TPExpression + expression Terms
+ minus(s : TPExpression) : TPExpression
+ negate() : TPExpression 1
+ isZero() : Boolean
+ isCycle() : Boolean
+ boundary() : TPExpression
+ coBoundary() : TPExpression
+ equals(s : TPExpression) : Boolean
+ support() : TPComplex
+ term 0..n
Type DataType
+ variable + term
TPDirectedTopo TPExpressionTerm
1 Variable 0..n
+ orientation : Sign = "+" + coefficient : Integer = 1
+ negate() : TPDirectedTopo
+ asTPExpression() : TPExpression
図 45 TPExpression
7.3.20.2 TPExpressionTerm TPExpressionは,多項式のように変数及び係数からなる項の集合で構成さ
れる。
TPExpressionTerm = < coefficient : Integer = 1,
variable : Reference<TPDirectedTopo>>
計算は,通常の多項式操作と一致する。
7.3.20.3 TPExpression(コンストラクタ) “TPExpression”コンストラクタは,TPDirectedTopoから
TPExpressionを生成する。この操作は,他のTPObjectのようなクラスが位相式を生成するのに使用され
る。

――――― [JIS X 7107 pdf 110] ―――――

次のページ PDF 111

JIS X 7107:2005の引用国際規格 ISO 一覧

  • ISO 19107:2003(IDT)

JIS X 7107:2005の国際規格 ICS 分類一覧

JIS X 7107:2005の関連規格と引用規格一覧

規格番号
規格名称
JISX7111:2014
地理情報―座標による空間参照