Last updated: 2016 -2014. Kajiyama                    [ 目次に戻る ]

直線の座標をランダムに変え,直線を繰返し描く


  1. ランダム・乱数

    ・Processingリファレンス - ランダム

    パーリンノイズ Perlin noise -wikipedia

    機能processingの関数
    乱数を生成random();
    乱数の種を設定するrandomSeed();
    パーリンノイズを生成noise(); noise(x) noise(x, y) noise(x, y, z)
    ノイズの種を設定noiseSeed();
    ノイズの性質を設定noiseDetail();


  2. ランダム関数 random

    1. プログラムでランダムな動きをさせたいときに使う数値計算の関数にrandom ( ) がある.

    2. 一般に,random関数は0から1の値をランダムに作り出す.Processingでの使用方法は,

      x = random(1) と記述すると,xは0から1の値を作り出す.x = random(100) では,xは0から100の値を作り出す.

      x = random(-10, -10) と記述すると,xは-10から10の値を作り出す.

      x = random(250, 550) と記述すると,xは250から550の値を作り出す.

    3. random 関数で作り出す値は,整数でなく実数なので実数型で変数を定義する.float x = random(-10,-10)


  3. 直線を描く

    ・次のソースファイルをコピーして,Processing開発環境のエディタ領域に貼り付ける.

    ソースファイル
    //ファイル名:sketch_xxxxxxxxxx.pde 
    //直線を一本一本指定して描く
    
    void setup ( ) {
      size(500, 500); //キャンバスの大きさ
      background(255);//キャンバスの背景色を白
    }
    
    void draw( ) {
    
      stroke(255,0,0); 
     line(100, 100, 100, 400);
      stroke(0,0,255); 
     line(150, 100, 150, 400);
      stroke(0,255,255); 
     line(200, 100, 200, 400);
      stroke(0,255,0); 
     line(250, 100, 250, 400);
      stroke(100,150,200); 
     line(300, 100, 300, 400);
      stroke(20,120,30); 
     line(350, 100, 350, 400);
      stroke(180,20,30); 
     line(400, 100, 400, 400);
      
    //save("st_line_1a.jpg");// 実行結果を画像形式で保存
    }
    
    実行結果


  4. 直線のx座標,色をランダムな変数にし,ランダムに直線を描く

    ・次のソースファイルをコピーして,Processing開発環境のエディタ領域に貼り付ける.

    ソースファイル
    //ファイル名:sketch_xxxxxxxxxx.pde 
    //直線を描く
    
    void setup ( ) {
      size(500, 500); //キャンバスの大きさ
      background(255);//キャンバスの背景色 白
    }
    
    void draw( ) {
    //色のRGBをランダムに作り出す
    float r=random(0,255);// 0≦r≦255
    float g=random(0,255);// 0≦g≦255
    float b=random(0,255);// 0≦b≦255
    
    //x座標の位置をランダムに作り出す
    float x=random(50,450);// 50≦x≦450
    //float y=random(50,450);// 50≦y≦450
    
      stroke(r,g,b); //ランダムな線の色
      line(x, 100, x, 400);//ランダムな位置に直線を描く
    
    //save("st_line_1b.jpg");// 実行結果を画像形式で保存
    }
    
    実行結果


  5. 直線のx1,x2座標,色をランダムな変数にし,ランダムに直線を描く

    ・次のソースファイルをコピーして,Processing開発環境のエディタ領域に貼り付ける.

    ソースファイル
    //ファイル名:sketch_xxxxxxxxxx.pde 
    //直線を描く
    
    void setup ( ) {
    
      size(500, 500); //キャンバスの大きさ
      background(255);//キャンバスの背景色 白
    }
    
    void draw( ) {
    
    //色のRGBをランダムに作り出す
    float r=random(0,255);// 0≦r≦255
    float g=random(0,255);// 0≦g≦255
    float b=random(0,255);// 0≦b≦255
    
    //座標の位置をランダムに作り出す
    float x1=random(50,450);// 50≦x1≦450
    float xd=random(-20,20);// -20≦xd≦20
    
      stroke(r,g,b); //ランダムな線の色
      line(x1, 100, x1+xd, 400);//ランダムな位置に直線を描く
    
    //save("st_line_1c.jpg");// 実行結果を画像形式で保存
    //noLoop();//繰返し処理を止める
    }
    
    実行結果


  6. 直線のx1,x2座標,色をランダムな変数にし,ランダムに直線を描く

    ・次のソースファイルをコピーして,Processing開発環境のエディタ領域に貼り付ける.

    ソースファイル
    //ファイル名:sketch_xxxxxxxxxx.pde 
    //直線を描く
    
    void setup ( ) {
      size(500, 500); //キャンバスの大きさ
      background(255);//キャンバスの背景色 白
    }
    
    void draw( ) {
    
    //色のRGBをランダムに作り出す
    float r=random(0,255);// 0≦r≦255
    float g=random(0,255);// 0≦g≦255
    float b=random(0,255);// 0≦b≦255
    
    //座標の位置をランダムに作り出す
    float x1=random(0,500);// 0≦x1≦500
    float x2=random(0,500);// 0≦x2≦500
    float y1=random(0,500);// 0≦y1≦500
    float y2=random(0,500);// 0≦y2≦500
    
      stroke(r,g,b); //ランダムな線の色
      line(x1, y1, x2, y2);//ランダムな位置に直線を描く
    
    //save("st_line_1d.jpg");// 実行結果を画像形式で保存
    //noLoop();//繰返し処理を止める
    }
    
    実行結果

[ 目次に戻る ]