//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;
}
}
}