@pbroom/color-kit/driverColor area

normalizeColorAreaPointer

Normalizes a pointer position against the area's client rect into clamped [0, 1] coordinates (x right, y down). Returns null for an empty rect or non-finite input.

functionimport { normalizeColorAreaPointer } from '@pbroom/color-kit/driver';color-area.ts:454
function normalizeColorAreaPointer(
  clientX: number,
  clientY: number,
  rect: ColorAreaPointerRect,
): { x: number; y: number } | null;

Parameters

clientXnumber
clientYnumber

Returns

{ x: number; y: number } | null

Example

TypeScript
import { normalizeColorAreaPointer } from '@pbroom/color-kit/driver';

const rect = { left: 100, top: 20, width: 200, height: 100 };
normalizeColorAreaPointer(150, 40, rect); // → { x: 0.25, y: 0.2 }
normalizeColorAreaPointer(50, 400, rect); // → { x: 0, y: 1 }