INDUSTRIES

自動車

航空・宇宙

金融

ゲーム

メドテック

IoT

デジタルプロダクト

USE CASES

エンタープライズ向け

個人向け

チーム向け

教育向け

KEY FEATURES

ハードウェア・システム統合

Beta

ProtoPie MCP

マルチデバイス・プロトタイピング

インタラクション・ロジック

開発者へのハンドオフ

ProtoPie AI

New

ユーザーテスト

PLUGINS

Figma

Sketch

Adobe XD

INSIGHTS & INSPIRATION

ブログ

eBook

カスタマーストーリー

イベント&ウェビナー

ProtoPie ギャラリー

PRODUCT LEARNING & SUPPORT

ProtoPieスクール

ProtoPieをダウンロード

製品ドキュメント

コミュニティ

INDUSTRIES

自動車

航空・宇宙

金融

ゲーム

メドテック

IoT

デジタルプロダクト

USE CASES

エンタープライズ向け

個人向け

チーム向け

教育向け

KEY FEATURES

ハードウェア・システム統合

Beta

ProtoPie MCP

マルチデバイス・プロトタイピング

インタラクション・ロジック

開発者へのハンドオフ

ProtoPie AI

New

ユーザーテスト

PLUGINS

Figma

Sketch

Adobe XD

INSIGHTS & INSPIRATION

ブログ

eBook

カスタマーストーリー

イベント&ウェビナー

ProtoPie ギャラリー

PRODUCT LEARNING & SUPPORT

ProtoPieスクール

ProtoPieをダウンロード

製品ドキュメント

コミュニティ

Menu

関数

関数は、特定のタスクを実行するための既製ツールのよう​​なものです。データを入力として受け取り、処理して、結果を返します。

関数ができることの例をいくつかご紹介します:

  • テキストの文字数をカウントする。

  • テキスト内の特定の単語を検索する。

  • 2つの数値のうち最も小さい数値を判定する。

ProtoPieの関数には、次のような特定の構造があります:

  • function(argument: TYPE) → result: TYPE

  • function(argument1: TYPE, argument2: TYPE) → result: TYPE

  • function(argument1: TYPE, argument2: TYPE, argument3: TYPE) → result: TYPE

関数は通常、1つまたは複数の引数(データ)を入力として使用します。これらは、関数がタスクを実行するために使用する値です。引数および結果は、常に特定のタイプの値になります。タイプには、テキスト、数値、カラーなどがあります。

選択できるカテゴリは以下の通りです:

テキスト

concat(source1: TEXT, source2: TEXT)

TEXT

Combine two separate texts into one.

Example: concat("hello", "world")

"helloworld"

indexOf(source: TEXT, searchValue: TEXT)

NUMBER

Find the starting position of a keyword in a text. If the keyword isn't present in the text, the returned value is -1.

Example: indexOf("hello world", "world")

6

Example: indexOf("hello world", "hello")

0

Example: indexOf("hello world", "goodbye")

-1

Use indexOf for use cases like email validation. See use case example.

length(source: TEXT)

NUMBER

Count the number of characters in a text.

Example: length("hello")

5

Example: length("helloworld")

10

Example: length("hello world")

11

Use length for use cases like password validation. See use case example.

lowerCase(source: TEXT)

TEXT

Convert any text from uppercase to lowercase

Example: lowerCase("Hello")

"hello"

upperCase(source: TEXT)

TEXT

Convert any text from lowercase to UPPERCASE.

Example: upperCase("Hello")

"HELLO"

left(source: TEXT, count: NUMBER)

TEXT

Extract a part of a text from the left side based on a specific number of characters.

Example: left("hello", 3)

"hel"

right(source: TEXT, count: NUMBER)

TEXT

Extract a part of a text from the left side based on a specific number of characters.

Example: right("hello", 2)

"lo"

lpad(source: TEXT, length: NUMBER, pad: TEXT)

TEXT

Left-pad a text with another text, to a specific length.

Example: lpad("5", 2, "0")

"05"

Example: lpad("5", 4, "0")

"0005"

rpad(source: TEXT, length: NUMBER, pad: TEXT)

TEXT

Right-pad a text with another text, to a specific length.

Example: rpad("5", 2, "1")

"51"

Example: rpad("5", 6, "1")

"511111"

repeat(source: TEXT, count: NUMBER)

TEXT

Repeat a text a specific number of times.

Example: repeat("hello", 2)

"hellohello"

Example: repeat("hello", 3)

"hellohellohello"

replace(source: TEXT, from: TEXT, to: TEXT)

