jp.go.aist.dmrc.platform.beans.util.calculator
クラス PFMathCalculator

java.lang.Object
  拡張jp.go.aist.dmrc.platform.beans.util.calculator.PFMathCalculator
すべての実装インタフェース:
PFComponent, PFDataSetEventSource, PFEventSource, PFProcessTerminateEventSource, PFXMLSerializable, java.io.Serializable

public class PFMathCalculator
extends java.lang.Object
implements PFComponent, PFProcessTerminateEventSource, PFDataSetEventSource, PFXMLSerializable

関数電卓コンポーネント
 このコンポーネントは、文字列として与えられた数式に対する、実数値の代入計算を 行います。四則演算の他、剰余、べき乗、開平、三角関数、対数、ラジアン-度変換の 各種演算を扱うことができます。数式の長さや含まれる変数の数に制限はありません。

演算子および関数名とその機能概要

演算子および関数名機能概要
x+y加算(xとyの和)
x-y減算(xとyの差)
x*y乗算(xとyの積)
x/y除算(xのyによる商)
x%y剰余算(xのyによる剰余)
x^yべき乗算(xのy乗)
abs(x)絶対値(xの絶対値)
acos(x)逆余弦(xの逆余弦、返値の単位はラジアン)
asin(x)逆正弦(xの逆正弦、返値の単位はラジアン)
atan(x)逆正接(xの逆正接、返値の単位はラジアン)
atan2(x,y)逆正接(y/xの逆正接、返値の単位はラジアン)
ceil(x)x以上の最小の整数値
cos(x)余弦(xの余弦、xの単位はラジアン)
exp(x)自然対数の底eのべき乗(eのx乗)
floor(x)x以下の最大の整数値
log(x)自然対数(xの自然対数)
max(x,y)最大値(xとyのうち、大きい値)
min(x,y)最小値(xとyのうち、小さい値)
random()0以上1未満の乱数
rint(x)xに最も近い整数値
sin(x)正弦(xの正弦、xの単位はラジアン)
sqrt(x)開平(xの平方根)
tan(x)正接(xの正接、xの単位はラジアン)
toDegrees(x)ラジアンから度への変換
toRadians(x)度からラジアンへの変換

コンポーネントから発生するイベント

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

フィールドの概要
static int FORMULA_SET
          数式設定時のイベント番号
static int RESULT_ABORTED
          計算打ち切り時のイベント番号
static int RESULT_COMPLETED
          計算完了時のイベント番号
 
コンストラクタの概要
PFMathCalculator()
          コンポーネントを生成する。
 
メソッドの概要
 void addPFDataSetListener(PFDataSetListener lis)
          引数で与えられたイベントリスナを登録し、 データ設定イベント発生時に処理を行う対象とする。
 void addPFProcessTerminateListener(PFProcessTerminateListener lis)
          引数で与えられたイベントリスナを登録し、 処理完了イベント発生時に処理を行う対象とする。
 java.math.BigDecimal evaluate()
          計算を実行する。
 java.math.BigDecimal evaluate(PFLabeledObjectList assignment)
          代入値をラベル付きリストで設定して、計算を実行する。
 java.math.BigDecimal evaluate(PFObjectTable assignment)
          代入値テーブルを設定して、計算を実行する。
 PFObjectTable getAssignment()
          代入値テーブルを取得する。
 int getComponentID()
          コンポーネントIDを取得する。
 java.lang.String getComponentKey()
          コンポーネントキーを取得する。
 PFMultiLocaleString getComponentKeys()
          全ロケール分のコンポーネントキーを返す。
 java.lang.String getComponentName()
          コンポーネント名称を取得する。
 java.lang.String getComponentString()
          コンポーネントの文字列表現を取得する。
 java.math.BigDecimal getE()
          自然対数の底eを取得する
 java.lang.String getFormula()
          設定された数式を取得する。
 java.util.Iterator getPFDataSetListenerList()
          データ設定イベントリスナ配列を取得する。
 java.util.Iterator getPFProcessTerminateListenerList()
          処理完了イベントリスナ配列を取得する。
 java.math.BigDecimal getPI()
          円周率πを取得する。
 java.math.BigDecimal getResult()
          計算結果を取得する
 PFObjectList getVariables()
          変数リストを取得する。
 void localeUpdated()
          ロケール変更に対応する。
 void readXML(PFXMLLoader in)
          コンポーネントのXML入力.
 void removePFDataSetListener(PFDataSetListener lis)
          引数で与えられたイベントリスナを削除し、 データ設定イベント発生時に処理を行う対象から外す。
 void removePFProcessTerminateListener(PFProcessTerminateListener lis)
          引数で与えられたイベントリスナを削除し、 処理完了イベント発生時に処理を行う対象から外す。
 void setAssignment(PFLabeledObjectList assignment)
          代入値を、ラベル付きリストで設定する。
 void setAssignment(PFObjectTable assignment)
          代入値テーブルを設定する。
 void setComponentID(int id)
          コンポーネントIDを設定する。
 void setComponentKey(java.lang.String key)
          コンポーネントキーを設定する。
 void setComponentKeys(PFMultiLocaleString keys)
          全ロケール分のコンポーネントキーを設定する。
 void setFormula(java.lang.String formula)
          数式の設定。
 void setFormulaQuiet(java.lang.String formula)
          数式の設定。
 void writeXML(PFXMLGenerator out)
          コンポーネントのXML出力.
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

