package.src.graphic.LinearGradient.ts Maven / Gradle / Ivy
import Gradient, {GradientObject, GradientColorStop} from './Gradient';
export interface LinearGradientObject extends GradientObject {
type: 'linear'
x: number
y: number
x2: number
y2: number
}
/**
* x, y, x2, y2 are all percent from 0 to 1 when globalCoord is false
*/
export default class LinearGradient extends Gradient {
type: 'linear'
x: number
y: number
x2: number
y2: number
constructor(
x: number, y: number, x2: number, y2: number,
colorStops?: GradientColorStop[], globalCoord?: boolean
) {
super(colorStops);
// Should do nothing more in this constructor. Because gradient can be
// declard by `color: {type: 'linear', colorStops: ...}`, where
// this constructor will not be called.
this.x = x == null ? 0 : x;
this.y = y == null ? 0 : y;
this.x2 = x2 == null ? 1 : x2;
this.y2 = y2 == null ? 0 : y2;
// Can be cloned
this.type = 'linear';
// If use global coord
this.global = globalCoord || false;
}
};
© 2015 - 2025 Weber Informatics LLC | Privacy Policy