TEXT

Replace a part of a text with another text.

Example: replace("helloworld", "world", "protopie")

"helloprotopie"

Example: replace("goodbye, John", "goodbye", "thank you")

"thank you, John"

trim(source: TEXT)

TEXT

Remove whitespaces on both sides of a text.

Example: trim(" helloworld")

"helloworld"

Example: trim(" helloworld ")

"helloworld"

ltrim(source: TEXT)

TEXT

Remove whitespace from the left side of a text.

Example: ltrim(" helloworld ")

"helloworld "

rtrim(source: TEXT)

TEXT

Remove whitespace from the right side of a text.

Example: ltrim(" helloworld ")

" helloworld"

regexextract(source: TEXT, regular expression: TEXT)

TEXT

Extracts the first substrings of a text that match the provided regular expression.

Example: regexextract("Google Doc 101", "[0-9]+")

"101"

Example:

regexextract("The price today is $826.25", "[0-9]*\.[0-9]+[0-9]+")

"826.25"

regexreplace(source: TEXT, regular expression: TEXT, replacement: TEXT)

TEXT

Replaces part of a text string with a different text string using regular expressions.

Example: regexreplace("Google Doc 101", "[0-9]+", "777")

"Google Doc 777"

Example:

regexreplace("The price today is $826.25", "[0-9]*\.[0-9]+[0-9]+", "315.75")

"The price is $315.75"

parseJson(source: TEXT, key: TEXT)

TEXT

Parses a valid JSON string and returns the corresponding value.

Example:

parseJson("{\"name\":\"John\", \"age\":30, \"car\":null}", "age")

"30"

Example:

parseJson("{\"name\":\"John\", \"age\":30, \"car\":null}", "name")

"John"

concat(source1: TEXT, source2: TEXT)

TEXT

Combine two separate texts into one.

Example:

concat("hello", "world")

"helloworld"

indexOf(source: TEXT, searchValue: TEXT)

NUMBER

Find the starting position of a keyword in a text. If the keyword isn't present in the text, the returned value is -1.

Example:

indexOf("hello world", "world")

6

Example:

indexOf("hello world", "hello")

0

Example:

indexOf("hello world", "goodbye")

-1

Use indexOf for use cases like email validation. See use case example.

length(source: TEXT)

NUMBER

Count the number of characters in a text.

Example: length("hello")

5

Example: length("helloworld")

10

Example: length("hello world")

11

Use length for use cases like password validation. See use case example.

lowerCase(source: TEXT)

TEXT

Convert any text from uppercase to lowercase

Example: lowerCase("Hello")

"hello"

upperCase(source: TEXT)

TEXT

Convert any text from lowercase to UPPERCASE.

Example: upperCase("Hello")

"HELLO"

left(source: TEXT, count: NUMBER)

TEXT

Extract a part of a text from the left side based on a specific number of characters.

Example: left("hello", 3)

"hel"

right(source: TEXT, count: NUMBER)

TEXT

Extract a part of a text from the left side based on a specific number of characters.

Example: right("hello", 2)

"lo"

lpad(source: TEXT, length: NUMBER, pad: TEXT)

TEXT

Left-pad a text with another text, to a specific length.

Example: lpad("5", 2, "0")

"05"

Example: lpad("5", 4, "0")

"0005"

rpad(source: TEXT, length: NUMBER, pad: TEXT)

TEXT

Right-pad a text with another text, to a specific length.

Example: rpad("5", 2, "1")

"51"

Example: rpad("5", 6, "1")

"511111"

repeat(source: TEXT, count: NUMBER)

TEXT

Repeat a text a specific number of times.

Example: repeat("hello", 2)

"hellohello"

Example: repeat("hello", 3)

"hellohellohello"

replace(source: TEXT, from: TEXT, to: TEXT)

TEXT

Replace a part of a text with another text.

Example: replace("helloworld", "world", "protopie")

"helloprotopie"

Example:

replace("goodbye, John", "goodbye", "thank you")

"thank you, John"

trim(source: TEXT)

TEXT

Remove whitespaces on both sides of a text.

Example:

trim(" helloworld")

"helloworld"

Example:

trim(" helloworld ")

"helloworld"

ltrim(source: TEXT)

TEXT

Remove whitespace from the left side of a text.

Example:

ltrim(" helloworld ")

"helloworld "

rtrim(source: TEXT)

TEXT

Remove whitespace from the right side of a text.

Example:

ltrim(" helloworld ")

" helloworld"

regexextract(source: TEXT, regular expression: TEXT)

TEXT

Extracts the first substrings of a text that match the provided regular expression.

Example: regexextract("Google Doc 101", "[0-9]+")

"101"

Example:

regexextract("The price today is $826.25", "[0-9]*\.[0-9]+[0-9]+")

"826.25"

regexreplace(source: TEXT, regular expression: TEXT, replacement: TEXT)

TEXT

Replaces part of a text string with a different text string using regular expressions.

Example: regexreplace("Google Doc 101", "[0-9]+", "777")

"Google Doc 777"

Example:

regexreplace("The price today is $826.25", "[0-9]*\.[0-9]+[0-9]+", "315.75")

"The price is $315.75"

parseJson(source: TEXT, key: TEXT)

TEXT

Parses a valid JSON string and returns the corresponding value.

Example:

parseJson("{\"name\":\"John\", \"age\":30, \"car\":null}", "age")

"30"

Example:

parseJson("{\"name\":\"John\", \"age\":30, \"car\":null}", "name")

"John"

例として、parseJson(var, "key")について考えてみましょう。ここでは、varはJSON文字列を格納するテキスト変数であり、"key"は解析するためのキーです。後者は、. (ドット) 記法を介して入れ子になったキーの呼び出しや、配列のようなオブジェクトへのシンプルな参照をサポートします。

parseJson関数を使用すると、ProtoPieでの複雑なデータ構造の操作が大幅に簡素化されます。さらに、ほとんどのAPIレスポンスはJSON形式であるため、Pie内でparseJsonを使用できれば、APIの連携が非常にスムーズになります。

parseJson関数を使用すると、以下のことができます:

  • ProtoPie ConnectのBridgeアプリを介して、JSON文字列をPieに送信する(例:メッセージ: “AutomobileSignal”, 値: “json string”)。

  • 受信 (Receive) トリガーを介して、Pieの変数内に値を格納する。

  • JSON文字列内のデータ値を使用する。

  • 詳細については、こちらのPieの例をご覧ください。

数学

pow(source: NUMBER, exponent: NUMBER)

NUMBER

Calculate the result of the first number raised to the power of the second number.

Example: pow(2,3)

8

sqrt(source: NUMBER)

NUMBER

Calculate the square root of a number. This doesn't work for negative numbers.

Example: sqrt(9)

3

Example: sqrt(2)

1.41

min(source1: NUMBER, source2: NUMBER)

NUMBER

Extract the smallest of two numbers.

Example: min(0, 1)

0

max(source1: NUMBER, source2: NUMBER)

NUMBER

Extract the largest of two numbers.

Example: max(0, 1)

1

abs(value: NUMBER)

NUMBER

Return the absolute value of a number. In practice, this comes down to removing the negative sign in front of a number.

Example: abs(-1)

1

Example: abs(5 - 25)

20

sign(value: NUMBER)

NUMBER

Check if a number is positive or negative. Return 1 if a number is positive. Return -1 if a number is negative. Return 0 if a number is 0.

Example: sign(5)

1

Example: sign(-10)

-1

Example: sign(0)

0

round(source: NUMBER)

NUMBER

Return the rounded value of a number.

Example: round(3.49)

3

Example: round(1.5)

2

Example: round(6.79)

7

floor(source: NUMBER)

NUMBER

Return the nearest whole number down.

Example: floor(1.5)

1

Example: floor(2.99)

2

ceil(source: NUMBER)

NUMBER

Return the nearest whole number up.

Example: ceil(1.5)

2

Example: ceil(4.3)

5

random()

NUMBER

a random decimal number between 0 and 1.

Example: random()

a random decimal number between 0 and 1

random(min: NUMBER, max: NUMBER)

NUMBER

Return a decimal number randomly between two given numbers.

Example: random(1, 5)

a random decimal number between 1 and 5

randomInt(min: NUMBER, max: NUMBER)

NUMBER

Return a whole number randomly between two given numbers.

Example: randomInt(1, 5)

a random whole number between 1 and 5

radians(degrees: NUMBER)

NUMBER

Convert degrees to radians.

Example: radians(180)

3.14 = π

Example: radians(90)

1.57 = π / 2

degrees(radians: NUMBER)

NUMBER

Convert radians to degrees.

Example: degrees($pi)

180

Example: degrees($pi / 2)

90

sin(radians: NUMBER)

NUMBER

Calculate the sine of a number in radians.

Example: sin($pi / 2)

1

Example: sin($pi / 6)

0.5

cos(radians: NUMBER)

NUMBER

Calculate the cosine of a number in radians.

Example: cos(0)

1

Example: cos($pi / 2)

