jp.go.aist.dmrc.platform.beans.framework3d
クラス PFShapeDocumentManager

java.lang.Object
  上位を拡張 jp.go.aist.dmrc.platform.beans.framework3d.PFShapeDocumentManager
すべての実装されたインタフェース:
java.io.Externalizable, java.io.Serializable, PFComponent, jp.go.aist.dmrc.platform.framework3d.facetor.IFacetingObserver, PFDataCreateEventSource, PFDataUpdateEventSource, PFEventSource

public class PFShapeDocumentManager
extends java.lang.Object
implements PFComponent, java.io.Externalizable, PFDataCreateEventSource, PFDataUpdateEventSource, jp.go.aist.dmrc.platform.framework3d.facetor.IFacetingObserver

形状モデルデータを管理するコンポーネント。

このコンポーネントから以下のイベントが発生する。

関連項目:
直列化された形式

コンストラクタの概要
PFShapeDocumentManager()
           
 
メソッドの概要
 void abort()
          形状登録操作を中止する
 void activateAllItems()
          登録済みの全エレメントをアクティブ(さまざまな操作の対象となる)にする
 void activateItem(java.lang.Object idList)
          指定したエレメントをアクティブ(さまざまな操作の対象となる)にする
 void addPFDataCreateListener(PFDataCreateListener lis)
          引数で与えられたイベントリスナを登録し、 データ生成イベント発生時に処理を行う対象とする。
 void addPFDataUpdateListener(PFDataUpdateListener lis)
          引数で与えられたイベントリスナを登録し、 データ更新イベント発生時に処理を行う対象とする。
 void addShapeElement(java.lang.Object object)
          形状要素の追加
 boolean canRedo()
           
 boolean canUndo()
           
 void clearShapeData()
          形状データの初期化 ビューに表示されている形状の削除は行わない.
 java.lang.Object findEntity(int id)
          指定したIDのエンティティを取得する
protected  void firePFDataCreated(PFDataCreateEvent event)
          データ生成をリスナーに通知する。
protected  void firePFDataUpdated(PFDataUpdateEvent event)
          データ更新をリスナーに通知する。
 java.lang.Object getActiveItems()
           
 int getComponentID()
          コンポーネントIDを取得する。
 java.lang.String getComponentKey()
          コンポーネントキーを取得する。
 PFMultiLocaleString getComponentKeys()
          全ロケール分のコンポーネントキーを返す。
 java.lang.String getComponentName()
          コンポーネント名称を取得する。
 java.lang.String getComponentPublicName()
          コンポーネント公開名を取得する.
 java.lang.String getComponentString()
          コンポーネントの文字列表現を取得する。
 java.lang.Object getCurrentWorkSpace()
           
 java.lang.Object getDisplayPrecision()
          表示精度を取得する
 java.lang.Object getDocument()
           
 PFObjectList getDrawElementPathList()
          描画要素のパスリストを取得する このメソッドが返すのは,アクティブアイテムのパスリストである.
 java.util.Iterator getPFDataCreateListenerList()
          データ生成イベントリスナ配列を取得する。
 java.util.Iterator getPFDataUpdateListenerList()
          データ更新イベントリスナ配列を取得する。
 int getPickTarget()
          ピック対象が何に設定されているかを取得する
 java.lang.Object getShapeData()
          形状データの取得
 void inactivateAllItems()
          現在アクティブ状態にあるすべてのエレメントのアクティブ状態を解除する
 boolean isAllowPullTransfer()
          他PFからのPull型コンポーネント転送要求に対する可否属性を取得する.
 boolean isAllowPushTransfer()
          他PFへのPush型コンポーネント転送要求に対する可否属性を取得する.
 boolean isAllowRemoteInvocation()
          他PFからのコンポーネント連携要求に対する可否属性を取得する.
 boolean isDisplayMode()
          形状モデルの表示/非表示を取得する
 void localeUpdated()
          ロケール変更に対応する。
 void makeDrawElementList()
          形状データの描画要素作成
 void readExternal(java.io.ObjectInput in)
          コンポーネントのデシリアライズ。
 void rebuild()
          カレントワークスペースの状態を更新する
 void rebuild(java.lang.Object items)
          カレントワークスペースの状態を更新する
 void redo()
          Redoを実行する
 void removePFDataCreateListener(PFDataCreateListener lis)
          引数で与えられたイベントリスナを削除し、 データ生成イベント発生時に処理を行う対象から外す。
 void removePFDataUpdateListener(PFDataUpdateListener lis)
          引数で与えられたイベントリスナを削除し、 データ更新イベント発生時に処理を行う対象から外す。
 void removeShapeData(java.lang.Object target)
          指定した形状を削除する
 void setAllowPullTransfer(boolean flag)
          他PFからのPull型コンポーネント転送要求に対する可否属性を設定する.
 void setAllowPushTransfer(boolean flag)
          他PFへのPush型コンポーネント転送要求に対する可否属性を設定する.
 void setAllowRemoteInvocation(boolean flag)
          他PFからのコンポーネント連携要求に対する可否属性を設定する.
 void setComponentID(int id)
          コンポーネントIDを設定する。
 void setComponentKey(java.lang.String key)
          コンポーネントのキー情報を設定する
 void setComponentKeys(PFMultiLocaleString keys)
          全ロケール分のコンポーネントキーを設定する。
 void setComponentPublicName(java.lang.String publicName)
          コンポーネント公開名を設定する.
 void setDisplayMode(boolean flag)
          形状モデルの表示/非表示を設定する
 void setDisplayPrecision(java.lang.Object precision)
          表示精度を設定する
 void setPickTarget(int mode)
          ピック対象を設定する
 void setShapeData(java.lang.Object object)
          形状データの登録
 void setVertexDisplay(boolean active)
          頂点要素の表示/非表示を設定する
 void undo()
          Undoを実行する
 void update(jp.go.aist.dmrc.platform.framework3d.facetor.IFacetingObservable observable)
          ファセットが1つ生成される都度呼び出される.
 void writeExternal(java.io.ObjectOutput out)
          コンポーネントのシリアライズ。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

PFShapeDocumentManager

public PFShapeDocumentManager()
メソッドの詳細

getComponentName

public java.lang.String getComponentName()
コンポーネント名称を取得する。

定義:
インタフェース PFComponent 内の getComponentName
戻り値:
コンポーネント名
関連項目:
PFComponent.getComponentName()

getComponentKey

public java.lang.String getComponentKey()
コンポーネントキーを取得する。

定義:
インタフェース PFComponent 内の getComponentKey
戻り値:
コンポーネントキー文字列
関連項目:
PFComponent.getComponentKey()

setComponentKey

public void setComponentKey(java.lang.String key)
コンポーネントのキー情報を設定する

定義:
インタフェース PFComponent 内の setComponentKey
パラメータ:
key - 設定するコンポーネントのキー
関連項目:
PFComponent.setComponentKey(java.lang.String)

getComponentKeys

public PFMultiLocaleString getComponentKeys()
全ロケール分のコンポーネントキーを返す。

戻り値:
全ロケール分のコンポーネントキー

setComponentKeys

public void setComponentKeys(PFMultiLocaleString keys)
全ロケール分のコンポーネントキーを設定する。

パラメータ:
keys - 全ロケール分のコンポーネントキー

getComponentID

public int getComponentID()
コンポーネントIDを取得する。

定義:
インタフェース PFComponent 内の getComponentID
戻り値:
コンポーネントID
関連項目:
PFComponent.getComponentID()

setComponentID

public void setComponentID(int id)
コンポーネントIDを設定する。
コンポーネントIDはプラットフォームPFComponentBusから設定される。 各コンポーネント内では操作しないこと。

定義:
インタフェース PFComponent 内の setComponentID
パラメータ:
id - 設定するコンポーネントID
関連項目:
PFComponent.setComponentID(int)

getComponentString