FORMULA_SET

public static final int FORMULA_SET
数式設定時のイベント番号

関連項目:
定数フィールド値

RESULT_COMPLETED

public static final int RESULT_COMPLETED
計算完了時のイベント番号

関連項目:
定数フィールド値

RESULT_ABORTED

public static final int RESULT_ABORTED
計算打ち切り時のイベント番号

関連項目:
定数フィールド値
コンストラクタの詳細

PFMathCalculator

public PFMathCalculator()
コンポーネントを生成する。

メソッドの詳細

getComponentName

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

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

getComponentKey

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

定義:
インタフェース PFComponent 内の getComponentKey
戻り値:
コンポーネントキー

setComponentKey

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

定義:
インタフェース PFComponent 内の setComponentKey
パラメータ:
key - コンポーネントキー

getComponentKeys

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

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

setComponentKeys

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

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

getComponentID

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

定義:
インタフェース PFComponent 内の getComponentID
戻り値:
コンポーネントID

setComponentID

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

定義:
インタフェース PFComponent 内の setComponentID
パラメータ:
id - 設定するコンポーネントID

getComponentString

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

定義:
インタフェース PFComponent 内の getComponentString
戻り値:
文字列表現

getPFProcessTerminateListenerList

public java.util.Iterator getPFProcessTerminateListenerList()
処理完了イベントリスナ配列を取得する。

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

addPFProcessTerminateListener

public void addPFProcessTerminateListener(PFProcessTerminateListener lis)
引数で与えられたイベントリスナを登録し、 処理完了イベント発生時に処理を行う対象とする。

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

removePFProcessTerminateListener

public void removePFProcessTerminateListener(PFProcessTerminateListener lis)
引数で与えられたイベントリスナを削除し、 処理完了イベント発生時に処理を行う対象から外す。

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

getPFDataSetListenerList

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

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

addPFDataSetListener

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

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

removePFDataSetListener

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

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

localeUpdated

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

定義:
インタフェース PFComponent 内の localeUpdated

getResult

public java.math.BigDecimal getResult()
計算結果を取得する

戻り値:
計算結果

getE

public java.math.BigDecimal getE()
自然対数の底eを取得する

戻り値:
自然対数の底e

getPI

public java.math.BigDecimal getPI()
円周率πを取得する。

戻り値:
円周率π

getVariables

public PFObjectList getVariables()
変数リストを取得する。 リストは、変数名の辞書式順序でソートされる。

戻り値:
変数リスト

getFormula

public java.lang.String getFormula()
設定された数式を取得する。

戻り値:
数式を表現する文字列

setFormula

public void setFormula(java.lang.String formula)
                throws PFSystemException
数式の設定。データ設定イベントを発生する。

パラメータ:
formula - 数式を表現する文字列
例外:
PFSystemException

setFormulaQuiet

public void setFormulaQuiet(java.lang.String formula)
数式の設定。データ設定イベントを発生しない。

パラメータ:
formula - 数式を表現する文字列

getAssignment

public PFObjectTable getAssignment()
代入値テーブルを取得する。 代入値テーブルは2列のテーブルであり、第0列には変数名、第1列には 代入する数値が記入される。第0列の列型は文字列、第1列の列型は、文字列 もしくは数字である。

[例]

変数名数値
X5
flow13.2
::

戻り値:
代入値テーブル

setAssignment

public void setAssignment(PFObjectTable assignment)
代入値テーブルを設定する。 代入値テーブルは2列のテーブルであり、第0列には変数名、第1列には 代入する数値が記入される。第0列の列型は文字列、第1列の列型は、文字列 もしくは数字である。

[例]

変数名数値
X5
flow13.2
::

パラメータ:
assignment - 代入値テーブル

evaluate

public java.math.BigDecimal evaluate(PFObjectTable assignment)
                              throws PFException
代入値テーブルを設定して、計算を実行する。 代入値テーブルは2列のテーブルであり、第0列には変数名、第1列には 代入する数値が記入される。第0列の列型は文字列、第1列の列型は、文字列 もしくは数字である。

[例]

変数名数値
X5
flow13.2
::

パラメータ:
assignment - 代入値テーブル
戻り値:
計算結果
例外:
PFException

setAssignment

public void setAssignment(PFLabeledObjectList assignment)
代入値を、ラベル付きリストで設定する。 ラベル付きリストの各要素のラベルが変数名、データは代入値となる。

パラメータ:
assignment - 代入値を表すラベル付きリスト

evaluate

public java.math.BigDecimal evaluate(PFLabeledObjectList assignment)
                              throws PFException
代入値をラベル付きリストで設定して、計算を実行する。 ラベル付きリストの各要素のラベルが変数名、データは代入値となる。

パラメータ:
assignment - 代入値を表すラベル付きリスト
戻り値:
計算結果
例外:
PFException

evaluate

public java.math.BigDecimal evaluate()
                              throws PFException
計算を実行する。

戻り値:
計算結果
例外:
PFException

readXML

public void readXML(PFXMLLoader in)
コンポーネントのXML入力.

定義:
インタフェース PFXMLSerializable 内の readXML
パラメータ:
in - XML入力ユーティリティ

writeXML

public void writeXML(PFXMLGenerator out)
              throws java.io.IOException
コンポーネントのXML出力.

定義:
インタフェース PFXMLSerializable 内の writeXML
パラメータ:
out - XML出力ユーティリティ
例外:
java.io.IOException