jp.go.ipa.jgcl
クラス JgclEmbeddedGraph.Face

java.lang.Object
  |
  +--jp.go.ipa.jgcl.JgclEmbeddedGraph.GraphItem
        |
        +--jp.go.ipa.jgcl.JgclEmbeddedGraph.Face
直系の既知のサブクラス:
JgclSetOfTriangles2D.Face, JgclSetOfTriangles3D.Face
含まれているクラス:
JgclEmbeddedGraph

public class JgclEmbeddedGraph.Face
extends JgclEmbeddedGraph.GraphItem

グラフの面を表す内部クラス。

このクラスのインスタンスは、 この面を取り巻く辺のリスト (左回り、CCW) の最初の辺 firstEdge を保持する。

なお、ある辺がこの「最初の辺」に設定されているとして、 それはその辺とこの面との関係において特別の意味を持つわけではなく、 たまたま最初のものとして記憶されているだけである。

この辺の左回り (CCW) のリストを、面の「辺サイクル (edge cycle)」という。 また、面を取り巻く頂点の左回り (CCW) のリストを「頂点サイクル (vertex cycle)」という。


コンストラクタの概要
protected JgclEmbeddedGraph.Face()
          何も与えずにオブジェクトを構築する。
 
メソッドの概要
protected  void fillFieldsOfDualReplica()
          この面の双対複製として設定されている頂点のフィールドに正しい値を代入する。
protected  void fillFieldsOfReplica()
          この面の複製として設定されている面のフィールドに正しい値を代入する。
 java.util.Vector getEdgeCycleInCCW()
          この面の辺サイクルを表すリストを返す。
 JgclEmbeddedGraph getGraph()
          この面が属するグラフを返す。
 java.util.Vector getVertexCycleInCCW()
          この面の頂点サイクルを表すリストを返す。
 boolean isIdentWith(JgclEmbeddedGraph.Face face)
          与えられた面がこの面と同一であるか否かを返す。
 
クラス jp.go.ipa.jgcl.JgclEmbeddedGraph.GraphItem から継承したメソッド
getReplica, getUserData, setReplica, setUserData
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

JgclEmbeddedGraph.Face

protected JgclEmbeddedGraph.Face()
何も与えずにオブジェクトを構築する。

構築直後の面は他の頂点/辺/面との関係を持たない。

このコンストラクタは、グラフの利用者によって直接呼び出されるべきではない。 グラフの利用者は、あくまでも Euler Operator (だけ) を利用して、 グラフを操作するものとしている。

メソッドの詳細

getGraph

public JgclEmbeddedGraph getGraph()
この面が属するグラフを返す。
戻り値:
この面が属するグラフ

isIdentWith

public boolean isIdentWith(JgclEmbeddedGraph.Face face)
与えられた面がこの面と同一であるか否かを返す。
パラメータ:
face - 面
戻り値:
同一の面ならば true、そうでなければ false

getEdgeCycleInCCW

public java.util.Vector getEdgeCycleInCCW()
この面の辺サイクルを表すリストを返す。

結果として得られる Vector の各要素は、 JgclEmbeddedGraph.Edge のインスタンスである。

戻り値:
この面の辺サイクルを表すリスト

getVertexCycleInCCW

public java.util.Vector getVertexCycleInCCW()
この面の頂点サイクルを表すリストを返す。

結果として得られる Vector の各要素は、 JgclEmbeddedGraph.Vertex のインスタンスである。

戻り値:
この面の頂点サイクルを表すリスト

fillFieldsOfReplica

protected void fillFieldsOfReplica()
この面の複製として設定されている面のフィールドに正しい値を代入する。

この面の firstEdge の複製を この面の複製の firstEdge とする。 この面の firstEdge が null の場合には何もしない。

JgclEmbeddedGraph.Face のサブクラスは、 必要に応じてこのメソッドをオーバーライドすべきである。 なお、そのオーバーライドしたメソッドの内部では、 super.fillFieldsOfReplica() として、このメソッドを呼び出なければならない。

関連項目:
JgclEmbeddedGraph.GraphItem.setReplica(JgclEmbeddedGraph.GraphItem), JgclEmbeddedGraph.Edge

fillFieldsOfDualReplica

protected void fillFieldsOfDualReplica()
この面の双対複製として設定されている頂点のフィールドに正しい値を代入する。

この面の firstEdge の複製を この面の双対複製の firstEdge とする。 この面の firstEdge が null の場合には何もしない。

JgclEmbeddedGraph.Face のサブクラスは、 必要に応じてこのメソッドをオーバーライドすべきである。 なお、そのオーバーライドしたメソッドの内部では、 super.fillFieldsOfDualReplica() として、このメソッドを呼び出なければならない。

関連項目:
JgclEmbeddedGraph.GraphItem.setReplica(JgclEmbeddedGraph.GraphItem), JgclEmbeddedGraph.Vertex, JgclEmbeddedGraph.Edge