1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_rendering_InterpolationMode_idl__
20 #define __com_sun_star_rendering_InterpolationMode_idl__
22 module com
{ module sun
{ module star
{ module rendering
{
24 /** These constants specify the interpolation type for animation
27 With this constants, one specifies the way of interpolation that
28 takes place between two consecutive frames of a discrete animation
33 constants InterpolationMode
35 /** Perform a nearest neighbor interpolation.<p>
37 That is, when interpolating between two values v0 and v1,
38 positioned at t0 and t1, take the one which has the closest t
41 const byte NEAREST_NEIGHBOR
=1;
44 /** Perform a linear interpolation.<p>
46 That is, when interpolating at position t between two values
47 v0 and v1, positioned at t0 and t1, take the sum of v0
48 weighted with (t-t0) and v1 weighted with (t1-t).<p>
53 /** Perform a cubic interpolation.<p>
55 That is, when interpolating at position t, take the four
56 closest data points v0, v1, v2, and v3, fit a cubic curve
57 through them, and take the interpolated value from this cubic
63 /** Perform a cubic Bezier spline interpolation.<p>
65 That is, when interpolating at position t, take the three
66 closest data points v0, v1, and v2, fit a cubic Bezier spline
67 through them, and take the interpolated value from this cubic
70 const byte BEZIERSPLINE3
=4;
73 /** Perform a quadric Bezier spline interpolation.<p>
75 That is, when interpolating at position t, take the four
76 closest data points v0, v1, v2, and v3, fit a quadric Bezier
77 spline through them, and take the interpolated value from this
80 const byte BEZIERSPLINE4
=5;
87 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */