LoginSignup
3

More than 5 years have passed since last update.

「プログラムでシダを描画する」をLabVIEWで描画する

Last updated at Posted at 2014-06-16

はじめに

色んな言語でプログラムでシダを描画するのが流行ってるようなのでLabVIEWでもやってみました。

元ネタ

十進BASICでシダの葉プログラムを作ってみた(笑)
https://www.youtube.com/watch?v=KgvTw3aLacQ

[Proccessing]プログラムでシダを描画する - 強火で進め
http://d.hatena.ne.jp/nakamura001/20140505/1399316565

「プログラムでシダを描画する」一覧
http://qiita.com/qt-luigi/items/b22204c7ef73260324bd

実行結果

2014-06-16 03_11_37-main.vi フロントパネル 「shida.lvproj_マイ コンピュータ」.png

ちゃんと描けた!
LabVIEWだと計測制御メインなのでグラフプロットが殆ど。この手のグラフィックを描くのは新鮮ですw

コード

再帰関数はVIスニペットでは無理なのでGithubにソースを上げました。
https://github.com/ktyubeshi/labview_shida

main.vi

main.vi.png

f.vi

※再入実行(再帰呼び出し)を許可する設定にしておく

f.vi.png

f.vi .png

w.vi

w1x~w4yは纏めました。

wd.png

wd2.png

wd4.png

wd8.png

wd5.png

wd3.png

wd6.png

wd7.png

課題

とりあえずLabVIEWに標準で用意されている2Dピクチャ表示器とそれ用の関数を使ってやってみましたが、これらの表示器や関数の入出力データに使われているピクチャ型というデータタイプはビットマップデータではなく、描画命令の羅列を保持します。描画は遅いし繰り返し実行するとさらに遅くなります(ドットを描画する命令を追記していくためにメモリの動的確保が頻発してそう)
2D配列でビットマップデータを扱うようにすれば劇的に高速化するはず

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3