blog.monophile.net

Takaaki Yamamoto

東京工業大学において計算機科学と応用数学を学び、 情報科学芸術大学院大学[IAMAS]においてメディア表現を専攻し修了。 digitiminimi Inc. において、インフラエンジニアとして生計をたててている。

各種環境の構築と管理を承ります。

  • 仮想環境: Openstack, GCP, AWS, Azure, ...
  • アプリケーション: WordPress, GitLab, Redmine, ...

List

SuperColliderで別画面に文字情報を吐き出す

概要

SuperColliderでオブジェクトの情報を吐き出すための別画面を出す方法。

code

(
  var window, rect, func, fgcolor = Color.white, bgcolor = Color.black, font = Font("Monaco", 12), fps = 30;
  window = Window.new.front;
  window.view.background = bgcolor;
  rect = Rect.fromPoints(0@0, window.bounds.extent);
  func = { "window.bounds:%\nwindow.width:%\nwindow.height:%".format(window.bounds,window.bounds.width, window.bounds.height).drawInRect(rect, font, fgcolor);};
  window.drawFunc = Routine( { loop { func.(); 0.yield; } });
  { while {window.isClosed.not} {window.refresh; (1.0/fps).wait; } }.fork(AppClock);
)

実行

実行すると以下の様な画面が30fpsで更新されます。 funcを好きな様に変更することによって、リアルタイムなオブジェクトの状態をみれると思います。