All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.cesium.HermitePolynomialApproximation.kt Maven / Gradle / Ivy

// Automatically generated - do not modify!

package cesium

/**
 * An [InterpolationAlgorithm] for performing Hermite interpolation.
 * @see Online Documentation
 */
@JsName("\$cesium__HermitePolynomialApproximation")
external object HermitePolynomialApproximation {
    /**
     * Given the desired degree, returns the number of data points required for interpolation.
     * @param [degree] The desired degree of interpolation.
     * @param [inputOrder] The order of the inputs (0 means just the data, 1 means the data and its derivative, etc).
     *   Default value - `0`
     * @return The number of required data points needed for the desired degree of interpolation.
     * @see Online Documentation
     */
    fun getRequiredDataPoints(
        degree: Double,
        inputOrder: Int? = definedExternally,
    ): Int

    /**
     * Interpolates values using Hermite Polynomial Approximation.
     * @param [x] The independent variable for which the dependent variables will be interpolated.
     * @param [xTable] The array of independent variables to use to interpolate.  The values
     *   in this array must be in increasing order and the same value must not occur twice in the array.
     * @param [yTable] The array of dependent variables to use to interpolate.  For a set of three
     *   dependent values (p,q,w) at time 1 and time 2 this should be as follows: {p1, q1, w1, p2, q2, w2}.
     * @param [yStride] The number of dependent variable values in yTable corresponding to
     *   each independent variable value in xTable.
     * @param [result] An existing array into which to store the result.
     * @return The array of interpolated values, or the result parameter if one was provided.
     * @see Online Documentation
     */
    fun interpolateOrderZero(
        x: Double,
        xTable: Array,
        yTable: Array,
        yStride: Double,
        result: Array? = definedExternally,
    ): Array

    /**
     * Interpolates values using Hermite Polynomial Approximation.
     * @param [x] The independent variable for which the dependent variables will be interpolated.
     * @param [xTable] The array of independent variables to use to interpolate.  The values
     *   in this array must be in increasing order and the same value must not occur twice in the array.
     * @param [yTable] The array of dependent variables to use to interpolate.  For a set of three
     *   dependent values (p,q,w) at time 1 and time 2 this should be as follows: {p1, q1, w1, p2, q2, w2}.
     * @param [yStride] The number of dependent variable values in yTable corresponding to
     *   each independent variable value in xTable.
     * @param [inputOrder] The number of derivatives supplied for input.
     * @param [outputOrder] The number of derivatives desired for output.
     * @param [result] An existing array into which to store the result.
     * @return The array of interpolated values, or the result parameter if one was provided.
     * @see Online Documentation
     */
    fun interpolate(
        x: Double,
        xTable: Array,
        yTable: Array,
        yStride: Double,
        inputOrder: Int,
        outputOrder: Int,
        result: Array? = definedExternally,
    ): Array
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy