# Class: floatarray

Floatarray in Luxinia for array operations.

## Hierarchy

    o-+ mathlib
      o-+ staticarray
        o-+ floatarray

## Methods:

### Method overview:

- add
- div
- lerp
- max
- min
- mul
- new
- set
- sub
- v3
- v3all
- v3lerp
- v3spline
- v3tonext
- v4
- v4all
- v4lerp
- v4lit
- v4spline

new (int count)
  returns: (floatarray)
  creates a new staticarray. Count must be >0.
add (floatarray self,floatarray / value a, [floatarray b])
  returns: ()
  self+=a or self = a + b
div (floatarray self,floatarray / value a, [floatarray b])
  returns: ()
  self/=a or self = a / b
lerp (floatarray interpolated(i), floatarray splinepos(n),[int noverride])
  returns: ()
  does linear interpolation based on the n floats (eventimed), and interpolates using i steps.
max (floatarray self,floatarray / value a, [floatarray b])
  returns: ()
  self = max(self,a) or self = max(a,b)
min (floatarray self,floatarray / value a, [floatarray b])
  returns: ()
  self = min(self,a) or self = min(a,b)
mul (floatarray self,floatarray / value a, [floatarray b])
  returns: ()
  self*=a or self = a * b
set (floatarray self,floatarray / value a)
  returns: ()
  self = a (copy an array or set value to all)
sub (floatarray self,floatarray / value a, [floatarray b])
  returns: ()
  self-=a or self = a - b
v3 (floatarray,int index, [float x,y,z])
  returns: ([float x,y,z])
  returns or sets ith vector3, make sure count is 3*maxindex.
v3all (floatarray,float x,y,z,[int startfloat, vectorcount, stride])
  returns: ()
  returns or sets all values of the floatarray, optionally can set from which float to start and how many vectors. Vectorsize is 3+stride.
v3lerp (floatarray interpolated(3i), floatarray splinepos(3n),[int noverride])
  returns: ()
  does linear interpolation based on the n vectors (eventimed), and interpolates using i steps.
v3spline (floatarray interpolated(3i), floatarray splinepos(3n),[int noverride])
  returns: ()
  does spline interpolation based on the n splinepos vectors (eventimed), and interpolates using i steps.
v3tonext (floatarray out(3n))
  returns: ()
  for every vector we do (next-self)
v4 (floatarray,int index, [float x,y,z,w])
  returns: ([float x,y,z,w])
  returns or sets ith vector4, make sure count is 4*maxindex.
v4all (floatarray,float x,y,z,w,[int startfloat, vectorcount, stride])
  returns: ()
  returns or sets all values of the floatarray, optionally can set from which float to start and how many vectors. Vectorsize is 4+stride.
v4lerp (floatarray interpolated(4i), floatarray splinepos(4n),[int noverride])
  returns: ()
  does linear interpolation based on the n vectors (eventimed), and interpolates using i steps.
v4lit (floatarray outputintensities(4n), floatarray vertexpos(3n), floatarray vertexnormal(3n), float lightpos x,y,z ,float diffuse r,g,b ,float ambient r,g,b ,float attconst, float attlin, float attsq)
  returns: ()
  computes per vertex lighting intensities for n vertices into the given array. The given light position, attenuation and color values are used. Note that light position must be in same coordinate system as vertices (local).
v4spline (floatarray interpolated(4i), floatarray splinepos(4n),[int noverride])
  returns: ()
  does spline interpolation based on the n splinepos vectors (eventimed), and interpolates using i steps.

## Inherited Methods:

### From staticarray

clamp, count, datapointer, fromstring, index, mounted, mountscalararray, resize

### From mathlib

quatslerpq, quatslerpqt