Wolfram Player Pro の互換性に関する開発者用ガイドライン

Player Pro のプログラミング

Player Pro 用のアプリケーションの構築には,Mathematica で利用できるプログラミングおよび計算関数のほとんどすべてが利用できます.しかし,多少のプログラミング上の制限があります.

  • .NET/Link を含む MathLink 操作はサポートされていません.InstallLinkConnectLinks等のコマンドは使わないようにしてください.これにはgridMathematica 等のリモートの Mathematica カーネルへのリンクも含まれます.
  • InputFieldは任意の Mathematica プログラムを受け入れません.しかし,Mathematica プログラムのように見えない数式や他の入力は受け入れることがあります.
  • Java,C/C++,.NETで書くことのできるカーネルへの別のフロントエンドはサポートされません.カーネルを使うためのサポートされる唯一の方法は Mathematica ノートブックインターフェースを使う方法です.
  • GUIKit はサポートされません.

データのプレロード

Player Pro アプリケーションでは必要に応じて外部データをロードすることができるため,データの埋込みは必要ありませんが,アプリケーションをなるべく内蔵型にしたい場合は,以下の点を考慮してください.

埋込みには基本的な方法が2つあります.

Initialization
Initializationオプションを使って,Manipulateコマンドに小さいコードブロックを入れることができます.次のコードをご覧ください.
Manipulate[myfunction[mydata,n],{n,0,1},
    Initialization:>(myfunction[dat_,n_]:=...;mydata={...})];

SaveDefinitions
大きいコードブロック,パッケージ,大きいデータファイルの場合は,Manipulateを作成する前にそれらを定義してからSaveDefinitionsを使い,Manipulate内でその状態を保存した方が便利です.
<<MyPackage`
mydata=Import[...];
Manipulate[myfunction[data,n],{n,0,1},SaveDefinitions->True];

外部ファイルの利用

Player Pro は実行時に外部ファイルにアクセスできるため,さまざまな利点があります.

コードの構成と保護
大きいプロジェクトの場合,コードをパッケージに入れて整理する(Wolfram Workbench を使う場合も含む)と,メンテナンス可能な開発の役に立ちます.Initializationコマンドを使ってManipulate内部にコードを入れる代りに,パッケージの呼び出しを入れることができます.すべてのパッケージは,.mxバイナリファイル生成のためにEncodeコマンドかDumpSaveを使って符号化しなければなりません.詳細はスクリーンキャストをご覧ください.

こうすると,これを動的インターフェースからロードすることができます.以下はその例です.
Manipulate[myfunction[n],{n,0,1},Initialization:>Needs["EncodedPackage`"]]

さらに,これにはソースコードを暗号化するという利点もあります.

リアルタイムおよびユーザ定義のデータ
ノートブックに外部データの呼出しを挿入し,Player Pro ユーザが自分のデータを使ったり,事前に指定されたリアルタイムデータを取得したりできるようにするには,いくつかの方法があります.以下は典型的な例です.

  • リモートソースのデータを含むアプリケーションを初期化する:
    Manipulate[...,Initialization:>(data=Import["http://server.domain.com/latestdata.dat"])]
  • Webカメラからデータを取得する:
    Manipulate[...,Button["Get image", data=Import["http://server.domain.com/webcam.jpg"]
  • ユーザに解析用のローカルデータを選ばせる:
    Manipulate[..., Button["Load data", mydatapath = SystemDialogInput["FileOpen"]]]

ノートブックとその他のファイル

Mathematica で作成されたノートブックだけ開くことができます.有効なファイルアウトラインキャッシュのないノートブックは開けません.ノートブック以外のファイルも開けません.



Select Language: enespt-brzhru