[ 前へ | 目次 | 次へ ]
Now Loading...
ダウンロード
PC (※スマートフォンでは動きません) でダウンロードし、ZIPファイルを右クリックメニューから展開して、できたフォルダ内の「 VCSSL.bat(バッチファイル) 」または「 VCSSL.jar 」をダブルクリックなどで実行すると、プログラムが起動します。
» 詳しい使用方法や、エラーで展開できない際の対応方法などはこちら

GraphFileAnimator3D - 連番ファイルから3Dグラフをアニメーション描画するツール

このプログラム「 GraphFileAnimator3D 」は、 フォルダ内の連番データファイルを読み込み、3次元グラフを連続で高速描画して、 アニメーションさせるツールです。

» 2次元グラフ版はこちら!

使用方法

ダウンロードと展開(解凍)

まず、PC(スマホは未対応)で上の画面の「 ダウンロード 」ボタンを押してください。 するとZIP形式で圧縮されたファイルがダウンロードされるので、そのZIPファイルを右クリックして「すべて展開」や「ここに展開」などで展開(解凍)してください。 展開が成功すると、ZIPファイルと同じ名前のフォルダができ、その中にZIPファイルの中身が入っています。

» 展開がエラーで止まってしまう場合は…

なお、Linux® 等をご使用で、右クリックメニューから展開するとファイル名が文字化けしてしまう場合は、 コマンドライン端末でZIPファイルのある場所まで cd した上で「 unzip -O cp932 ZIPファイル名 」で展開してみてください。

プログラムの起動

Microsoft® Windows® をご使用の場合

上記の通りにZIPファイルを展開したフォルダ内にある、 「 VCSSL.bat(種類はバッチファイル) 」をダブルクリック実行してください。 もしプログラムの内容を書き変えながら使いたい場合は、代わりに「 VCSSL_Editor.bat 」を実行してください。

実行すると、最初にメモリー使用量や、(必要な場合のみ)Java®実行環境を自動で入手するか 等を尋ねられるので、適時答えると、プログラムが起動します。2回目以降はすぐに起動します。

※ ここで入手したJava®実行環境は、ZIPファイルを展開した中の「 jre 」フォルダ内にダウンロードされ、このプログラムの実行のみに使用されます。PC全体に影響する形でインストールされる事はありません。

Linux® 等やその他のOSをご使用の場合

ZIPファイルを展開したフォルダ内へコマンドライン端末で cd して、以下の通り入力して実行してください:

java -jar VCSSL.jar
(プログラムの内容を書き変えながら使いたい場合は、代わりに VCSSL_Editor.jar を実行)

» javaコマンドが使用できない等のエラーが表示される場合は…

起動後

連番データファイルの読み込み先フォルダの指定

起動すると、まず連番データファイルを読み込むフォルダを指定するかどうか尋ねられます:

フォルダ指定画面

もし既に、プロットしたい連番ファイルを格納したフォルダを用意できている場合は、ここで「はい」を選択します。 「いいえ」を選択すると、プログラムと同じ場所にある「 input 」という名前のフォルダが、読み込み先フォルダになります。 この中には最初からサンプルファイルが格納されているため、 とりあえず初回は「いいえ」を選択しましょう。

ファイル名と拡張子の入力

続いて、ファイル名と拡張子を尋ねられるので、それぞれ入力してください:

ファイル名入力画面

なお、ファイル名は、連番の番号を除いた部分のみを入力します(下図参照)。

入力ファイル名と拡張子

これも、標準ではサンプルコードの内容があらかじめ入力されているため、 とりあえず初回はそのまま「OK」を押して次に進みましょう。

※「 拡張子なんて見た事ないけど…? 」という方は…
最近の多くのPCでは、拡張子は標準では表示されないように設定されています。 表示するには、「 拡張子 表示 」などのキーワードでWeb検索してみてください。 なお、たまに本当に拡張子の無いファイルも存在します。その場合は拡張子の指定内容を空にして「OK」を押してください。

連番ファイルの番号の検索(自動)

すると、読み込みフォルダ内にある連番ファイルが検索され、開始番号と終了番号が自動で判断されます。

ファイル番号検索の結果

ここでは特に何もする必要はなく、勝手に次に進みます。

画面の起動

いよいよ画面が起動します。合計で3つのウィンドウが立ち上がります。 左がグラフのプロット範囲やアニメーション速度などの入力画面、右上がアニメーション操作画面、 そして右下がグラフ画面です。

入力画面(左)とアニメーション操作画面(右上)とグラフ画面(右下)

アニメーションの再生/停止

アニメーション操作画面の「 PLAY 」ボタンを押すと、 連番ファイルが次々とグラフに描画されて、アニメーションとして再生されます。

アニメーション中は、「 PLAY 」ボタンは表示が変わって「 STOP 」ボタンになり、押すとアニメーションが一時停止します。 アニメーション停止中は、ボタン横のスライダーで、時間を手動で自由に動かす事ができます。

プロットオプションの選択やその他の設定など(任意)

標準では、グラフは以下のように「点プロット」で描画されます:

点プロットの様子

これを曲面プロットにするには、グラフ画面のメニューバーから「 オプション 」をクリックし、「 点プロット 」の選択を外して、代わりに「 曲面プロット 」を有効にします。 すると、以下のようにグラフが曲面で描画されるようになります:

曲面プロットの様子

プロットオプションは、下図のように色々なものが選べます(※下図で描画しているデータは、今回のサンプルとは別のものです)。

プロットオプション

他にも、メニューバーから色々な設定を行えます。 設定は、「ファイル」 > 「設定の保存」メニューから保存できます。

このプログラムのグラフソフトを単体で使用したい場合は…
このプログラムで起動されるグラフ画面は、 「 リニアングラフ3D( RINEARN Graph 3D ) 」というデータ解析用のグラフソフトで、 単体でも入手・利用できます。操作感などが気に入った方は、ぜひご利用ください。

読み込むデータファイルの書式

このツールは、単純にデータファイルを1枚読んではグラフを描いて…を高速にくり返すだけの仕組みなので、 個々のデータファイルの書式は、普通にリニアングラフ3Dで1枚のグラフを描く場合と同じです。 従って書式の詳細は、リニアングラフ3Dの取扱説明書の、以下のページをご参照ください:

また、特にプログラムでデータファイルを作成したい場合などは、VCSSLスタートアップガイドの以下の回も参考になるかもしれません。

以下では、簡単に書式の概要を説明します。

1行の中での数値の区切りは、カンマ記号「 , 」か空白(タブでもOK)で

データファイルには、すぐ後に述べるように、1行に複数の数値を記述する必要があります。 この区切りには、カンマ記号「 , 」と空白(タブでもOK)のどちらかを使用できます。 なお、空白は複数連続させても構いません。

- 例:カンマ記号で区切る場合 -
1.0,2.0,3.0
...

- 例:空白で区切る場合 -
1.0    2.0    3.0
...

以下では、Webページ上で見やすいため、空白を区切りに使用します。

点/線プロット用のデータ

まず単純なのが、曲面を張らない、点または線のグラフです。 これには、データファイルの1行に1点の座標値を記述します。 いまは3次元なので、点の座標値は X / Y / Z の3つがありますね。これを先の通りにカンマ記号が空白で区切って記載します:

x1    y1    z1
x2    y2    z2
x3    y3    z3

※ x1 などの箇所には、実際には数値を記載してください。

上の例では、1行目に点1の座標値 (x1,y1,z1) が、2行目に点2の座標値 (x2,y2,z2) が、そして3行目に点3の座標値 (x3,y3,z3) が記載されています。

このようなデータファイルを読み込むと、点プロット時には、記載した全ての座標値の位置に点が描画されます。 線プロットは、点を線で繋ぐだけなので、データ的には点プロットと同じです。

曲面/メッシュプロット用のデータ (3カラム書式)

続いて、曲面/メッシュプロット用のデータです。 これも基本的には、1行に1点の座標値を記載していくのですが、その点をどのような順で書いていくかに、少し独特の決まりがあります。 これは文章で説明するよりも、まずは下の図を見て頂いた方が早いと思います:

曲面/メッシュプロットで点を書いていく順序

上のような順で、布の横糸( or 経糸)をなぞっていくように、格子点の座標値を端から端まで、1行ずつ記載していきます。 そして、端に達すると折り返し、そこで空白行を記載します。その後は、先ほどの一本だけ隣の「糸」に移動して、また格子点の座標を端から端まで記載していきます。 以上をくり返して、最終的に全ての格子点の座標値を記載すれば終わりです。

ちょうど、このプログラムのサンプルはこの書式で記載しているため、具体例として参考になるかもしれません。 「 input 」フォルダの中に「 sample3d_*.txt (*の箇所は番号) 」として同梱されているので、確認してみてください。

ところで、ここで述べたようなデータの書き方は、少し奇妙に見えるかもしれません。 しかし、プログラムでデータを大量に作成するには、意外と便利な書式です。 そもそもアニメーション化したいほどデータが大量にあるという事は、恐らくなんらかのプログラムでデータを作成(または処理)している場合が多いと思います。 そのような場合には、ここで扱った書式が便利です。

曲面/メッシュプロット用のデータ (マトリックス書式)

