## variation law

May appear as an option in all commands involving a variation.
## law

### law(x1,y1,0, x2,y2,0, ......, xn,yn,0)

In certains commands
**(xi,yi)** stantardized between 0.0 and 1.0, allows varying a parameter y=law(x,L).

See for example:

traj law.
### law("ccc")

**ccc=acc**: accelerated (equivalent to acc).

**ccc=dec**: delerated (equivalent to dec).

**ccc=pend**: pundulum (equivalent to pend).
### law(x,w)

Returns **y=f(x)**, with **f** = polynomial function described by the 3D polygonal line
**w** = (x1,y1,0,x2,y2,0,...)
### law(x,id)

Returns **y=f(x)**, with **f** = polynomial function described by
the points **(x1,y1,0,x2,y2,0,...)** of object **law** identifier **id**.

**Options:**

**ext(e,c)**: the line **w** is extended by extension **(e,c)**.
## Objet law

### law(id)poi(x1,y1,z1,...)

Build object **law** identifier **id** defined by the 3D polygonal line
**(x1,y1,z1,...)**.
### law(id)

Returns the 3D polygonal line defining the law.

If **id="nnn"** and if the corresponding object is not found, file is seeked on the disk.
## law axis

### law axis rota vol(id)

Returns the list of boundaries **(a1, a2)** of learning.
### law axis rota vol(id)=a1,a2,...

Changes these boundaries.

Voir network vol.
## law fog

### law fog(id)

Returns the law of fog **id**
### law fog num=expr

Changes this law.
## law CG

### law CG(np)vol(id)

Builds the FIFO stack of CG of volume **id**.
### law CG vol(id)

Returns this stack.
Computes the
power 1/3 law of the stack.
Returns the power 1/3 law evaluation of the stack.

**Notes:**

bloc **dist radius** is autmatically generated containing **(di,ri,ci)** where:

**di** = curve speed

**ri** = radius

**ci** = di / (ri ^ 1/3)

Usefull in genetic algorithme generating natural motions.
see the file genetic_emergence.func.
## law field

### law field(id)

Returns the law associated to field **id**.
### law field(id)=v

Changes this law.

**Note:**

**id** field force is inversely proportional to the distance from the center of the field if it is
centrall, or from its axis if of axial type..
## law line

### law line(L)

Returns the variation law of the 3D line **L**.

**Options:**

**center**: returns the curvature center.

**dist**: returns the curve abscisses.

**radius**: returns the curvature radius.

**Examples:**

`L=adjust(3)line(0,0,0, 100,0,0);$law line(L)dist;`

prints **0.0 50.0 100.0**

`L=adjust(3)line(0,0,0, 100,0,0);$law line(L)dist;`

prints **0.0 50.0 100.0**

`L=adjust(6)line(0,0,0, 100,0,0)ext(3,1,0);$law line(L)dist;`

prints **0.0 20.0, 40.0 60.0 80.0 100.0**
## law network

### law(n) network(id)

Returns the output **n** of neural network **id**.
### law(n) network(id)=values

Changes this output.
### law(0) network(id)=values

Add an output.

See also: network and
motif network.

**Notes:**

All laws must have the same dimension.

There must be as many laws as motifs.

## law speed

### law speed rota vol(id)

Returns the property **law speed rota vol** of volume**id**.
### law speed rota vol(id)=c,cc

Changes this property.

**Note:**

if the volume **id** is the leader of an anchorage
structure then **c** is the coefficient of the
law of phase opposition, the rotational speeds of all volumes of this structure are automatically
modified according to this law.

**Notes:**

**cc** is the multiplier of **c** from one volume to the next.

if yes follow is active law spreads from one volume to its
followers.

## law property

### law(num)propr1 propr2 ... vol(id)

Returns the law number **num** of neuronal network associated
with the **propr1 propr2 ...** property of volume **id**.
## law(num)propr1 propr2 ... vol(id)=expr

Changes this law, if **num=0**: adds a law.
## law transp vol

### law transp vol(id)

Returns the transparency law of volume **id**.
### law transp vol(id)=x1,y1,z1,x2,y2,z2,...

Changes this law.

**Notes:**

1) If the volume**id** is provided with a transparency (see illum vol),
it will be modulated by the law **(x1, y1, z1, x2, y2, z2, ...)**.

2) The x varies between 0 and 1, y varie between 0, z are zero.
y represents the multiplier of transparency with respect to x which is the cosine of the angle
between the normal vector and the vector joining the point to the eye

**Examples:**

`law transp vol(1)=0,0,0,1,1,0;`

`x=arc(1,PI,-PI/2,20);tran var("x")poi(1,0,0);law transp vol(1)=x;`

## law vol

### law vol(id)

Returns the **law** property of volume **id**.
### law vol(id)=v

Changes this property.

**Note:**

**v=1**: activates the speed calculus for adjust vol law.

**v=0**: inhibits these calculus.
## See also: