vtkPVCompositeKeyFrame.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkPVCompositeKeyFrame_h
16 #define vtkPVCompositeKeyFrame_h
17 
18 #include "vtkPVKeyFrame.h"
19 
23 class vtkPVRampKeyFrame;
24 
25 class VTKREMOTINGANIMATION_EXPORT vtkPVCompositeKeyFrame : public vtkPVKeyFrame
26 {
27 public:
28  static vtkPVCompositeKeyFrame* New();
30  void PrintSelf(ostream& os, vtkIndent indent) override;
31 
32  enum
33  {
34  NONE = 0,
35  BOOLEAN = 1,
36  RAMP = 2,
37  EXPONENTIAL = 3,
38  SINUSOID = 4
39  };
40 
42 
45  void RemoveAllKeyValues() override;
46  void SetKeyTime(double time) override;
47  void SetKeyValue(double val) override { this->Superclass::SetKeyValue(val); }
48  void SetKeyValue(unsigned int index, double val) override;
49  void SetNumberOfKeyValues(unsigned int num) override;
51 
53 
56  void SetBase(double val);
57  void SetStartPower(double val);
58  void SetEndPower(double val);
60 
62 
65  void SetPhase(double val);
66  void SetFrequency(double val);
67  void SetOffset(double val);
69 
71 
75  vtkSetClampMacro(Type, int, NONE, SINUSOID);
76  vtkGetMacro(Type, int);
77  const char* GetTypeAsString() { return this->GetTypeAsString(this->Type); }
78  static const char* GetTypeAsString(int);
79  static int GetTypeFromString(const char* string);
81 
87  void UpdateValue(double currenttime, vtkPVAnimationCue* cue, vtkPVKeyFrame* next) override;
88 
89 protected:
91  ~vtkPVCompositeKeyFrame() override;
92 
93  int Type;
94 
99 
100 private:
102  void operator=(const vtkPVCompositeKeyFrame&) = delete;
103 };
104 
105 #endif
vtkPVKeyFrame::New
static vtkPVKeyFrame * New()
vtkPVKeyFrame::SetKeyValue
virtual void SetKeyValue(double val)
Get/Set the animated value at this key frame.
Definition: vtkPVKeyFrame.h:48
vtkPVKeyFrame::SetKeyTime
virtual void SetKeyTime(double)
Key time is the time at which this key frame is associated.
vtkPVCompositeKeyFrame::SetKeyValue
void SetKeyValue(double val) override
Overridden to pass on to the internal keyframe proxies.
Definition: vtkPVCompositeKeyFrame.h:47
vtkPVSinusoidKeyFrame
Definition: vtkPVSinusoidKeyFrame.h:19
vtkPVRampKeyFrame
Definition: vtkPVRampKeyFrame.h:14
vtkPVCompositeKeyFrame
composite keyframe.
Definition: vtkPVCompositeKeyFrame.h:25
vtkPVKeyFrame
Definition: vtkPVKeyFrame.h:24
vtkPVCompositeKeyFrame::Type
int Type
Definition: vtkPVCompositeKeyFrame.h:93
vtkPVKeyFrame.h
vtkPVCompositeKeyFrame::GetTypeAsString
const char * GetTypeAsString()
Get/Set the type of keyframe to be used as the active type.
Definition: vtkPVCompositeKeyFrame.h:77
vtkPVKeyFrame::UpdateValue
virtual void UpdateValue(double currenttime, vtkPVAnimationCue *cue, vtkPVKeyFrame *next)
This method will do the actual interpolation.
vtkPVAnimationCue
proxy for vtkAnimationCue.
Definition: vtkPVAnimationCue.h:26
vtkPVCompositeKeyFrame::SinusoidKeyFrame
vtkPVSinusoidKeyFrame * SinusoidKeyFrame
Definition: vtkPVCompositeKeyFrame.h:98
vtkPVKeyFrame::RemoveAllKeyValues
virtual void RemoveAllKeyValues()
Removes all key values.
vtkPVCompositeKeyFrame::BooleanKeyFrame
vtkPVBooleanKeyFrame * BooleanKeyFrame
Definition: vtkPVCompositeKeyFrame.h:95
vtkPVCompositeKeyFrame::RampKeyFrame
vtkPVRampKeyFrame * RampKeyFrame
Definition: vtkPVCompositeKeyFrame.h:96
vtkIndent
vtkPVBooleanKeyFrame
Definition: vtkPVBooleanKeyFrame.h:14
vtkPVKeyFrame::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
vtkPVKeyFrame::SetNumberOfKeyValues
virtual void SetNumberOfKeyValues(unsigned int num)
Set/Get the number of key values this key frame currently stores.
vtkPVExponentialKeyFrame
Definition: vtkPVExponentialKeyFrame.h:14
vtkPVCompositeKeyFrame::ExponentialKeyFrame
vtkPVExponentialKeyFrame * ExponentialKeyFrame
Definition: vtkPVCompositeKeyFrame.h:97
pqTimelineTrack::NONE
@ NONE
Definition: pqTimelineModel.h:41