FabricJS 通过角度计算出 Gradient 所需的 Coords

115 阅读1分钟

在自定义 Gradient 中通常需要用到 Coords 两个点相关信息,可以通过简易的 UI 来实现基于角度来计算出合适的渐变效果。

const gradAngleToCoords = (paramsAngle: number) => {
    const anglePI = -parseInt(paramsAngle.toString(), 10) * (Math.PI / 180);
    return {
        x1: Math.round(50 + Math.sin(anglePI) * 50) / 100,
        y1: Math.round(50 + Math.cos(anglePI) * 50) / 100,
        x2: Math.round(50 + Math.sin(anglePI + Math.PI) * 50) / 100,
        y2: Math.round(50 + Math.cos(anglePI + Math.PI) * 50) / 100,
    };
};