Processingで何かを作っていて、現在時刻を表示したいことがたまにあると思います。そうでなくても、現在時刻によって変化する作品を作ることはあると思います。それなので今回は例としてデジタル時計を作ってみます。

 使う関数は、hour(),minute(),second()です。その名の通りこれらはその瞬間の"時間""分""秒"を返してくれます。これを使ってデジタル時計を作ると↓のようになります。

スクリーンショット 2020-12-31 004041

 前に紹介したフォントの追加方法(http://blog.livedoor.jp/chisato_tofu/archives/25772956.html)を使っています。一応使ったプログラムを下に貼っておきます。適当に書いたのできれいじゃないのは許してください。
  1. PFont D14;
  2. String t;
  3. int s;
  4. int m;
  5. int h;

  6. void setup() {
  7.   size(320, 80);
  8.   strokeWeight(5);
  9.   colorMode(HSB, 360, 255, 255, 255);
  10.   D14 = createFont("DSEG14Modern-Regular.ttf", 60);
  11. }
  12. void draw() {
  13.   background(0);
  14.   textFont(D14);
  15.   stroke(0, 0, 255, 255);
  16.   fill(0, 0, 255, 255);
  17.   s = second();
  18.   m = minute();
  19.   h = hour();
  20.   if (h < 10) {
  21.     t = "0" + str(h);
  22.   }else{
  23.     t = str(h);
  24.   }
  25.   if (m < 10) {
  26.     t = t + ":" + "0" + str(m);
  27.   }else{
  28.     t = t + ":" + str(m);
  29.   }
  30.   if (s < 10) {
  31.     t = t + ":" + "0" + str(s);
  32.   }else{
  33.     t = t + ":" + str(s);
  34.   }
  35.   text(t, 0, 70);
  36. }