00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef VRN_IVEC3INTERPOLATIONFUNCTIONS_H
00029 #define VRN_IVEC3INTERPOLATIONFUNCTIONS_H
00030
00031 #include "voreen/core/animation/interpolationfunction.h"
00032
00033 namespace voreen {
00034
00038 class IVec3StartInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00039
00040 public:
00041 IVec3StartInterpolationFunction();
00042 InterpolationFunction<tgt::ivec3>* clone() const;
00043 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00044
00045 std::string getMode() const;
00046 std::string getIdentifier() const;
00047 };
00048
00052 class IVec3EndInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00053
00054 public:
00055 IVec3EndInterpolationFunction();
00056 InterpolationFunction<tgt::ivec3>* clone() const;
00057 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00058
00059 std::string getMode() const;
00060 std::string getIdentifier() const;
00061 };
00062
00066 class IVec3StartEndInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00067
00068 public:
00069 IVec3StartEndInterpolationFunction();
00070 InterpolationFunction<tgt::ivec3>* clone() const;
00071 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00072
00073 std::string getMode() const;
00074 std::string getIdentifier() const;
00075 };
00076
00080 class IVec3LinearInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00081
00082 public:
00083 IVec3LinearInterpolationFunction();
00084 InterpolationFunction<tgt::ivec3>* clone() const;
00085 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00086
00087 std::string getMode() const;
00088 std::string getIdentifier() const;
00089 };
00090
00094 class IVec3InQuadInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00095
00096 public:
00097 IVec3InQuadInterpolationFunction();
00098 InterpolationFunction<tgt::ivec3>* clone() const;
00099 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00100
00101 std::string getMode() const;
00102 std::string getIdentifier() const;
00103 };
00104
00108 class IVec3InCubicInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00109
00110 public:
00111 IVec3InCubicInterpolationFunction();
00112 InterpolationFunction<tgt::ivec3>* clone() const;
00113 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00114
00115 std::string getMode() const;
00116 std::string getIdentifier() const;
00117 };
00118
00122 class IVec3InQuartInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00123
00124 public:
00125 IVec3InQuartInterpolationFunction();
00126 InterpolationFunction<tgt::ivec3>* clone() const;
00127 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00128
00129 std::string getMode() const;
00130 std::string getIdentifier() const;
00131 };
00132
00136 class IVec3InQuintInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00137
00138 public:
00139 IVec3InQuintInterpolationFunction();
00140 InterpolationFunction<tgt::ivec3>* clone() const;
00141 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00142
00143 std::string getMode() const;
00144 std::string getIdentifier() const;
00145 };
00146
00150 class IVec3InSineInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00151
00152 public:
00153 IVec3InSineInterpolationFunction();
00154 InterpolationFunction<tgt::ivec3>* clone() const;
00155 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00156
00157 std::string getMode() const;
00158 std::string getIdentifier() const;
00159 };
00160
00164 class IVec3InExponentInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00165
00166 public:
00167 IVec3InExponentInterpolationFunction();
00168 InterpolationFunction<tgt::ivec3>* clone() const;
00169 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00170
00171 std::string getMode() const;
00172 std::string getIdentifier() const;
00173 };
00174
00178 class IVec3InCircInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00179
00180 public:
00181 IVec3InCircInterpolationFunction();
00182 InterpolationFunction<tgt::ivec3>* clone() const;
00183 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00184
00185 std::string getMode() const;
00186 std::string getIdentifier() const;
00187 };
00188
00192 class IVec3OutQuadInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00193
00194 public:
00195 IVec3OutQuadInterpolationFunction();
00196 InterpolationFunction<tgt::ivec3>* clone() const;
00197 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00198
00199 std::string getMode() const;
00200 std::string getIdentifier() const;
00201 };
00202
00206 class IVec3OutCubicInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00207
00208 public:
00209 IVec3OutCubicInterpolationFunction();
00210 InterpolationFunction<tgt::ivec3>* clone() const;
00211 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00212
00213 std::string getMode() const;
00214 std::string getIdentifier() const;
00215 };
00216
00220 class IVec3OutQuartInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00221
00222 public:
00223 IVec3OutQuartInterpolationFunction();
00224 InterpolationFunction<tgt::ivec3>* clone() const;
00225 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00226
00227 std::string getMode() const;
00228 std::string getIdentifier() const;
00229 };
00230
00234 class IVec3OutQuintInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00235
00236 public:
00237 IVec3OutQuintInterpolationFunction();
00238 InterpolationFunction<tgt::ivec3>* clone() const;
00239 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00240
00241 std::string getMode() const;
00242 std::string getIdentifier() const;
00243 };
00244
00248 class IVec3OutSineInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00249
00250 public:
00251 IVec3OutSineInterpolationFunction();
00252 InterpolationFunction<tgt::ivec3>* clone() const;
00253 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00254
00255 std::string getMode() const;
00256 std::string getIdentifier() const;
00257 };
00258
00262 class IVec3OutExponentInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00263
00264 public:
00265 IVec3OutExponentInterpolationFunction();
00266 InterpolationFunction<tgt::ivec3>* clone() const;
00267 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00268
00269 std::string getMode() const;
00270 std::string getIdentifier() const;
00271 };
00272
00276 class IVec3OutCircInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00277
00278 public:
00279 IVec3OutCircInterpolationFunction();
00280 InterpolationFunction<tgt::ivec3>* clone() const;
00281 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00282
00283 std::string getMode() const;
00284 std::string getIdentifier() const;
00285 };
00286
00290 class IVec3InOutQuadInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00291
00292 public:
00293 IVec3InOutQuadInterpolationFunction();
00294 InterpolationFunction<tgt::ivec3>* clone() const;
00295 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00296
00297 std::string getMode() const;
00298 std::string getIdentifier() const;
00299 };
00300
00304 class IVec3InOutCubicInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00305
00306 public:
00307 IVec3InOutCubicInterpolationFunction();
00308 InterpolationFunction<tgt::ivec3>* clone() const;
00309 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00310
00311 std::string getMode() const;
00312 std::string getIdentifier() const;
00313 };
00314
00318 class IVec3InOutQuartInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00319
00320 public:
00321 IVec3InOutQuartInterpolationFunction();
00322 InterpolationFunction<tgt::ivec3>* clone() const;
00323 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00324
00325 std::string getMode() const;
00326 std::string getIdentifier() const;
00327 };
00328
00332 class IVec3InOutQuintInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00333
00334 public:
00335 IVec3InOutQuintInterpolationFunction();
00336 InterpolationFunction<tgt::ivec3>* clone() const;
00337 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00338
00339 std::string getMode() const;
00340 std::string getIdentifier() const;
00341 };
00342
00346 class IVec3InOutSineInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00347
00348 public:
00349 IVec3InOutSineInterpolationFunction();
00350 InterpolationFunction<tgt::ivec3>* clone() const;
00351 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00352
00353 std::string getMode() const;
00354 std::string getIdentifier() const;
00355 };
00356
00360 class IVec3InOutExponentInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00361
00362 public:
00363 IVec3InOutExponentInterpolationFunction();
00364 InterpolationFunction<tgt::ivec3>* clone() const;
00365 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00366
00367 std::string getMode() const;
00368 std::string getIdentifier() const;
00369 };
00370
00374 class IVec3InOutCircInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00375
00376 public:
00377 IVec3InOutCircInterpolationFunction();
00378 InterpolationFunction<tgt::ivec3>* clone() const;
00379 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00380
00381 std::string getMode() const;
00382 std::string getIdentifier() const;
00383 };
00384
00388 class IVec3OutInQuadInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00389
00390 public:
00391 IVec3OutInQuadInterpolationFunction();
00392 InterpolationFunction<tgt::ivec3>* clone() const;
00393 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00394
00395 std::string getMode() const;
00396 std::string getIdentifier() const;
00397 };
00398
00402 class IVec3OutInCubicInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00403
00404 public:
00405 IVec3OutInCubicInterpolationFunction();
00406 InterpolationFunction<tgt::ivec3>* clone() const;
00407 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00408
00409 std::string getMode() const;
00410 std::string getIdentifier() const;
00411 };
00412
00416 class IVec3OutInQuartInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00417
00418 public:
00419 IVec3OutInQuartInterpolationFunction();
00420 InterpolationFunction<tgt::ivec3>* clone() const;
00421 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00422
00423 std::string getMode() const;
00424 std::string getIdentifier() const;
00425 };
00426
00430 class IVec3OutInQuintInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00431
00432 public:
00433 IVec3OutInQuintInterpolationFunction();
00434 InterpolationFunction<tgt::ivec3>* clone() const;
00435 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00436
00437 std::string getMode() const;
00438 std::string getIdentifier() const;
00439 };
00440
00444 class IVec3OutInSineInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00445
00446 public:
00447 IVec3OutInSineInterpolationFunction();
00448 InterpolationFunction<tgt::ivec3>* clone() const;
00449 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00450
00451 std::string getMode() const;
00452 std::string getIdentifier() const;
00453 };
00454
00458 class IVec3OutInExponentInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00459
00460 public:
00461 IVec3OutInExponentInterpolationFunction();
00462 InterpolationFunction<tgt::ivec3>* clone() const;
00463 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00464
00465 std::string getMode() const;
00466 std::string getIdentifier() const;
00467 };
00468
00472 class IVec3OutInCircInterpolationFunction : public InterpolationFunction<tgt::ivec3> {
00473
00474 public:
00475 IVec3OutInCircInterpolationFunction();
00476 InterpolationFunction<tgt::ivec3>* clone() const;
00477 tgt::ivec3 interpolate(tgt::ivec3 startvalue, tgt::ivec3 endvalue, float time) const;
00478
00479 std::string getMode() const;
00480 std::string getIdentifier() const;
00481 };
00482
00483 }
00484 #endif
00485