ColorVisionSimulator

Simulator for various types of color vision deficiency.

Uses transformation matrices to approximate how colors appear to people with
different types of color blindness.

Methods

public function areDistinguishable(ColorInterface $first, ColorInterface $second, VisionProfile $profile, float $threshold): bool

Check if two colors are distinguishable under a given vision profile.

Parameters
NameTypeDefault
$first ColorInterface -
$second ColorInterface -
$profile VisionProfile null
$threshold float 0.06

create

static
public static function create(VisionProfile $profile): ColorVisionSimulator

Create a new vision simulator instance for a specific profile.

Parameters
NameTypeDefault
$profile VisionProfile -
public function getProfile(): VisionProfile

Get the current vision profile.

profiles

static
public static function profiles(): array

Get all available vision profiles.

public function simulate(ColorInterface $color, VisionProfile $profile): ColorInterface
Parameters
NameTypeDefault
$color ColorInterface -
$profile VisionProfile null
public function simulateAll(array $colors, VisionProfile $profile): array

Simulate vision deficiency for multiple colors.

Parameters
NameTypeDefault
$colors array -
$profile VisionProfile null