曲面/メッシュプロットには、他にも「 マトリックス書式 」という書き方がサポートされています。 これは、表計算ソフトなどで3Dグラフ用のデータを作成する場合に便利な書式です。 ただ、表計算ソフトでデータを大量に作成するのは結構な手間がかかるため、 アニメーションではあまり使用しないと思います。そのため、ここでは割愛します。

マトリックス書式の詳細は、リニアングラフ3Dの取扱説明書の「 座標値ファイル書式 」のページをご参照ください。

コード解説

コード全体

このプログラムのコードはVCSSLで記述されています。 VCSSLはC言語系のシンプルな文法を持っているので、C系の言語に触れられた事のある方なら、 コメントを参考にしながらコード内容を比較的簡単に追う or 改造する事ができると思います。

今回のコードは、基本的なグラフ描画の処理に、GUIの画面などを組み合わせて、ツールとして仕上げたものです。 グラフの描画処理の基本については以下の回で解説していますので、そちらをご参照ください:

また、VCSSLでのGUI画面の構築については、「 VCSSL GUI開発ガイド 」をご参照ください。

今回のコードは、サンプルコードというよりは実際に使うためのツールなので、 細部を細かくピックアップしながらの解説は割愛し、コード全体の掲載に留めておきます。 今回のコードの全体は、以下の通りです:

コード内容は以上です。

詳しいVCSSLのプログラミングガイド(無料)はこちらへ!

上記のコードはプログラミング言語VCSSLで記述されており、VCSSLのプログラミングガイドは下記で無料公開しています。 上記のコードを改造したい方や、新しいコードを書いてみたい方はぜひご活用ください!

ブラウザで読めるWeb版だけでなく、PDF版も無料で配布しています!

スタートアップガイド( プログラミングがはじめての方向け )
プログラミングの入門書に相当する内容です。プログラミングが初めての方はこちらがおすすめです。
即席ガイド( C系言語ユーザー向け )
C言語や C++ などのC系の言語を扱われている方が、即席でVCSSLを扱うための簡易ガイドです。
文法ガイド
VCSSLの文法や基本的な機能を淡々とまとめた、リファレンスマニュアル的な位置づけのガイドです。
GUI開発ガイド
ボタンや入力項目などのGUI部品が並ぶ、画面を備えたVCSSLプログラムを開発するためのガイドです。
2DCG開発ガイド
画面上や画像ファイルなどに、2次元的な描画を行うVCSSLプログラムを開発するためのガイドです。
3DCG開発ガイド
画面上や画像ファイルなどに、3次元的な描画を行うVCSSLプログラムを開発するためのガイドです。
標準ライブラリ 仕様書
コード内で呼び出される関数は、大半が標準ライブラリのものです。その詳細仕様を掲載しています。

ライセンス

このVCSSLコード( 拡張子が「.vcssl」のファイル )は実質的な著作権フリー(パブリックドメイン) である CC0 の状態で公開しています。 そのままでのご利用はもちろん、言語の種類を問わず、改造や流用などもご自由に行ってください。

※ ただし、このVCSSLコードの配布フォルダ内には、ダウンロード後すぐに実行できるように、 VCSSLの実行環境も同梱されており、そのライセンス文書は「 License 」フォルダ内に同梱されています (要約すると、商用・非商用問わず自由に使用できますが、使用の結果に対して開発元は一切の責任を負いません、といった具合の内容です)。 配布フォルダ内の各構成物の一覧やライセンスについては「 ReadMe_使用方法_必ずお読みください.txt 」をご参照ください。

この記事中の商標などについて

  • OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
  • Windows は、米国 Microsoft Corporation の米国およびその他の国における登録商標です。この記事は独立著作物であり、Microsoft Corporation と関連のある、もしくはスポンサーを受けるものではありません。
  • Linux は、Linus Torvalds 氏の米国およびその他の国における商標または登録商標です。
  • その他、文中に使用されている商標は、その商標を保持する各社の各国における商標または登録商標です。


スポンサーリンク



[ 前へ | 目次 | 次へ ]
連番ファイルから3Dグラフをアニメーション描画するツール

フォルダ内の連番データファイルを読み込み、3Dグラフを高速で連続描画して、アニメーションさせるツールです。
連番ファイルから2Dグラフをアニメーション描画するツール

フォルダ内の連番データファイルを読み込み、2Dグラフを高速で連続描画して、アニメーションさせるツールです。
z = f(x,y,t) の形の数式を3Dグラフとしてアニメーション描画するツール

入力欄に z = f(x,y,t) の形の数式を入力すると、それを3次元のグラフにアニメーション描画してくれる簡易ツールです。
y = f(x,t) の形の数式を2Dグラフとしてアニメーション描画するツール

入力欄に y = f(x,t) の形の数式を入力すると、それを2次元のグラフにアニメーション描画してくれる簡易ツールです。
t を媒介変数とする x(t), y(t), z(t) の数式を3Dグラフに描画し、アニメーションもできるツール

