[ANN] This Week in LiveCode 82

Mark Waddingham mark at livecode.com
Tue May 16 09:15:33 CEST 2017


On 2017-05-15 23:22, Alejandro Tejada via use-livecode wrote:
> This Skia feature named: Perlin Noise Shader
> could have this syntax:
> 
> set the fractalperlinNoise of selobj to "0.05, 0.05, 4, 0.0"
> set the turbulenceperlinNoise of selobj to "0.05, 0.05, 4, 0.0"
> 
> This Skia feature named: Blur Mask Filter
> could have this syntax:
> 
> set the blur of selobj to 5
> set the hqblur of selobj to 10
> 

I'd actually suggest that filters should be a list / array - you need
to be able to specify the order.

Indeed, the general model is that filters are applied after the control
is rasterized but before its rasterized buffer (with transparency) is
composited into the parent.

The bitmapEffects we currently have are filters - they do have a 
prescribed
order (as they were modelled on PhotoShop's - which at the time fixed 
the
order, I'm not sure whether that has changed); but in reality there is
use in them being reorderable and to allow multiple applications of the 
same
kind (for example you might want two dropshadows with different 
displacement).

> This Skia feature named: SkMatrix
> could have this syntax:
> 
> set the perspective of selobj to "1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 
> 0, 0,
> 0, 0"

A perspective transform is a generalization of an affine transform 
(indeed,
I'd suggest transform, not perspective as the future property) - affine
transforms (2x3 matrices) extend to pseudo-perspective transforms (3x3) 
extend
to 3d transforms (4x4) by simple extension of the matrix (putting 1's 
and 0's
in the appropraite places).

However, there is a lot of difficulty involved in getting transforms to 
work
in Livecode (as has been discussed before) due to the way co-ordinates 
are
handled - they are always card-relative and are currently integers in 
the
engine - which makes things somewhat tricky. It would be nice to have 
though :)

Warmest Regards,

Mark.

-- 
Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps



More information about the use-livecode mailing list