見出し画像

Max8 Max/msp 入門 10

fendoapです。



動画です。


後半







randomとdrunk

  
 randomオブジェクトは一定範囲の整数値をランダムに出力します。drunkオブジェクトは最大値とステップサイズを決めて一定ステップサイズでランダムに値を千鳥足のように移動します。


ランダムな円

  
 ランダムにカラフルな円を描画しています。
paintovalは (スタートx,スタートy,ゴールx,ゴールy,RBGカラー)です。-5 -5 +5 +5で円の大きさを規定しています。
  


drunkによる描画

 
 同じように四角を描画していますがdrunkにより位置が散らばらず描画されています。


値を直接randomにより出力するのではなく

  
  値を直接出力するのではなくrandom 10として0~9の値から調整しています。これにより10×10のグリッド上に値が分布します。ある程度状況を制御する方法の一つです。

  


手続き型描画

 
  描画を題材に制御を学びます。 

カウンターを使って描く 

  example_1は繰り返し円を描いていきます。

  

サブパッチの中身はこのようになっています。
 4つの異なるcounterが使用されています。一つは描画位置とサイズを設定するもので3つは色を設定するものです。

一番左のcounterがメインで0~767までをカウントします。描画位置は剰余オブジェクトと*10 +10で計算されて32×32のグリッドとなります。

 

scaleを使って描く

 example_2はリサージュパターンを描画します。



サブパッチの中身はこうなっています。

numberボックスはカウンターの最大値とスケールの最大値を同値に設定します。カウンターはmetroから一定間隔で増加するので周期を変更するような意味合いがあります。scaleは0~2πまでにスケーリングされsinに代入されるので正弦波を描きます。-1~1の範囲をマッピング位置にスケーリングします。


lineを使って描く

 
example_3はマウスの位置に合わせて円が回転します。



サブパッチの中身は以下のようになっています。lcdからマウス位置を取得します。 lineを使い1000msで値まで移動するようにします。これにより滑らかな数値の移動になります。cartopolを使用してx yを距離と角度に変更します。
packでリストを作成しメッセージに送り値を代入します。


よろしければサポートお願いします!