7 #ifndef __vtkPlusImplicitSplineForce_h 8 #define __vtkPlusImplicitSplineForce_h 10 #include "PlusConfigure.h" 11 #include "vtkPlusHapticsExport.h" 18 #define NUM_INTERVALU_S DIM_BASE+10 19 #define NUM_INTERVALV_S DIM_BASE 20 #define NUM_INTERVALW_S DIM_BASE+25 21 #define DimCPoint_U NUM_INTERVALU_S+3 22 #define DimCPoint_V NUM_INTERVALV_S+3 23 #define DimCPoint_W NUM_INTERVALW_S+3 24 #define DimKnot_U DimCPoint_U+2 25 #define DimKnot_V DimCPoint_V+2 26 #define DimKnot_W DimCPoint_W+2 35 void SetInput(
int splineId);
36 void SetInput(
char * controlPnt);
37 int GenerateForce(vtkMatrix4x4 * transformMatrix,
double force[3]);
38 int SetGamma(
double gamma);
44 int fnGaussValueDeriv(
double a,
double x,
double&
value,
double& deriv);
45 int fnSigmoidValueDeriv(
double a,
double x,
double&
value,
double& deriv);
46 int CalculateDistanceDerivativeBasis(
double x,
double y,
double z,
int n,
int direction,
double *gradient);
47 double BasisFunction3(
int k,
double *knot,
double u,
int K);
48 double BasisFunction3DerivativeD(
int k,
double *knot,
double u,
int K);
49 double CalculateDistanceBasis(
double x,
double y,
double z,
int n,
int direction);
50 int CalculateKnotIu(
double u,
double *knot,
int K,
int n);
51 int ReadFile3DBSplineKnots(
const std::string& fname);
52 int ReadFileControlPoints(
const std::string& fname);
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
static vtkPlusForceFeedback * New()
const char const char * value
Direction vectors of rods y
virtual int GenerateForce(vtkMatrix4x4 *hapticPosition, double force[3])
std::string ControlPoints