/*
 * Java
 *
 * Copyright 2021-2022 MicroEJ Corp. All rights reserved.
 * This library is provided in source code for use, modification and test, subject to license terms.
 * Any modification of the source code will break MicroEJ Corp. warranties on the whole library.
 *
 * This File is a derivative work. Subject to §4 of the applicable Apache License, MicroEJ provides the above different license terms and conditions for use.
 *
 * // Copyright (C) 2006 The Android Open Source Project
 * //
 * // Licensed under the Apache License, Version 2.0 (the "License");
 * // you may not use this file except in compliance with the License.
 * // You may obtain a copy of the License at
 * //
 * //      http://www.apache.org/licenses/LICENSE-2.0
 * //
 * // Unless required by applicable law or agreed to in writing, software
 * // distributed under the License is distributed on an "AS IS" BASIS,
 * // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * // See the License for the specific language governing permissions and
 * // limitations under the License.
 */
package ej.microvg;

/**
 * Represents a linear gradient on a vector.
 */
public class LinearGradient {

    /**
     * Creates a linear gradient.
     *
     * @param xStart
     *            the x-coordinate for the start of the gradient vector
     * @param yStart
     *            the y-coordinate for the start of the gradient vector
     * @param xEnd
     *            the x-coordinate for the end of the gradient vector
     * @param yEnd
     *            the y-coordinate for the end of the gradient vector
     * @param colors
     *            the sRGB colors to be distributed along the gradient vector
     * @param positions
     *            the relative positions [0..1] of each corresponding color in the colors array
     */
    public LinearGradient(float xStart, float yStart, float xEnd, float yEnd, int[] colors, float[] positions) {
        throw new VectorGraphicsException();
    }

    /**
     * Creates a linear gradient.
     * <p>
     * The colors are distributed evenly along the gradient vector.
     *
     * @param xStart
     *            the x-coordinate for the start of the gradient vector
     * @param yStart
     *            the y-coordinate for the start of the gradient vector
     * @param xEnd
     *            the x-coordinate for the end of the gradient vector
     * @param yEnd
     *            the y-coordinate for the end of the gradient vector
     * @param colors
     *            the sRGB colors to be distributed along the gradient vector
     */
    public LinearGradient(float xStart, float yStart, float xEnd, float yEnd, int[] colors) {
        throw new VectorGraphicsException();
    }

    /**
     * Gets the matrix of this linear gradient.
     * <p>
     * Any modification on the matrix will affect the gradient.
     *
     * @return the matrix
     */
    public Matrix getMatrix() {
        throw new VectorGraphicsException();
    }
}