public java.lang.String getComponentString()
コンポーネントの文字列表現を取得する。
形式:"Component Name" [ ID : "ID" ]

定義:
インタフェース PFComponent 内の getComponentString
戻り値:
コンポーネントの文字列表現を返す。
関連項目:
PFComponent.getComponentString()

getComponentPublicName

public java.lang.String getComponentPublicName()
コンポーネント公開名を取得する.

定義:
インタフェース PFComponent 内の getComponentPublicName
戻り値:
コンポーネント公開名

setComponentPublicName

public void setComponentPublicName(java.lang.String publicName)
                            throws PFComponentException
コンポーネント公開名を設定する.
空文字のみの公開名は、nullに置き換える。数字のみの公開名は許可しない。 また、既存コンポーネントとの重複も認めない.

定義:
インタフェース PFComponent 内の setComponentPublicName
パラメータ:
publicName - 設定するコンポーネント公開名
例外:
PFComponentException - 規約に反する名前が設定されようとした場合

isAllowRemoteInvocation

public boolean isAllowRemoteInvocation()
他PFからのコンポーネント連携要求に対する可否属性を取得する.

定義:
インタフェース PFComponent 内の isAllowRemoteInvocation
戻り値:
コンポーネント連携要求可否属性

setAllowRemoteInvocation

public void setAllowRemoteInvocation(boolean flag)
他PFからのコンポーネント連携要求に対する可否属性を設定する.

定義:
インタフェース PFComponent 内の setAllowRemoteInvocation
パラメータ:
flag - コンポーネント連携要求に対する可否

isAllowPullTransfer

public boolean isAllowPullTransfer()
他PFからのPull型コンポーネント転送要求に対する可否属性を取得する.

定義:
インタフェース PFComponent 内の isAllowPullTransfer
戻り値:
Pull型コンポーネント転送要求可否属性

setAllowPullTransfer

public void setAllowPullTransfer(boolean flag)
他PFからのPull型コンポーネント転送要求に対する可否属性を設定する.

定義:
インタフェース PFComponent 内の setAllowPullTransfer
パラメータ:
flag - Pull型コンポーネント転送要求に対する可否

isAllowPushTransfer

public boolean isAllowPushTransfer()
他PFへのPush型コンポーネント転送要求に対する可否属性を取得する.

定義:
インタフェース PFComponent 内の isAllowPushTransfer
戻り値:
Push型コンポーネント転送要求可否属性

setAllowPushTransfer

public void setAllowPushTransfer(boolean flag)
他PFへのPush型コンポーネント転送要求に対する可否属性を設定する.

定義:
インタフェース PFComponent 内の setAllowPushTransfer
パラメータ:
flag - Push型コンポーネント転送要求に対する可否

getPFDataUpdateListenerList

public java.util.Iterator getPFDataUpdateListenerList()
データ更新イベントリスナ配列を取得する。

定義:
インタフェース PFDataUpdateEventSource 内の getPFDataUpdateListenerList
戻り値:
イベントリスナイテレータ

addPFDataUpdateListener

public void addPFDataUpdateListener(PFDataUpdateListener lis)
引数で与えられたイベントリスナを登録し、 データ更新イベント発生時に処理を行う対象とする。

定義:
インタフェース PFDataUpdateEventSource 内の addPFDataUpdateListener
パラメータ:
lis - 追加対象イベントリスナ

removePFDataUpdateListener

public void removePFDataUpdateListener(PFDataUpdateListener lis)
引数で与えられたイベントリスナを削除し、 データ更新イベント発生時に処理を行う対象から外す。

定義:
インタフェース PFDataUpdateEventSource 内の removePFDataUpdateListener
パラメータ:
lis - 削除対象イベントリスナ

firePFDataUpdated

protected void firePFDataUpdated(PFDataUpdateEvent event)
データ更新をリスナーに通知する。

パラメータ:
event - イベント

getPFDataCreateListenerList

public java.util.Iterator getPFDataCreateListenerList()
データ生成イベントリスナ配列を取得する。