入力欄に x(t), y(t), z(t) の形の数式を入力すると、それを t を媒介変数として3次元のグラフに描画し、アニメーションもできる簡易ツールです。
t を媒介変数とする x(t), y(t) の数式を2Dグラフに描画し、アニメーションもできるツール

入力欄に x(t), y(t) の形の数式を入力すると、それを t を媒介変数として2次元のグラフに描画し、アニメーションもできる簡易ツールです。
z = f(x,y) の形の数式を3Dグラフとして描画するツール

入力欄に z = f(x,y) の形の数式を入力すると、それを3次元のグラフに描いてくれる簡易ツールです。
y = f(x) の形の数式を2Dグラフとして描画するツール

入力欄に y = f(x) の形の数式を入力すると、それを2次元のグラフに描いてくれる簡易ツールです。
配列を3Dグラフにアニメーションプロットする(曲面/メッシュグラフ)

座標値配列の内容を、3次元の曲面/メッシュグラフに連続でプロットし、アニメーションさせるサンプルプログラムです。
配列を3Dグラフにアニメーションプロットする(点/線グラフ)

座標値配列の内容を、3次元の点/線グラフに連続でプロットし、アニメーションさせるサンプルプログラムです。
配列を2Dグラフにアニメーションプロットする

座標値配列の内容を、2次元グラフに連続でプロットし、アニメーションさせるサンプルプログラムです。
配列を3Dグラフにプロットする(曲面/メッシュグラフ)

座標値配列の内容を、3次元の曲面/メッシュグラフにプロットするサンプルプログラムです。
ファイルを3Dグラフにプロットする(曲面/メッシュグラフ)

座標値ファイルの内容を、3次元の曲面/メッシュグラフにプロットするサンプルプログラムです。
ユーザーが入力した数式を2Dグラフにプロットする

実行時にユーザーが入力した数式の値を、2次元グラフにプロットするサンプルプログラムです。
配列を3Dグラフにプロットする(点/線グラフ)

座標値配列の内容を、3次元の点/線グラフにプロットするサンプルプログラムです。
配列を2Dグラフにプロットする

座標値配列の内容を、2次元グラフにプロットするサンプルプログラムです。
ファイルを3Dグラフにプロットする(点/線グラフ)

座標値ファイルの内容を、3次元の点/線グラフにプロットするサンプルプログラムです。
ファイルを2Dグラフにプロットする

座標値ファイルの内容を、2次元グラフにプロットするサンプルプログラムです。
スポンサーリンク

この階層の目次
[ 前へ | 目次 | 次へ ]
お知らせ

Vnanoのスクリプトエンジンアーキテクチャ解説1: 全体像
2019年05月28日 - RINEARNでは現在、 アプリケーション組み込み用スクリプトエンジン「 Vnano 」を、オープンソースで開発中です。今回は、このスクリプトエンジンのアーキテクチャ面を掘り下げて解説します。

リニアンプロセッサー nano の先行開発版やソースコードリポジトリを公開
2019年04月16日 - オープンソースで開発中の小型プログラム関数電卓ソフト、「 リニアンプロセッサー nano 」の先行開発版やソースコードリポジトリを公開しました。概要と使用方法、ビルド方法などについて解説します。

各ソフトウェアの最新版を一括でリリース、OpenJDKのJava実行環境(JRE)に対応
2019年03月06日 - RINEARNでは3月6日に、主要なソフトウェアの最新版を一括でリリースしました。今回のアップデートには、以前お知らせした、OpenJDKで生成したJREへの対応が含まれています。その概要等をお知らせします。

新着
連番ファイルから3Dグラフをアニメーション描画するツール

フォルダ内の連番データファイルを読み込み、3Dグラフを高速で連続描画して、アニメーションさせるツールです。
2019年06月03日
連番ファイルから2Dグラフをアニメーション描画するツール

フォルダ内の連番データファイルを読み込み、2Dグラフを高速で連続描画して、アニメーションさせるツールです。
2019年05月24日
[公式ガイドサンプル] 立体モデルを生成して3D空間に配置する

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを生成し、3D空間に配置します。
2019年05月21日
[公式ガイドサンプル] ポリゴンを生成して3D空間に配置する

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体の基本的な構成要素となるポリゴンを生成し、3D空間に配置します。
2019年05月20日
[公式ガイドサンプル] CSVファイルにデータを書き出し&読み込んで、複雑な3次元曲面のグラフを描く(魔法陣形)

「VCSSLスタートアップガイド」内のサンプルコードです。CSVファイルにデータを書き出し、さらにそれを読み込んで、魔法陣のような3次元曲面のグラフを描画します。
2019年05月17日
開発元Twitterアカウント

スポンサーリンク