From 8f6fd5d1f610d345db54acaa60db90b15cfc444f Mon Sep 17 00:00:00 2001 From: Nomango Date: Fri, 9 Oct 2020 23:17:50 +0800 Subject: [PATCH] [chore] add Interpolator --- projects/kiwano/kiwano.vcxproj | 10 +++ projects/kiwano/kiwano.vcxproj.filters | 33 +++++++++ src/kiwano/2d/animation/Animation.cpp | 26 +++++++ src/kiwano/2d/animation/Animation.h | 29 ++++++++ src/kiwano/2d/animation/EaseFunc.cpp | 84 ++++++++++++++++++++++ src/kiwano/2d/animation/EaseFunc.h | 69 ++++++++++++++++++ src/kiwano/2d/animation/FrameAnimation.cpp | 26 +++++++ src/kiwano/2d/animation/FrameAnimation.h | 29 ++++++++ src/kiwano/2d/animation/Interpolator.h | 78 ++++++++++++++++++++ src/kiwano/2d/animation/Key.h | 69 ++++++++++++++++++ src/kiwano/2d/animation/TweenAnimation.cpp | 26 +++++++ src/kiwano/2d/animation/TweenAnimation.h | 29 ++++++++ 12 files changed, 508 insertions(+) create mode 100644 src/kiwano/2d/animation/Animation.cpp create mode 100644 src/kiwano/2d/animation/Animation.h create mode 100644 src/kiwano/2d/animation/EaseFunc.cpp create mode 100644 src/kiwano/2d/animation/EaseFunc.h create mode 100644 src/kiwano/2d/animation/FrameAnimation.cpp create mode 100644 src/kiwano/2d/animation/FrameAnimation.h create mode 100644 src/kiwano/2d/animation/Interpolator.h create mode 100644 src/kiwano/2d/animation/Key.h create mode 100644 src/kiwano/2d/animation/TweenAnimation.cpp create mode 100644 src/kiwano/2d/animation/TweenAnimation.h diff --git a/projects/kiwano/kiwano.vcxproj b/projects/kiwano/kiwano.vcxproj index 64816eec..c1e30927 100644 --- a/projects/kiwano/kiwano.vcxproj +++ b/projects/kiwano/kiwano.vcxproj @@ -9,6 +9,12 @@ + + + + + + @@ -123,6 +129,10 @@ + + + + diff --git a/projects/kiwano/kiwano.vcxproj.filters b/projects/kiwano/kiwano.vcxproj.filters index 2717e40a..b7a6e769 100644 --- a/projects/kiwano/kiwano.vcxproj.filters +++ b/projects/kiwano/kiwano.vcxproj.filters @@ -37,6 +37,9 @@ {d15f4de1-7c2c-40d6-a3ce-68860b95a61e} + + {254c8f6b-8a27-4241-bae1-39cee771ccde} + @@ -369,6 +372,24 @@ core + + 2d\animation + + + 2d\animation + + + 2d\animation + + + 2d\animation + + + 2d\animation + + + 2d\animation + @@ -605,6 +626,18 @@ core + + 2d\animation + + + 2d\animation + + + 2d\animation + + + 2d\animation + diff --git a/src/kiwano/2d/animation/Animation.cpp b/src/kiwano/2d/animation/Animation.cpp new file mode 100644 index 00000000..c7b1420a --- /dev/null +++ b/src/kiwano/2d/animation/Animation.cpp @@ -0,0 +1,26 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#include + +namespace kiwano +{ + +} diff --git a/src/kiwano/2d/animation/Animation.h b/src/kiwano/2d/animation/Animation.h new file mode 100644 index 00000000..dba82b5f --- /dev/null +++ b/src/kiwano/2d/animation/Animation.h @@ -0,0 +1,29 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once +#include + +namespace kiwano +{ + + + +} diff --git a/src/kiwano/2d/animation/EaseFunc.cpp b/src/kiwano/2d/animation/EaseFunc.cpp new file mode 100644 index 00000000..d2d373d4 --- /dev/null +++ b/src/kiwano/2d/animation/EaseFunc.cpp @@ -0,0 +1,84 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#include +#include + +namespace kiwano +{ + +inline EaseFunc MakeEaseIn(float rate) +{ + return std::bind(math::EaseIn, std::placeholders::_1, rate); +} +inline EaseFunc MakeEaseOut(float rate) +{ + return std::bind(math::EaseOut, std::placeholders::_1, rate); +} +inline EaseFunc MakeEaseInOut(float rate) +{ + return std::bind(math::EaseInOut, std::placeholders::_1, rate); +} +inline EaseFunc MakeEaseElasticIn(float period) +{ + return std::bind(math::EaseElasticIn, std::placeholders::_1, period); +} +inline EaseFunc MakeEaseElasticOut(float period) +{ + return std::bind(math::EaseElasticOut, std::placeholders::_1, period); +} +inline EaseFunc MakeEaseElasticInOut(float period) +{ + return std::bind(math::EaseElasticInOut, std::placeholders::_1, period); +} + +KGE_API EaseFunc Ease::Linear = math::Linear; +KGE_API EaseFunc Ease::EaseIn = MakeEaseIn(2.f); +KGE_API EaseFunc Ease::EaseOut = MakeEaseOut(2.f); +KGE_API EaseFunc Ease::EaseInOut = MakeEaseInOut(2.f); +KGE_API EaseFunc Ease::ExpoIn = math::EaseExponentialIn; +KGE_API EaseFunc Ease::ExpoOut = math::EaseExponentialOut; +KGE_API EaseFunc Ease::ExpoInOut = math::EaseExponentialInOut; +KGE_API EaseFunc Ease::BounceIn = math::EaseBounceIn; +KGE_API EaseFunc Ease::BounceOut = math::EaseBounceOut; +KGE_API EaseFunc Ease::BounceInOut = math::EaseBounceInOut; +KGE_API EaseFunc Ease::ElasticIn = MakeEaseElasticIn(0.3f); +KGE_API EaseFunc Ease::ElasticOut = MakeEaseElasticOut(0.3f); +KGE_API EaseFunc Ease::ElasticInOut = MakeEaseElasticInOut(0.3f); +KGE_API EaseFunc Ease::SineIn = math::EaseSineIn; +KGE_API EaseFunc Ease::SineOut = math::EaseSineOut; +KGE_API EaseFunc Ease::SineInOut = math::EaseSineInOut; +KGE_API EaseFunc Ease::BackIn = math::EaseBackIn; +KGE_API EaseFunc Ease::BackOut = math::EaseBackOut; +KGE_API EaseFunc Ease::BackInOut = math::EaseBackInOut; +KGE_API EaseFunc Ease::QuadIn = math::EaseQuadIn; +KGE_API EaseFunc Ease::QuadOut = math::EaseQuadOut; +KGE_API EaseFunc Ease::QuadInOut = math::EaseQuadInOut; +KGE_API EaseFunc Ease::CubicIn = math::EaseCubicIn; +KGE_API EaseFunc Ease::CubicOut = math::EaseCubicOut; +KGE_API EaseFunc Ease::CubicInOut = math::EaseCubicInOut; +KGE_API EaseFunc Ease::QuartIn = math::EaseQuartIn; +KGE_API EaseFunc Ease::QuartOut = math::EaseQuartOut; +KGE_API EaseFunc Ease::QuartInOut = math::EaseQuartInOut; +KGE_API EaseFunc Ease::QuintIn = math::EaseQuintIn; +KGE_API EaseFunc Ease::QuintOut = math::EaseQuintOut; +KGE_API EaseFunc Ease::QuintInOut = math::EaseQuintInOut; + +} diff --git a/src/kiwano/2d/animation/EaseFunc.h b/src/kiwano/2d/animation/EaseFunc.h new file mode 100644 index 00000000..96108df5 --- /dev/null +++ b/src/kiwano/2d/animation/EaseFunc.h @@ -0,0 +1,69 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once +#include + +namespace kiwano +{ + +/// \~chinese +/// @brief 缓动函数 +using EaseFunc = Function; + +/// \~chinese +/// @brief 缓动函数枚举 +/// @details 查看 https://easings.net 获取更多信息 +struct Ease +{ + static KGE_API EaseFunc Linear; ///< 线性 + static KGE_API EaseFunc EaseIn; ///< 由慢变快 + static KGE_API EaseFunc EaseOut; ///< 由快变慢 + static KGE_API EaseFunc EaseInOut; ///< 由慢变快, 再由快变慢 + static KGE_API EaseFunc ExpoIn; ///< 由慢变极快 + static KGE_API EaseFunc ExpoOut; ///< 由极快变慢 + static KGE_API EaseFunc ExpoInOut; ///< 由慢至极快, 再由极快边慢 + static KGE_API EaseFunc ElasticIn; ///< 自起点赋予弹性 + static KGE_API EaseFunc ElasticOut; ///< 自终点赋予弹性 + static KGE_API EaseFunc ElasticInOut; ///< 再起点和终点赋予弹性 + static KGE_API EaseFunc BounceIn; ///< 自起点赋予反弹力 + static KGE_API EaseFunc BounceOut; ///< 自终点赋予反弹力 + static KGE_API EaseFunc BounceInOut; ///< 在起点和终点赋予反弹力 + static KGE_API EaseFunc BackIn; + static KGE_API EaseFunc BackOut; + static KGE_API EaseFunc BackInOut; + static KGE_API EaseFunc QuadIn; + static KGE_API EaseFunc QuadOut; + static KGE_API EaseFunc QuadInOut; + static KGE_API EaseFunc CubicIn; + static KGE_API EaseFunc CubicOut; + static KGE_API EaseFunc CubicInOut; + static KGE_API EaseFunc QuartIn; + static KGE_API EaseFunc QuartOut; + static KGE_API EaseFunc QuartInOut; + static KGE_API EaseFunc QuintIn; + static KGE_API EaseFunc QuintOut; + static KGE_API EaseFunc QuintInOut; + static KGE_API EaseFunc SineIn; + static KGE_API EaseFunc SineOut; + static KGE_API EaseFunc SineInOut; +}; + +} diff --git a/src/kiwano/2d/animation/FrameAnimation.cpp b/src/kiwano/2d/animation/FrameAnimation.cpp new file mode 100644 index 00000000..c7b1420a --- /dev/null +++ b/src/kiwano/2d/animation/FrameAnimation.cpp @@ -0,0 +1,26 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#include + +namespace kiwano +{ + +} diff --git a/src/kiwano/2d/animation/FrameAnimation.h b/src/kiwano/2d/animation/FrameAnimation.h new file mode 100644 index 00000000..dba82b5f --- /dev/null +++ b/src/kiwano/2d/animation/FrameAnimation.h @@ -0,0 +1,29 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once +#include + +namespace kiwano +{ + + + +} diff --git a/src/kiwano/2d/animation/Interpolator.h b/src/kiwano/2d/animation/Interpolator.h new file mode 100644 index 00000000..1ee64a70 --- /dev/null +++ b/src/kiwano/2d/animation/Interpolator.h @@ -0,0 +1,78 @@ +// Copyright (c) 2019-2020 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once +#include +#include +#include + +namespace kiwano +{ + +#define KGE_INTERPOLATOR_NUMRIC_INTERPOLATE_IMPL(TYPE) \ + inline TYPE Interpolate(TYPE start, TYPE end, float frac) \ + { \ + return NumricInterpolate(start, end, Fraction(frac)); \ + } + +class KGE_API Interpolator +{ +public: + inline Interpolator() {} + + inline Interpolator(const EaseFunc& ease_func) + : ease_func_(ease_func) + { + } + + KGE_INTERPOLATOR_NUMRIC_INTERPOLATE_IMPL(int) + KGE_INTERPOLATOR_NUMRIC_INTERPOLATE_IMPL(unsigned) + KGE_INTERPOLATOR_NUMRIC_INTERPOLATE_IMPL(float) + KGE_INTERPOLATOR_NUMRIC_INTERPOLATE_IMPL(double) + + template + inline _Ty Interpolate(_Ty start, _Ty end, float frac) + { + if (NumricInterpolate(0, 1, Fraction(frac)) == 1) + return end; + return start; + } + +private: + inline float Fraction(float frac) + { + if (ease_func_) + { + return ease_func_(frac); + } + return frac; + } + + template + inline _Ty NumricInterpolate(_Ty start, _Ty end, float frac) + { + return start + static_cast<_Ty>(math::Floor(static_cast(end - start) * frac)); + } + +private: + EaseFunc ease_func_; +}; + +} diff --git a/src/kiwano/2d/animation/Key.h b/src/kiwano/2d/animation/Key.h new file mode 100644 index 00000000..2e5f241a --- /dev/null +++ b/src/kiwano/2d/animation/Key.h @@ -0,0 +1,69 @@ +// Copyright (c) 2019-2020 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once +#include + +namespace kiwano +{ + +template +class KeyValue +{ +public: + typedef _Ty value_type; + typedef Value<_Ty, _NotifierTy> property_type; + + inline KeyValue(const property_type& prop, value_type end_value) + : end_value_(end_value) + , prop_(prop) + , interpolator_() + { + } + + inline KeyValue(const property_type& prop, value_type end_value, const EaseFunc& ease_func) + : end_value_(end_value) + , prop_(prop) + , interpolator_(ease_func) + { + } + + inline property_type GetProperty() const + { + return prop_; + } + + inline value_type GetEndValue() const + { + return end_value_; + } + + inline const Interpolator& GetInterpolator() const + { + return interpolator_; + } + +private: + property_type prop_; + value_type end_value_; + Interpolator interpolator_; +}; + +} diff --git a/src/kiwano/2d/animation/TweenAnimation.cpp b/src/kiwano/2d/animation/TweenAnimation.cpp new file mode 100644 index 00000000..c7b1420a --- /dev/null +++ b/src/kiwano/2d/animation/TweenAnimation.cpp @@ -0,0 +1,26 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#include + +namespace kiwano +{ + +} diff --git a/src/kiwano/2d/animation/TweenAnimation.h b/src/kiwano/2d/animation/TweenAnimation.h new file mode 100644 index 00000000..dba82b5f --- /dev/null +++ b/src/kiwano/2d/animation/TweenAnimation.h @@ -0,0 +1,29 @@ +// Copyright (c) 2016-2018 Kiwano - Nomango +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +#pragma once +#include + +namespace kiwano +{ + + + +}