_delta_JSTG = (double) (np) / double (_sizePointsContour - 1); //Without the -1 the curve is not close
} else {
// _delta_JSTG = (double) (np-1) / double (_sizePointsContour ); //Without the -1 the curve is not close
- _delta_JSTG = (double) (np) / double (_sizePointsContour-1 ); //Without the -1 the curve is not close
+//EED 9/7/2016 _delta_JSTG = (double) (np) / double (_sizePointsContour-1 ); //Without the -1 the curve is not close
+ _delta_JSTG = (double) (np-1) / double (_sizePointsContour-1 ); //Without the -1 the curve is not close
}
//-----------------------------------------------------------------------------------------------------------
}
//JSTG 25-02-08 ---------------------------------------------------------------
void manualContourModel::GetSpline_t_Point(double t, double *x, double *y, double *z)
{
- if (_lstPoints.size()==0)
+ if (_lstPoints.size()==0)
{
*x = 0;
*y = 0;
}
}*/
// ----------------------------------------------------------------------------
-double manualContourModel::GetPathSize()
+double manualContourModel::GetPathSize(double *spc)
{
double result = 0;
double x1,y1,z1;
if (_lstPoints.size()==2)
{
- x1=_lstPoints[0]->GetX();
- y1=_lstPoints[0]->GetY();
- z1=_lstPoints[0]->GetZ();
- x2=_lstPoints[1]->GetX();
- y2=_lstPoints[1]->GetY();
- z2=_lstPoints[1]->GetZ();
+ x1 = spc[0] * _lstPoints[0]->GetX();
+ y1 = spc[1] * _lstPoints[0]->GetY();
+ z1 = spc[2] * _lstPoints[0]->GetZ();
+ x2 = spc[0] * _lstPoints[1]->GetX();
+ y2 = spc[1] * _lstPoints[1]->GetY();
+ z2 = spc[2] * _lstPoints[1]->GetZ();
result = sqrt( (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) + (z2-z1)*(z2-z1) );
}
if (_lstPoints.size()>2)
//GetSplinePoint(0,x1,y1,z1);
GetSpline_i_Point(0,&x1,&y1,&z1);
+ x1 = spc[0] * x1;
+ y1 = spc[1] * y1;
+ z1 = spc[2] * z1;
//for( i = 1; i < nps; i++ )
for( i = 1; i < GetNumberOfPointsSpline(); i++ )
{
//t = delta * (double)i;
//GetSplinePoint(t,x2,y2,z2);
GetSpline_i_Point(i,&x2,&y2,&z2);
+ x2 = spc[0] * x2;
+ y2 = spc[1] * y2;
+ z2 = spc[2] * z2;
//---------------------------------------------------------
result=result + sqrt( (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) + (z2-z1)*(z2-z1) );
x1=x2;
return result;
}
+
+
// ----------------------------------------------------------------------------
-double manualContourModel::GetPathArea()
+double manualContourModel::GetPathArea(double *spc)
{
double result = 555;
if ((_lstPoints.size()>=3) && IfCloseContour()==true )
GetSpline_i_Point(i,&x1,&y1,&z1);
GetSpline_i_Point(j,&x2,&y2,&z2);
//----------------------------------------------------------------
+ x1=spc[0]*x1;
+ y1=spc[1]*y1;
+ z1=spc[2]*z1;
+ x2=spc[0]*x2;
+ y2=spc[1]*y2;
+ z2=spc[2]*z2;
area +=
(x1 * y2 ) -
( x2 * y1 );
rn[1]=rp[1]-y1;
rn[2]=rp[2]-z1;
}
- }
- else
- {
+ } else {
rp[0] = 0;
rp[1] = 0;
rp[2] = 0;