概要 この記事では2次ベジェ曲線のバウンディングボックスを求める方法を解説する。 求めるバウンディングボックスは2つあり、2次ベジェ曲線の3つの制御点(始点・制御点・終点)を囲む最小の矩形範囲(上記の青線)と、実際に引かれるベジェ曲線を囲む最小の矩形範囲(上記の橙線)になる。 まずは、計算が簡単な前者から解説する。 3つの制御点を囲む最小の矩形範囲を求める type Point = { x: number; y: number; }; const min = (a: Point, b: Point): Point => { return { x: Math.min(a.x, b.x), y: Math.min(a.y, b.y) }; }; const max = (a: Point, b: Point): Point => { return { x: Math.max(a.x, b.x)