synfig-core  1.0.3
valuenode_derivative.cpp File Reference

Implementation of the "Derivative" valuenode conversion. More...

`#include "valuenode_derivative.h"`
`#include "valuenode_const.h"`
`#include <synfig/general.h>`
`#include <ETL/misc>`

## Macros

#define E(x, t, y)   ( (*x)(t).get(y) )
#define D_ROUGH(x, t, h, y)
#define D_NORMAL(x, t, h, y)
#define D_FINE(x, t, h, y)
#define D_EXTREME(x, t, h, y)
#define DD_ROUGH(x, t, h, y)
#define DD_NORMAL(x, t, h, y)
#define DD_FINE(x, t, h, y)
#define DD_EXTREME(x, t, h, y)

## Detailed Description

Implementation of the "Derivative" valuenode conversion.

\$Id\$

## Macro Definition Documentation

 #define E ( x, t, y ) ( (*x)(t).get(y) )
 #define D_ROUGH ( x, t, h, y )
Value:
( \
( \
E(x,t-h,y)*(-1.0/2.0)+ \
E(x,t+h,y)*( 1.0/2.0) \
)/(h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define D_NORMAL ( x, t, h, y )
Value:
( \
( \
E(x,t-2*h,y)*( 1.0/12.0)+ \
E(x,t-h ,y)*( -2.0/3.0)+ \
E(x,t+h ,y)*( 2.0/3.0)+ \
E(x,t+2*h,y)*(-1.0/12.0) \
)/(h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define D_FINE ( x, t, h, y )
Value:
( \
( \
E(x,t-3*h,y)*(-1.0/60.0)+ \
E(x,t-2*h,y)*( 3.0/20.0)+ \
E(x,t-h ,y)*( -3.0/4.0)+ \
E(x,t+h ,y)*( 3.0/4.0)+ \
E(x,t+2*h,y)*(-3.0/20.0)+ \
E(x,t+3*h,y)*( 1.0/60.0) \
)/(h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define D_EXTREME ( x, t, h, y )
Value:
( \
( \
E(x,t-4*h,y)*( 1.0/280.0)+ \
E(x,t-3*h,y)*( -4.0/105)+ \
E(x,t-2*h,y)*( 1.0/5.0)+ \
E(x,t-h ,y)*( -4.0/5.0)+ \
E(x,t+h ,y)*( 4.0/5.0)+ \
E(x,t+2*h,y)*( -1.0/5.0)+ \
E(x,t+3*h,y)*( 4.0/105.0)+ \
E(x,t+4*h,y)*(-1.0/280.0) \
)/(h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define DD_ROUGH ( x, t, h, y )
Value:
( \
( \
E(x,t-h,y)*( 1.0)+ \
E(x,t,y )*(-2.0)+ \
E(x,t+h,y)*( 1.0) \
)/(h*h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define DD_NORMAL ( x, t, h, y )
Value:
( \
( \
E(x,t-2*h,y)*(-1.0/12.0)+ \
E(x,t-h ,y)*( 4.0/3.0)+ \
E(x,t ,y)*( -5.0/2.0)+ \
E(x,t+h ,y)*( 4.0/3.0)+ \
E(x,t+2*h,y)*(-1.0/12.0) \
)/(h*h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define DD_FINE ( x, t, h, y )
Value:
( \
( \
E(x,t-3*h,y)*( 1.0/90.0)+ \
E(x,t-2*h,y)*( -3.0/20.0)+ \
E(x,t-h ,y)*( 3.0/2.0)+ \
E(x,t ,y)*(-49.0/18.0)+ \
E(x,t+h ,y)*( 3.0/2.0)+ \
E(x,t+2*h,y)*( -3.0/20.0)+ \
E(x,t+3*h,y)*( 1.0/90.0) \
)/(h*h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().

 #define DD_EXTREME ( x, t, h, y )
Value:
( \
( \
E(x,t-4*h,y)*( -1.0/560.0)+ \
E(x,t-3*h,y)*( 8.0/315.0)+ \
E(x,t-2*h,y)*( -1.0/5.0)+ \
E(x,t-h ,y)*( 8.0/5.0)+ \
E(x,t ,y)*(-205.0/72.0)+ \
E(x,t+h ,y)*( 8.0/5.0)+ \
E(x,t+2*h,y)*( -1.0/5.0)+ \
E(x,t+3*h,y)*( 8.0/315.0)+ \
E(x,t+4*h,y)*( -1.0/560.0) \
)/(h*h) \
)

Referenced by synfig::ValueNode_Derivative::operator()().