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) ...@@ -218,7 +218,6 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
} }
Vertex V; Vertex V;
V.u = u;
if(derivee) { if(derivee) {
double eps1 = (u == 0) ? 0 : 1.e-5; double eps1 = (u == 0) ? 0 : 1.e-5;
...@@ -229,6 +228,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee) ...@@ -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.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.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.Pos.Z = (D[1].Pos.Z - D[0].Pos.Z) / (eps1 + eps2);
V.u = u;
return V; return V;
} }
...@@ -265,7 +265,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee) ...@@ -265,7 +265,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.Y = pp.y(); V.Pos.Y = pp.y();
V.Pos.Z = pp.z(); V.Pos.Z = pp.z();
} }
return V; break;
case MSH_SEGM_PARAMETRIC: case MSH_SEGM_PARAMETRIC:
V.Pos.X = evaluate_scalarfunction("t", u, c->functu); V.Pos.X = evaluate_scalarfunction("t", u, c->functu);
...@@ -273,7 +273,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee) ...@@ -273,7 +273,7 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.Z = evaluate_scalarfunction("t", u, c->functw); V.Pos.Z = evaluate_scalarfunction("t", u, c->functw);
V.w = (1. - u) * c->beg->w + u * c->end->w; V.w = (1. - u) * c->beg->w + u * c->end->w;
V.lc = (1. - u) * c->beg->lc + u * c->end->lc; V.lc = (1. - u) * c->beg->lc + u * c->end->lc;
return V; break;
case MSH_SEGM_CIRC: case MSH_SEGM_CIRC:
case MSH_SEGM_CIRC_INV: case MSH_SEGM_CIRC_INV:
...@@ -298,14 +298,16 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee) ...@@ -298,14 +298,16 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.Z += c->Circle.v[1]->Pos.Z; V.Pos.Z += c->Circle.v[1]->Pos.Z;
V.w = (1. - u) * c->beg->w + u * c->end->w; V.w = (1. - u) * c->beg->w + u * c->end->w;
V.lc = (1. - u) * c->beg->lc + u * c->end->lc; V.lc = (1. - u) * c->beg->lc + u * c->end->lc;
return V; break;
case MSH_SEGM_BSPLN: case MSH_SEGM_BSPLN:
case MSH_SEGM_BEZIER: case MSH_SEGM_BEZIER:
return InterpolateUBS(c, u, 0); V = InterpolateUBS(c, u, 0);
break;
case MSH_SEGM_NURBS: case MSH_SEGM_NURBS:
return InterpolateNurbs(c, u, 0); V = InterpolateNurbs(c, u, 0);
break;
case MSH_SEGM_SPLN: case MSH_SEGM_SPLN:
N = List_Nbr(c->Control_Points); N = List_Nbr(c->Control_Points);
...@@ -355,23 +357,25 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee) ...@@ -355,23 +357,25 @@ Vertex InterpolateCurve(Curve *c, double u, int derivee)
V.Pos.X = pt.x(); V.Pos.X = pt.x();
V.Pos.Y = pt.y(); V.Pos.Y = pt.y();
V.Pos.Z = pt.z(); V.Pos.Z = pt.z();
return V;
} }
else 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: case MSH_SEGM_BND_LAYER:
Msg::Error("Cannot interpolate boundary layer curve"); Msg::Error("Cannot interpolate boundary layer curve");
return V; break;
case MSH_SEGM_DISCRETE: case MSH_SEGM_DISCRETE:
Msg::Error("Cannot interpolate discrete curve"); Msg::Error("Cannot interpolate discrete curve");
return V; break;
default: default:
Msg::Error("Unknown curve type in interpolation"); 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