#include <acknex.h>
#include <default.c>



VECTOR* P1={x=1;y=1;z=8;}
VECTOR* P2={x=7;y=4;z=5;}
VECTOR* P3={x=1;y=7;z=7;}
VECTOR* Result;

var Travel_Speed=1;
var Smoothness=1;


function bezier_spline(VECTOR* a, VECTOR* b, VECTOR* c, var Travel_Speed, var Smoothness)
{

VECTOR* Copy_a=a;
VECTOR* Copy_b=b;
VECTOR* Copy_c=c;

VECTOR* vec_a_b=vec_sub(Copy_b,a);
VECTOR* Copy_b = vec_set(Copy_b,b);
VECTOR* vec_b_c=vec_sub(Copy_c,b);
VECTOR* Copy_c = vec_set(Copy_c,c);
VECTOR* vec_a_c=vec_sub(Copy_c,a);
VECTOR* Copy_c = vec_set(Copy_c,c);


VECTOR* Copy_vec_a_b=vec_a_b;
VECTOR* Copy_vec_b_c=vec_b_c;
VECTOR* Copy_vec_a_c=vec_a_c;

VECTOR* Copy_vec_a_b=vec_set(Copy_vec_a_b, vec_a_b);
VECTOR* Copy_vec_b_c=vec_set(Copy_vec_b_c, vec_b_c);
VECTOR* Copy_vec_a_c=vec_set(Copy_vec_a_c, vec_a_c);


VECTOR* vec_b_h1;
VECTOR* vec_b_h2;


VECTOR* vec_b_h1=vec_scale(Copy_vec_a_c,0.5);
VECTOR* vec_b_h1=vec_inverse(vec_b_h1);




return(vec_b_h1);




}

function main()
{
Result=bezier_spline(P1,P2,P3,1,1);


}


PANEL* Anzeige=
{
digits (10, 10, 5.3, *, 1,Result[0]);
digits (10, 20, 5.3, *, 1,Result[1]);
digits (10, 30, 5.3, *, 1,Result[2]);




flags = VISIBLE;
}



This is an example of my code, I posted a wrong version before, sorry for that.

Everything works as supposed but is this really the way it's done?