Skip to content
Snippets Groups Projects
Commit 2e1eccfb authored by Stefen Guzik's avatar Stefen Guzik
Browse files

Bug fix - parameter not getting through

parent 299dedd0
No related branches found
No related tags found
No related merge requests found
......@@ -218,7 +218,6 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
}
Vertex V;
V.u = u;
if(derivee) {
double eps1 = (u == 0) ? 0 : 1.e-5;
......@@ -229,6 +228,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.X = (D[1].Pos.X - D[0].Pos.X) / (eps1 + eps2);
V.Pos.Y = (D[1].Pos.Y - D[0].Pos.Y) / (eps1 + eps2);
V.Pos.Z = (D[1].Pos.Z - D[0].Pos.Z) / (eps1 + eps2);
V.u = u;
return V;
}
......@@ -265,7 +265,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.Y = pp.y();
V.Pos.Z = pp.z();
}
return V;
break;
case MSH_SEGM_PARAMETRIC:
V.Pos.X = evaluate_scalarfunction("t", u, c->functu);
......@@ -273,7 +273,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.Z = evaluate_scalarfunction("t", u, c->functw);
V.w = (1. - u) * c->beg->w + u * c->end->w;
V.lc = (1. - u) * c->beg->lc + u * c->end->lc;
return V;
break;
case MSH_SEGM_CIRC:
case MSH_SEGM_CIRC_INV:
......@@ -298,14 +298,16 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.Z += c->Circle.v[1]->Pos.Z;
V.w = (1. - u) * c->beg->w + u * c->end->w;
V.lc = (1. - u) * c->beg->lc + u * c->end->lc;
return V;
break;
case MSH_SEGM_BSPLN:
case MSH_SEGM_BEZIER:
return InterpolateUBS(c, u, 0);
V = InterpolateUBS(c, u, 0);
break;
case MSH_SEGM_NURBS:
return InterpolateNurbs(c, u, 0);
V = InterpolateNurbs(c, u, 0);
break;
case MSH_SEGM_SPLN:
N = List_Nbr(c->Control_Points);
......@@ -355,23 +357,25 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.X = pt.x();
V.Pos.Y = pt.y();
V.Pos.Z = pt.z();
return V;
}
else
return InterpolateCubicSpline(v, t, c->mat, 0, t1, t2);
V = InterpolateCubicSpline(v, t, c->mat, 0, t1, t2);
break;
case MSH_SEGM_BND_LAYER:
Msg::Error("Cannot interpolate boundary layer curve");
return V;
break;
case MSH_SEGM_DISCRETE:
Msg::Error("Cannot interpolate discrete curve");
return V;
break;
default:
Msg::Error("Unknown curve type in interpolation");
return V;
break;
}
V.u = u;
return V;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment