As saulgoode mentioned, single dimensional arrays are sometimes referred to as "vectors". Two dimensional arrays are sometimes referred to as "tables" and with three or more dimensions, they're called N-dimensional arrays (or multidimensional arrays). Technically, they are all arrays.
Unfortunately, GIMP's implementation of Scheme (TinyScheme) doesn't directly support N-dimensional arrays (can be simulated), as do more robust versions of Scheme. The
array commands have been dropped in favor of
vector commands.
In the interest of clarity, I think a few more basic examples might be helpful..
These two methods of defining the single dimensional array: my-vector are identical..
(define my-vector #(8 16 32 64))
(define my-vector (vector 8 16 32 64))
They both return my-vector as
#( 8 16 32 64 )
The value of each element in my-vector can be changed by using
vector-set!(vector-set! my-vector 0 255)
my-vector returns..
#( 255 16 32 64 )
Note that when using
vector-set!, the index to each element in my-vector begins with zero (0-3 not 1-4)
You can use variables within
vector-set! to change the value of each element in my-vector.
(define index 1)
(define new-value 200)
(vector-set! my-vector index new-value)
my-vector now returns..
#( 255 200 32 64 )
Graechan wrote:
Got it with this.
Looks like that will result in an infinite recursion loop.
It should be more like this..
(define splineValue #(0 0 38 31 125 129 197 223 255 255 255 255 255 255 255 255))
or
(define splineValue (vector 0 0 38 31 125 129 197 223 255 255 255 255 255 255 255 255))
(gimp-curves-spline inner-bevel-layer 0 16 splineValue)
Hope that helps!!