定義:
インタフェース PFDataCreateEventSource 内の getPFDataCreateListenerList
戻り値:
イベントリスナイテレータ

addPFDataCreateListener

public void addPFDataCreateListener(PFDataCreateListener lis)
引数で与えられたイベントリスナを登録し、 データ生成イベント発生時に処理を行う対象とする。

定義:
インタフェース PFDataCreateEventSource 内の addPFDataCreateListener
パラメータ:
lis - 追加対象イベントリスナ

removePFDataCreateListener

public void removePFDataCreateListener(PFDataCreateListener lis)
引数で与えられたイベントリスナを削除し、 データ生成イベント発生時に処理を行う対象から外す。

定義:
インタフェース PFDataCreateEventSource 内の removePFDataCreateListener
パラメータ:
lis - 削除対象イベントリスナ

firePFDataCreated

protected void firePFDataCreated(PFDataCreateEvent event)
データ生成をリスナーに通知する。

パラメータ:
event - イベント

localeUpdated

public void localeUpdated()
ロケール変更に対応する。

定義:
インタフェース PFComponent 内の localeUpdated
関連項目:
PFComponent.localeUpdated()

readExternal

public void readExternal(java.io.ObjectInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
コンポーネントのデシリアライズ。
外部からこのメソッドを呼び出さないでください。

定義:
インタフェース java.io.Externalizable 内の readExternal
パラメータ:
in - 入力元ストリーム
例外:
java.io.IOException - I/Oエラー
java.lang.ClassNotFoundException - クラスが見つからない

writeExternal

public void writeExternal(java.io.ObjectOutput out)
                   throws java.io.IOException
コンポーネントのシリアライズ。
外部からこのメソッドを呼び出さないでください。

定義:
インタフェース java.io.Externalizable 内の writeExternal
パラメータ:
out - 出力先ストリーム
例外:
java.io.IOException - I/Oエラー

getDocument

public java.lang.Object getDocument()
戻り値:
全ての形状データを管理しているドキュメント

getCurrentWorkSpace

public java.lang.Object getCurrentWorkSpace()
戻り値:
ドキュメントが保持するワークスペースのうち,現在アクティブなワークスペース アクティブなワークスペースは常に1つしかない.

findEntity

public java.lang.Object findEntity(int id)
指定したIDのエンティティを取得する

パラメータ:
id - [i] 検索するエンティティのID
戻り値:
エンティティ.指定したIDのエンティティがなければヌルを返す.

getShapeData

public java.lang.Object getShapeData()
形状データの取得

戻り値:
形状要素の配列.Part[]

setShapeData

public void setShapeData(java.lang.Object object)
                  throws PFComponentException
形状データの登録

パラメータ:
object - 形状要素.Partまたはその配列
例外:
PFComponentException

update

public void update(jp.go.aist.dmrc.platform.framework3d.facetor.IFacetingObservable observable)
ファセットが1つ生成される都度呼び出される.

ファセット生成に失敗した場合でも呼び出される.

定義:
インタフェース jp.go.aist.dmrc.platform.framework3d.facetor.IFacetingObserver 内の update

removeShapeData

public void removeShapeData(java.lang.Object target)
                     throws PFComponentException
指定した形状を削除する

パラメータ:
target - [i] 削除する形状
例外:
PFComponentException

clearShapeData

public void clearShapeData()
形状データの初期化

ビューに表示されている形状の削除は行わない.


addShapeElement

public void addShapeElement(java.lang.Object object)
                     throws PFComponentException
形状要素の追加

パラメータ:
shape - [i] 形状要素Partまたはその配列
例外:
PFComponentException

abort

public void abort()
形状登録操作を中止する


getDisplayPrecision

public java.lang.Object getDisplayPrecision()
                                     throws PFComponentException
表示精度を取得する

戻り値:
表示精度.
実体はdouble[]の配列でその内容は
[0]...曲線の距離精度
[1]...曲線の角度精度
[2]...曲面の距離精度
[3]...曲面の角度精度
例外:
PFComponentException

setDisplayPrecision

public void setDisplayPrecision(java.lang.Object precision)
                         throws PFComponentException
表示精度を設定する

パラメータ:
precision - [i] 表示精度.
実体はdouble[]の配列でその内容は
[0]...曲線の距離精度
[1]...曲線の角度精度
[2]...曲面の距離精度
[3]...曲面の角度精度
例外:
PFComponentException

setVertexDisplay

public void setVertexDisplay(boolean active)
頂点要素の表示/非表示を設定する


makeDrawElementList

public void makeDrawElementList()
形状データの描画要素作成


getDrawElementPathList

public PFObjectList getDrawElementPathList()
描画要素のパスリストを取得する

このメソッドが返すのは,アクティブアイテムのパスリストである. このため,アクティブアイテムがない状態では空のパスリストを返す.

戻り値:
パスリスト

activateAllItems

public void activateAllItems()
登録済みの全エレメントをアクティブ(さまざまな操作の対象となる)にする


activateItem

public void activateItem(java.lang.Object idList)
                  throws PFComponentException
指定したエレメントをアクティブ(さまざまな操作の対象となる)にする

パラメータ:
ids - [i] アクティブにするエレメントのパス
例外:
PFComponentException

inactivateAllItems

public void inactivateAllItems()
現在アクティブ状態にあるすべてのエレメントのアクティブ状態を解除する


getActiveItems

public java.lang.Object getActiveItems()
戻り値:
アクティブなアイテムの配列.アイテムは Assembly, Body, Face, Edgeのいずれかを示す.

ピックモードがパート単位になっている時に何らかのエレメントをピックした 場合,そのエレメントを含むAssemblyまたはBody全体がアクティブ(オペレー ションや解析の対象)であると見なされる.アクティブアイテムのパスはボデ ィまたはアセンブリまでとなり,その配下にあるエンティティは含まない.
ピックモードがパート単位になっている時は,#isPickTargetPart() がtrueを返す.


getPickTarget

public int getPickTarget()
ピック対象が何に設定されているかを取得する

戻り値:
ピック対象が何かを示す番号.番号が示すものはそれぞれ以下のとおり.
  1. 0...モデルの下位エレメント.フェイスやエッジ.
  2. 1...ボディ.
  3. 2...モデルの最上位エレメント.アセンブリの場合には最上位のアセンブリ.アセンブリを含まない場合はボディ.

setPickTarget

public void setPickTarget(int mode)
ピック対象を設定する

パラメータ:
mode - [i] ピック対象.設定する値ごとに以下のように変化する.
  1. 0...モデルの下位エレメント.フェイスやエッジ.
  2. 1...ボディ.
  3. 2...モデルの最上位エレメント.アセンブリの場合には最上位のアセンブリ.アセンブリを含まない場合はボディ.

rebuild

public void rebuild(java.lang.Object items)
             throws PFComponentException
カレントワークスペースの状態を更新する

パラメータ:
items - [i] 変更のあったアイテム群

別のコンポーネントでモデリング操作を行った時に呼び出す. これにより,ドキュメントが管理するエレメント(表示要素を含む)の 更新が行われる.

例外:
PFComponentException

rebuild

public void rebuild()
             throws PFComponentException
カレントワークスペースの状態を更新する

パラメータ:
items - [i] 変更のあったアイテム群

別のコンポーネントでモデリング操作を行った時に呼び出す. これにより,ドキュメントが管理するエレメント(表示要素を含む)の 更新が行われる.

例外:
PFComponentException

canUndo

public boolean canUndo()
戻り値:
Undo可能ならtrue

canRedo

public boolean canRedo()
戻り値:
Redo可能ならtrue

undo

public void undo()
Undoを実行する


redo

public void redo()
Redoを実行する


setDisplayMode

public void setDisplayMode(boolean flag)
形状モデルの表示/非表示を設定する

パラメータ:
flag - 表示/非表示

isDisplayMode

public boolean isDisplayMode()
形状モデルの表示/非表示を取得する

戻り値:
表示/非表示