0

tan(radians: NUMBER)

NUMBER

Calculate the tangent of a number in radians.

Example: tan($pi / 4)

1

Example: tan(0)

0

asin(x: NUMBER)

NUMBER

Calculate the arcsine (in radians) of x.

Example: asin(1)

1.57 = π / 2

Example: asin(0.5)

0.52 = π / 6

acos(x: NUMBER)

NUMBER

Calculate the arccosine (in radians) of x.

Example: acos(1)

0

Example: acos(0)

1.57 = π / 2

atan(x: NUMBER)

NUMBER

Calculate the arctangent (in radians) of x.

Example: atan(1)

0.79 = π / 4

Example: atan(0)

0

atan2(y: NUMBER, x: NUMBER)

NUMBER

Calculate the arctangent (in radians) of x and y, also known as the angle in the Euclidean plane.

Example: atan2(1, 0)

1.57 = π / 2

Example: atan2(1, 1)

0.79 = π / 4

pow(source: NUMBER, exponent: NUMBER)

NUMBER

Calculate the result of the first number raised to the power of the second number.

Example: pow(2,3)

8

sqrt(source: NUMBER)

NUMBER

Calculate the square root of a number. This doesn't work for negative numbers.

Example: sqrt(9)

3

Example: sqrt(2)

1.41

min(source1: NUMBER, source2: NUMBER)

NUMBER

Extract the smallest of two numbers.

Example: min(0, 1)

0

max(source1: NUMBER, source2: NUMBER)

NUMBER

Extract the largest of two numbers.

Example: max(0, 1)

1

abs(value: NUMBER)

NUMBER

Return the absolute value of a number. In practice, this comes down to removing the negative sign in front of a number.

Example: abs(-1)

1

Example: abs(5 - 25)

20

sign(value: NUMBER)

NUMBER

Check if a number is positive or negative. Return 1 if a number is positive. Return -1 if a number is negative. Return 0 if a number is 0.

Example: sign(5)

1

Example: sign(-10)

-1

Example: sign(0)

0

round(source: NUMBER)

NUMBER

Return the rounded value of a number.

Example: round(3.49)

3

Example: round(1.5)

2

Example: round(6.79)

7

floor(source: NUMBER)

NUMBER

Return the nearest whole number down.

Example: floor(1.5)

1

Example: floor(2.99)

2

ceil(source: NUMBER)

NUMBER

Return the nearest whole number up.

Example: ceil(1.5)

2

Example: ceil(4.3)

5

random()

NUMBER

a random decimal number between 0 and 1.

Example: random()

a random decimal number between 0 and 1

random(min: NUMBER, max: NUMBER)

NUMBER

Return a decimal number randomly between two given numbers.

Example: random(1, 5)

a random decimal number between 1 and 5

randomInt(min: NUMBER, max: NUMBER)

NUMBER

Return a whole number randomly between two given numbers.

Example: randomInt(1, 5)

a random whole number between 1 and 5

radians(degrees: NUMBER)

NUMBER

Convert degrees to radians.

Example: radians(180)

3.14 = π

Example: radians(90)

1.57 = π / 2

degrees(radians: NUMBER)

NUMBER

Convert radians to degrees.

Example: degrees($pi)

180

Example: degrees($pi / 2)

90

sin(radians: NUMBER)

NUMBER

Calculate the sine of a number in radians.

Example: sin($pi / 2)

1

Example: sin($pi / 6)

0.5

cos(radians: NUMBER)

NUMBER

Calculate the cosine of a number in radians.

Example: cos(0)

1

Example: cos($pi / 2)

0

tan(radians: NUMBER)

NUMBER

Calculate the tangent of a number in radians.

Example: tan($pi / 4)

1

Example: tan(0)

0

asin(x: NUMBER)

NUMBER

Calculate the arcsine (in radians) of x.

Example: asin(1)

1.57 = π / 2

Example: asin(0.5)

0.52 = π / 6

acos(x: NUMBER)

NUMBER

Calculate the arccosine (in radians) of x.

Example: acos(1)

0

Example: acos(0)

1.57 = π / 2

atan(x: NUMBER)

NUMBER

Calculate the arctangent (in radians) of x.

Example: atan(1)

0.79 = π / 4

Example: atan(0)

0

atan2(y: NUMBER, x: NUMBER)

NUMBER

Calculate the arctangent (in radians) of x and y, also known as the angle in the Euclidean plane.

Example: atan2(1, 0)

1.57 = π / 2

Example: atan2(1, 1)

0.79 = π / 4

カラー

color(red: NUMBER, green: NUMBER, blue: NUMBER)

COLOR

RGB値に基づいてカラー値(16進数カラーコード)を返します。

Example: color(255, 255, 255)

#FFFFFF

Example: color(255, 102, 97)

#FF6661

red(source: COLOR)

NUMBER

16進数カラーコードの赤のRGBパラメータを返します。

Example: red(#FF0000)

255

Example: red(#008000)

0

Example: red(#0000FF)

0

green(source: COLOR)

NUMBER

16進数カラーコードの緑色のRGBパラメータを返します。

Example: green(#FF0000)

0

Example: green(#008000)

128

Example: green(#0000FF)

0

blue(source: COLOR)

NUMBER

16進数カラーコードの青(RGB)のパラメーターを返します。

Example: blue(#FF0000)

0

Example: blue(#008000)

0

Example: blue(#0000FF)

255

color(red: NUMBER, green: NUMBER, blue: NUMBER)

COLOR

RGB値に基づいてカラー値(16進数カラーコード)を返します。

Example: color(255, 255, 255)

#FFFFFF

Example: color(255, 102, 97)

#FF6661

red(source: COLOR)

NUMBER

16進数カラーコードの赤のRGBパラメータを返します。

Example: red(#FF0000)

255

Example: red(#008000)

0

Example: red(#0000FF)

0

green(source: COLOR)

NUMBER

16進数カラーコードの緑色のRGBパラメータを返します。

Example: green(#FF0000)

0

Example: green(#008000)

128

Example: green(#0000FF)

0

blue(source: COLOR)

NUMBER

16進数カラーコードの青(RGB)のパラメーターを返します。

Example: blue(#FF0000)

0

Example: blue(#008000)

0

Example: blue(#0000FF)

255

データ型変換

number(source: TEXT)

NUMBER

Convert a text to a number. This doesn't work if the text cannot be converted to a number.

Example: number("1234")

1234

Example: number("94.27")

94.27

text(source: NUMBER)

TEXT

Convert a number to a text.

Example: text(1234)

"1234"

Example: text(94.27)

"94.27"

Example: text(1 + 3)

"4"

format(source: NUMBER, format: TEXT)

TEXT

Convert a number to a text with a certain format. # is a placeholder for whole numbers whereas 0 represents the fractional part.

Example: format(1234.567, "#")

"1235"

Example: format(1234.567, "#,###")

"1,235"

Example: format(1234.567, "#.###,00")

"1.234,57"

Example: format(1234.567, "#,##.00")

"12,34.57"

Example: format(1234.567, "#,###.00")

"1,234.57"

color(source: TEXT)

COLOR

Convert a text to a color value (hex color code). This doesn't work if the text doesn't have a hex color code structure.

Example: green("#FFFFFF")

#FF0000

number(source: TEXT)

NUMBER

Convert a text to a number. This doesn't work if the text cannot be converted to a number.

Example: number("1234")

1234

Example: number("94.27")

94.27

text(source: NUMBER)

TEXT

Convert a number to a text.

Example: text(1234)

"1234"

Example: text(94.27)

"94.27"

Example: text(1 + 3)

"4"

format(source: NUMBER, format: TEXT)

TEXT

Convert a number to a text with a certain format. # is a placeholder for whole numbers whereas 0 represents the fractional part.

Example:

format(1234.567, "#")

"1235"

Example:

format(1234.567, "#,###")

"1,235"

Example:

format(1234.567, "#.###,00")

"1.234,57"

Example:

format(1234.567, "#,##.00")

"12,34.57"

Example:

format(1234.567, "#,###.00")

"1,234.57"

color(source: TEXT)

COLOR

Convert a text to a color value (hex color code). This doesn't work if the text doesn't have a hex color code structure.

Example: green("#FFFFFF")

#FF0000

レイヤー

layer(source: TEXT)

LAYER

Refer to a layer.

Use this as part of a formula or a different function.

layer(source: TEXT).property

TEXT or NUMBER

Refer to a layer's property. Learn more about layer properties.

Example: layer("Rectangle 1").x

x-coordinate of the layer called Rectangle 1

Example: layer("Oval 1").opacity

Opacity of the layer called Oval 1

Example: layer("Input 1").text

Text in the input layer called Input 1

parent(layerName: LAYER)

LAYER

Refer to the parent layer, e.g., a container or component.

Use this as part of a formula or a different function.

parent(layerName: LAYER).property

TEXT or NUMBER

Refer to the parent layer's property. Learn more about layer properties.

Example: parent(`Rectangle 1`).x

x-coordinate of Rectangle 1 its parent layer

Example: parent(`Oval 1`).opacity

Opacity of Oval 1 its parent layer

initial(layerName: LAYER, layerProperty: TEXT)

TEXT or NUMBER

Return the initial value (before any interactions) of a specific layer property. Learn more about layer properties.

Example: initial(`Rectangle 1`, "x")

Initial x-coordinate of Rectangle 1

Example: initial(`Oval 1`, "opacity")

Initial opacity of Oval 1

Example: initial(`Input 1`, "text")

Initial text in Input 1

layer(source: TEXT)

LAYER

Refer to a layer.

Use this as part of a formula or a different function.

layer(source: TEXT).property

TEXT or NUMBER

Refer to a layer's property. Learn more about layer properties.

Example: layer("Rectangle 1").x

x-coordinate of the layer called Rectangle 1

Example: layer("Oval 1").opacity

Opacity of the layer called Oval 1

Example: layer("Input 1").text

Text in the input layer called Input 1

parent(layerName: LAYER)

LAYER

Refer to the parent layer, e.g., a container or component.

Use this as part of a formula or a different function.

parent(layerName: LAYER).property

TEXT or NUMBER

Refer to the parent layer's property. Learn more about layer properties.

Example: parent(`Rectangle 1`).x

x-coordinate of Rectangle 1 its parent layer

Example: parent(`Oval 1`).opacity

Opacity of Oval 1 its parent layer

initial(layerName: LAYER, layerProperty: TEXT)

TEXT or NUMBER

Return the initial value (before any interactions) of a specific layer property. Learn more about layer properties.

Example:

initial("Rectangle 1").x

Initial x-coordinate of Rectangle 1

Example:

initial("Oval 1, opacity")

Initial opacity of Oval 1

Example:

initial("Input 1, text")

Initial text in Input 1

相対座標

toLayerX(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a x coordinate relative to the screen into the corresponding x coordinate relative to a container or component. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the x coordinate relative to a container `Container 1` based on the position (100, 200) relative to the screen, use the following function:

toLayerX(`Container 1`, 100, 200)

returns the x coordinate relative to `Container 1` based on the x coordinate `100` relative to the screen.

toLayerY(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a y coordinate relative to the screen into the corresponding y coordinate relative to a container or component. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the y coordinate relative to a container `Container 1` based on the position (100, 200) relative to the screen, use the following function:

toLayerY(`Container 1`, 100, 200)

returns the x coordinate relative to `Container 1` based on the x coordinate `100` relative to the screen.

toScreenX(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a x coordinate relative to a container or component into the corresponding x coordinate relative to the screen. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the x coordinate relative to the screen based on the position (10, 20) relative to a container `Container 1` , use the following function:

toScreenX(`Container 1`, 10, 20)

returns the x coordinate relative to the screen based on the x coordinate `10` relative to `Container 1`.

toScreenY(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a y coordinate relative to a container or component into the corresponding y coordinate relative to the screen. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the y coordinate relative to the screen based on the position (10, 20) relative to a container `Container 1`, use the following function:

toScreenY(`Container 1`, 10, 20)

returns the y coordinate relative to the screen based on the y coordinate `20` relative to `Container 1`.

toLayerX(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a x coordinate relative to the screen into the corresponding x coordinate relative to a container or component. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the x coordinate relative to a container `Container 1` based on the position (100, 200) relative to the screen, use the following function:

Example:

initial("Rectangle 1").x

returns the x coordinate relative to `Container 1` based on the x coordinate `100` relative to the screen.

toLayerY(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a y coordinate relative to the screen into the corresponding y coordinate relative to a container or component. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the y coordinate relative to a container `Container 1` based on the position (100, 200) relative to the screen, use the following function:

Example:

initial("Rectangle 1").x

returns the x coordinate relative to `Container 1` based on the x coordinate `100` relative to the screen.

toScreenX(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a x coordinate relative to a container or component into the corresponding x coordinate relative to the screen. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the x coordinate relative to the screen based on the position (10, 20) relative to a container `Container 1` , use the following function:

Example:

initial("Rectangle 1").x

returns the x coordinate relative to the screen based on the x coordinate `10` relative to `Container 1`.

toScreenY(containerName: LAYER, x: NUMBER, y: NUMBER)

NUMBER

Convert a y coordinate relative to a container or component into the corresponding y coordinate relative to the screen. The coordinates of layers inside a container or component are by default relative to the container or component they are in.

For example, if you want to get the y coordinate relative to the screen based on the position (10, 20) relative to a container `Container 1`, use the following function:

Example:

initial("Rectangle 1").x

returns the y coordinate relative to the screen based on the y coordinate `20` relative to `Container 1`.

時刻と日付

注意:時間および日付関数はISO8601フォーマットに従います。

timeNow()

TEXT

Retrieves the current time information.

Example: timeNow()

17:44:50.123

time(hour: NUMBER, min: NUMBER, sec: NUMBER)

TEXT

Constructs a time object with the provided hour, minute, and second values, presenting the time in the standard "hour:minute:second" format.

Example: time(14, 50, 23)

14:50:23

hour()

NUMBER

Retrieves and returns the hour component of a given time in a 24-hour format. This function takes a time value as input and extracts the hour part, providing it as a numerical value.

Example: hour("17:44:30")

17

minute()

NUMBER

Extracts and returns the minute component of a given time in a 24-hour format.

Example: minute("17:44:30")

44

second()

NUMBER

Extracts and returns the minute component of a given time in a 24-hour format.

Example: second("17:44:30")

30

diffTime()

NUMBER

Calculates the difference between two points in time, returning the duration in hours, minutes, and/or seconds.

Example: diffTime("17:45:30", "18:45:30", "H")

1

Example: diffTime("17:45:30", "18:45:30", "M")

60

Example: diffTime("17:45:30", "18:45:30", "S")

3600

formatTime()

NUMBER

Transforms a time value into a human-readable string, following a specified format pattern.

Example: formatTime("11:44:30", "HHa")

11am

Example: formatTime("11:44:30", "HHam mm")

11am 44

Example: formatTime("11:44:30", "hh:mm a")

11:40 am

dateNow()

NUMBER

Retrieves and returns the current date at the moment of execution.

Example: dateNow()

2023-09-22

date(year: NUMBER, month: NUMBER, day: NUMBER)

TEXT

Constructs a date object using the provided year, month, and day values, returning it in "year-month-day" format.

Example: date(2014, 12, 8)

2014-12-08

year()

NUMBER

Extracts and returns the year component from a "year-month-day" date string.

Example: year("2014-12-08")

2014

month()

NUMBER

Extracts and returns the month component from a "year-month-day" formatted date.

Example: month("2014-12-08")

12

day()

NUMBER

Extracts and returns the day component from a "year-month-day" formatted date.

Example: day("2014-12-08")

8

DiffDate()

NUMBER

Calculates the difference between two dates and returns it as a numerical value based on a specified unit ("Y", "M", "D", "YD", "YM", "MD"). Note: If the "to" date is earlier than the "from" date, the result will be -1.

Example: diffDate("1973-02-24", "1969-05-16", "Y")

-1

Example: diffDate("1973-02-24", "1969-05-16", "M")

-1

Example: diffDate("1973-02-24", "1969-05-16", "D")

-1

Example: diffDate("1969-05-16", "1973-02-24", "Y")

3

Example: diffDate("1969-05-16", "1973-02-24", "M")

45

Example: diffDate("1969-05-16", "1973-02-24", "D")

1380

Example: diffDate("1969-05-16", "1973-02-24", "MD")

8

Example: diffDate("2023-01-01", "2023-02-10", "MD")

9

Example: diffDate("1969-05-16", "1973-02-24", "YM")

9

Example: diffDate("1969-05-16", "1973-02-24", "YD")

284

Example: diffDate("2023-01-01", "2023-02-10", "YD")

40

formatDate()

TEXT

Returns a formatted date string based on the provided date value and format string.

Example: formatDate("2023-06-01", "DD/MM/YYYY")

01/06/2023

Example: formatDate("2023-06-01", "YYYY MMMM dddd")

2023 June Thursday

Example: formatDate("2023-06-01", "MMM DD, YY")

Jun 01, 23

epochtodate(timestamp: NUMBER)

TEXT

Converts a Unix epoch timestamp (ms) into a UTC DateTime representation.

Example: epochtodate (0)

1970-01-01T00:00:00Z

Example: epochtodate (-1)

1969-12-31T23:59:59.999Z

Example: epochtodate (1)

1970-01-01T00:00:00.001Z

Example: epochtodate (1655908429662)

1970-01-01T00:00:00.001Z

epochtodate(timestamp: NUMBER, format: TEXT)

TEXT

Converts a Unix timestamp into a human-readable date/time string based on the specified format.

Example: epochtodate (1695316200000)

2023-09-21T17:10:00Z

Example: epochtodate (1695316200000, "hh:mm")

17:10

timeNow()

TEXT

Retrieves the current time information.

Example: timeNow()

17:44:50.123

time(hour: NUMBER, min: NUMBER, sec: NUMBER)

TEXT

Constructs a time object with the provided hour, minute, and second values, presenting the time in the standard "hour:minute:second" format.

Example: time(14, 50, 23)

14:50:23

hour()

NUMBER

Retrieves and returns the hour component of a given time in a 24-hour format. This function takes a time value as input and extracts the hour part, providing it as a numerical value.

Example: hour("17:44:30")

17

minute()

NUMBER

Extracts and returns the minute component of a given time in a 24-hour format.

Example: minute("17:44:30")

44

second()

NUMBER

Extracts and returns the minute component of a given time in a 24-hour format.

Example: second("17:44:30")

30

diffTime()

NUMBER

Calculates the difference between two points in time, returning the duration in hours, minutes, and/or seconds.

Example:

diffTime("17:45:30", "18:45:30", "H")

1

Example:

diffTime("17:45:30", "18:45:30", "M")

60

Example:

diffTime("17:45:30", "18:45:30", "S")

3600

formatTime()

NUMBER

Transforms a time value into a human-readable string, following a specified format pattern.

Example:

formatTime("11:44:30", "HHa")

11am

Example:

formatTime("11:44:30", "HHam mm")

11am 44

Example:

formatTime("11:44:30", "hh:mm a")

11:40 am

dateNow()

NUMBER

Retrieves and returns the current date at the moment of execution.

Example: dateNow()

2023-09-22

date(year: NUMBER, month: NUMBER, day: NUMBER)

TEXT

Constructs a date object using the provided year, month, and day values, returning it in "year-month-day" format.

Example: date(2014, 12, 8)

2014-12-08

year()

NUMBER

Extracts and returns the year component from a "year-month-day" date string.

Example: year("2014-12-08")

2014

month()

NUMBER

Extracts and returns the month component from a "year-month-day" formatted date.

Example: month("2014-12-08")

12

day()

NUMBER

Extracts and returns the day component from a "year-month-day" formatted date.

Example: day("2014-12-08")

8

DiffDate()

NUMBER

Calculates the difference between two dates and returns it as a numerical value based on a specified unit ("Y", "M", "D", "YD", "YM", "MD"). Note: If the "to" date is earlier than the "from" date, the result will be -1.

Example:

diffDate("1973-02-24", "1969-05-16", "Y")

-1

Example:

diffDate("1973-02-24", "1969-05-16", "M")

-1

Example:

diffDate("1973-02-24", "1969-05-16", "D")

-1

Example:

diffDate("1969-05-16", "1973-02-24", "Y")

3

Example:

diffDate("1969-05-16", "1973-02-24", "M")

45

Example:

diffDate("1969-05-16", "1973-02-24", "D")

1380

Example:

diffDate("1969-05-16", "1973-02-24", "MD")

8

Example:

diffDate("2023-01-01", "2023-02-10", "MD")

9

Example:

diffDate("1969-05-16", "1973-02-24", "YM")

9

Example:

diffDate("1969-05-16", "1973-02-24", "YD")

284

Example:

diffDate("2023-01-01", "2023-02-10", "YD")

40

formatDate()

TEXT

Returns a formatted date string based on the provided date value and format string.

Example:

formatDate("2023-06-01", "DD/MM/YYYY")

01/06/2023

Example:

formatDate("2023-06-01", "YYYY MMMM dddd")

2023 June Thursday

Example:

formatDate("2023-06-01", "MMM DD, YY")

Jun 01, 23

epochtodate(timestamp: NUMBER)

TEXT

Converts a Unix epoch timestamp (ms) into a UTC DateTime representation.

Example:

epochtodate (0)

1970-01-01T00:00:00Z

Example:

epochtodate (-1)

1969-12-31T23:59:59.999Z

Example:

epochtodate (1)

1970-01-01T00:00:00.001Z

Example:

epochtodate (1655908429662)

1970-01-01T00:00:00.001Z

epochtodate(timestamp: NUMBER, format: TEXT)

TEXT

Converts a Unix timestamp into a human-readable date/time string based on the specified format.

Example:

epochtodate (1695316200000)

2023-09-21T17:10:00Z

Example:

epochtodate (1695316200000, "hh:mm")

17:10

ProtoPie Schoolのマスタークラスでさらに学ぶ

ProtoPieでの関数の使い方についてさらに深く学びたいですか?詳しい実例やこちらのドキュメントに記載されている特殊な関数の使い方についてのガイドは、ProtoPieのマスタークラスをご覧ください。