1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

p5.jsAdvent Calendar 2021

Day 2

【p5.js】『Generative Design with p5.js』P_1_2_1_01 で登場する関数 part.1 int()

Last updated at Posted at 2021-12-01

この記事は Qiita p5js アドベントカレンダー2日目の記事です。

これはなに

書籍『Generative Design with p5.js』P_1_2_1_01に登場する関数をまとめた記事です。

int()

int型以外のものを整数値に変えてくれる関数。
他の言語でもよくみると思います。

Type

int(n: string | boolean | number, radix?: number): number;

リファレンスより

Converts a boolean, string, or float to its integer representation. When an array of values is passed in, then an int array of the same length is returned.

boolean, string, floatを整数表現に変換します。値の配列が渡された場合は、同じ長さのint配列が返されます。(DeepL翻訳)

試してみる

console.logでそれぞれ出力してみました。
配列の場合はそれぞれ対応したint型の配列になってくれるみたい。

console.log(int("aaa")) => NaN
console.log(int("123")) => 123
console.log(int(true)) => 1
console.log(int([true, false])) => [1, 0]
console.log(int([true, false, "123"])) => [1, 0, 123]

どんなときに使えそうか

P_1_2_1_01のコードをみると、mapの結果をラップしています。

tileCountX = int(map(mouseX, 0, width, 2, 100));

map()はnumber型を返すそうなので、
なぜintを使用しているかはmapの中身を調べないとわかりませんが(ごめんなさい)、
想定できることは浮動少数点を整数に変えようとしているのでは?
と思いました。
tileCountXを分数の分母にしている記述があるためです。

var tileWidth = width / tileCountX;

どんな言語でもint()のような関数は用意されていそうですが、
p5では座標やカラーコードで数値を多様するため、より登場頻度は増えそうですね。

参考

p5.js reference | int()
『Generative Design with p5.js』P_1_2_1_01

1
0
0

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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?