class Standard_TrapShapeHeart(common.ulb:TrapShape) {
public:
float func Iterate(complex pz)
complex zh = real(pz) + flip(abs(imag(pz)))
; Use parentheses to force a constant expression.
zh = zh * (((0,1) ^ (@traporder / 8)) * 3 / @diameter)
return abs(real(zh) - sqr(imag(zh)) + 3)
endfunc
default:
title = "Heart"
float param diameter
caption = "Diameter"
default = 1
hint = "This is the heart diameter."
endparam
float param traporder
caption = "Order"
default = 4
hint = "This modifies the shape of the heart."
endparam
}