void avtStateRecorderIntegralCurve::RecordStep(const avtIVPField* field, const avtIVPStep& step, double t) { avtVector p = step.GetP(t); /* //If the step is within tolerance of the previous step, just overwrite the last step //with this step. size_t nSamp = GetNumberOfSamples(); if (nSamp > 1) { Sample prevSamp = GetSample(nSamp-1); if ((p-prevSamp.position).length2() < epsilon) { std::vector<double>::iterator m = history.begin() + (nSamp-1)*GetSampleStride(); history.erase(m, history.end()); } } */ if( historyMask & SAMPLE_TIME ) history.push_back( t ); if( historyMask & SAMPLE_POSITION ) { history.push_back( p.x ); history.push_back( p.y ); history.push_back( p.z ); } if( historyMask & SAMPLE_VELOCITY ) { avtVector v = step.GetV( t ); history.push_back( v.x ); history.push_back( v.y ); history.push_back( v.z ); } if( historyMask & SAMPLE_VORTICITY ) history.push_back( field->ComputeVorticity( t, p ) ); if( historyMask & SAMPLE_ARCLENGTH ) history.push_back( distance ); if( historyMask & SAMPLE_VARIABLE ) history.push_back( field->ComputeScalarVariable( variableIndex, t, p ) ); if( historyMask & SAMPLE_SECONDARY0 ) history.push_back( field->ComputeScalarVariable( 0, t, p ) ); if( historyMask & SAMPLE_SECONDARY1 ) history.push_back( field->ComputeScalarVariable( 1, t, p ) ); if( historyMask & SAMPLE_SECONDARY2 ) history.push_back( field->ComputeScalarVariable( 2, t, p ) ); if( historyMask & SAMPLE_SECONDARY3 ) history.push_back( field->ComputeScalarVariable( 3, t, p ) ); if( historyMask & SAMPLE_SECONDARY4 ) history.push_back( field->ComputeScalarVariable( 4, t, p ) ); if( historyMask & SAMPLE_SECONDARY5 ) history.push_back( field->ComputeScalarVariable( 5, t, p ) ); }