PicoPicoGameEngine

Quick Links

ジオメトリオブジェクト

pppoint

pppoint()

ポイントオブジェクトを作成します。

p = pppoint(x,y)
p = pppoint({x,y})
p = pppoint(pos)
x : number

X座標

y : number

Y座標

pos : point object

座標

p : point object

ポイントオブジェクト

.x
.y

X座標、Y座標です。

x_pos = p.x
y_pos = p.y
p.x = x_pos
p.y = y_pos
p : point object

ポイントオブジェクト

x_pos : number

X座標

y_pos : number

Y座標

:length()

原点(0,0)からの距離を求めます。

len = p:length()
p : point object

ポイントオブジェクト

len : number

原点からの距離

:length()

2点間の距離を求めます。

len = p:length(x,y)
len = p:length({x,y})
len = p:length(pos)
p : point object

ポイントオブジェクト

x : number

X座標

y : number

Y座標

pos : point object

座標

len : number

指定点からの距離

pprect

pprect()

矩形オブジェクトを作成します。

r = pprect(x,y,width,height)
r = pprect({x,y,width,height})
r = pprect(rect)
r : pprect object

矩形オブジェクト

.x
.y

X座標、Y座標です。

x_pos = r.x
y_pos = r.y
r.x = x_pos
r.y = y_pos
r : pprect object

矩形オブジェクト

x_pos : number

X座標

y_pos : number

Y座標

.width
.height

横幅、高さです。

width = r.width
height = r.height
r.width = width
r.height = height
r : pprect object

矩形オブジェクト

width : number

横幅

height : number

高さ

:min()

左上の座標を計算します。

p = r:min()
r : pprect object

矩形オブジェクト

p : point object

矩形の左上の点

:max()

右下の座標を計算します。

p = r:max()
r : pprect object

矩形オブジェクト

p : point object

矩形の右下の点

:center()

中心の座標を計算します。

p = r:center()
r : pprect object

矩形オブジェクト

name : string
p : point object

矩形の中心点

:equalToSize()

サイズが同じかどうかを判定します。

result = r1:equalToSize(r2)
r1 : pprect object

矩形オブジェクト

r2 : pprect object

矩形オブジェクト

result : boolean

r1とr2のサイズが同じかどうか

  • true 同じである
  • false 同じでない

:equalToRect(})

同じ矩形かどうかを判定します。

result = r1:equalToRect(r2)
r1 : pprect object

矩形オブジェクト

r2 : pprect object

矩形オブジェクト

result : boolean

r1とr2が同じかどうか

  • true 同じである
  • false 同じでない

:isEmpty()

横幅、高さが0かどうかを判定します。

result = r:isEmpty()
r : pprect object

矩形オブジェクト

result : boolean

面積が0かどうか

  • true 0である
  • false 0でない

:move()

位置を移動します。

r:move(x,y)
r:move({x,y})
r:move(pos)
r : pprect object

矩形オブジェクト

x : number

X方向移動量

y : number

Y方向移動量

pos : point object

移動量

:position()
:pos()

位置を指定します。

r:position(x,y)
r:pos(x,y)
r:position({x,y})
r:pos({x,y})
r:position(pos)
r:pos(pos)
p = r:position()
p = r:pos()
r : pprect object

矩形オブジェクト

x : number

X座標

y : number

Y座標

pos : point object

座標

p : ppoint object

座標

:size()

サイズを変更します。

r:size(width,height)
r:size({width,height})
r:size(size)
size = r:size()
r : pprect object

矩形オブジェクト

width : number

横幅

height : number

縦幅

size : rectangle object

サイズ

:scale()

サイズをa倍します。

r:scale(a)
r : pprect object

矩形オブジェクト

a : number

倍率

:inset()

矩形を縮めます。負の値の場合は大きくします。

r:inset(x,y)
r:inset({x,y})
r:inset(inset)
r : pprect object

矩形オブジェクト

x : number

X方向

y : number

Y方向

inset : point object

縮め量

:contain()

座標を含んだ矩形かどうかを判定します。

result = r:contain(x,y)
result = r:contain({x,y})
result = r:contain(pos)
r : pprect object

矩形オブジェクト

x : number

X座標

y : number

Y座標

pos : point object

座標

result : boolean

座標を含んでいるかどうか

  • true 含んでいる
  • false 含んでいない

:intersect()

矩形が交差しているかどうかを判定します。

result = r1:intersect(r2)
r1 : pprect object

矩形オブジェクト

r2 : pprect object

矩形オブジェクト

result : boolean

交差しているかどうか

  • true 交差している
  • false 交差していない

:union()

2つの矩形を含んだ矩形を返します。

rect = r1:union(r2)
r1 : pprect object

矩形オブジェクト

r2 : pprect object

矩形オブジェクト

rect : pprect object

矩形オブジェクト

:length()

矩形の左上の位置との距離を計算します。

len = r:length(x,y)
len = r:length({x,y})
len = r:length(pos)
r : pprect object

矩形オブジェクト

len : number

距離

x : number

X座標

y : number

Y座標

pos : point object

座標

:hitCheck()

タッチした位置とのタッチアップ判定を行います。

r:hitCheck(point_array,[hit_func])
r : pprect object

矩形オブジェクト

point_array : object

ポイントオブジェクトの配列

hit_func : function/optional

当たり判定関数

--default hit_func
function(self,point)
  return self:contain(point)
end
g=ppgraph
r=pprect(110,110,100,100)

function start()
  local hit=false
  local t=pptouch()
  if r:hitCheck(t) then
    g:fill(r,g.red)
  else
    g:box(r,g.white)
  end
end