//path must have same number of points as hieght of mesh

void mesh :: makeScaledExtrusionOnPath(Vec3d * _p, Vec3d * _path ){

     Vec3d upVector(0,1,0);

Vec3d parallel;

Vec3d perpNormalVec;

Vec3d sideVec; // for spacial referance with up vector

for (int i= 0; i< gridW-1; i++)

     {

parallel = _path[i-1] - _path[i+1]; // get parallel

        perpNormalVec = parallel.cross(upVector); //find perp vector in regagrds to up

sideVec = perpNormalVec.cross( parallel); 

perpNormalVec.normalize(); // normalize

sideVec.normalize(); // normalize

for (int j=0; j< gridH-1; j++)

    {

   

      // _path[j].print();

//grid[i][j] = _path[i] + (sideVec * _p[j].x) + (perpNormalVec * _p[j].y);

grid[i][j].x = _p[j].x ;

grid[i][j].y = _p[j].y +_path[i].y ;

grid[i][j].z = _path[i].z;

  // grid[i][j].z = 200/(gridH)*j;


       }

    }

 

 }