Skip to content

Commit

Permalink
Merge branch 'experimental' into 'main'
Browse files Browse the repository at this point in the history
Add experimental project (LHTSS reflectance curves & Spectral.js)

See merge request Wacton/Unicolour!76
  • Loading branch information
waacton committed Feb 8, 2025
2 parents 8c1bf1f + 13d780c commit 9ad552f
Show file tree
Hide file tree
Showing 132 changed files with 2,699 additions and 1,249 deletions.
98 changes: 49 additions & 49 deletions Example.Console/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@
var inputHex = AnsiConsole.Ask<string>("[dim]Colour hex:[/]");
try
{
var unicolour = new Unicolour(config, inputHex);
var useWhiteText = unicolour.Difference(white, DeltaE.Cie76) > unicolour.Difference(black, DeltaE.Cie76);
AnsiConsole.MarkupLine(GetBar(unicolour, useWhiteText));
AnsiConsole.Write(GetTable(unicolour));
var colour = new Unicolour(config, inputHex);
var useWhiteText = colour.Difference(white, DeltaE.Cie76) > colour.Difference(black, DeltaE.Cie76);
AnsiConsole.MarkupLine(GetBar(colour, useWhiteText));
AnsiConsole.Write(GetTable(colour));
}
catch (Exception e)
{
Expand All @@ -30,20 +30,20 @@
Console.WriteLine();
}

string GetBar(Unicolour unicolour, bool useWhiteText)
string GetBar(Unicolour colour, bool useWhiteText)
{
var textHex = useWhiteText ? white.Hex : black.Hex;
var leftSpace = (barLength - unicolour.Description.Length) / 2;
var rightSpace = barLength - unicolour.Description.Length - leftSpace;
var leftSpace = (barLength - colour.Description.Length) / 2;
var rightSpace = barLength - colour.Description.Length - leftSpace;
var leftSpaces = new string(' ', leftSpace);
var rightSpaces = new string(' ', rightSpace);
var text = $"{leftSpaces}{unicolour.Description}{rightSpaces}";
return $"[{textHex} on {unicolour.Hex}]{text}[/]";
var text = $"{leftSpaces}{colour.Description}{rightSpaces}";
return $"[{textHex} on {colour.Hex}]{text}[/]";
}

static Table GetTable(Unicolour unicolour)
static Table GetTable(Unicolour colour)
{
var rgb255 = unicolour.Rgb.Byte255;
var rgb255 = colour.Rgb.Byte255;
var table = new Table
{
Border = TableBorder.Rounded,
Expand All @@ -53,44 +53,44 @@ static Table GetTable(Unicolour unicolour)
table.AddColumn(new TableColumn("Space").Width(col1Width));
table.AddColumn(new TableColumn("Value").Width(col2Width));

table.AddRow("Hex", $"{unicolour.Hex}");
table.AddRow("Rgb 255", $"{unicolour.Rgb.Byte255}");
table.AddRow("Rgb", $"{unicolour.Rgb}");
table.AddRow("Rgb Lin.", $"{unicolour.RgbLinear}");
table.AddRow("Hsl", $"{unicolour.Hsl}");
table.AddRow("Hsb", $"{unicolour.Hsb}");
table.AddRow("Hwb", $"{unicolour.Hwb}");
table.AddRow("Hsi", $"{unicolour.Hsi}");
table.AddRow("Xyz", $"{unicolour.Xyz}");
table.AddRow("Xyy", $"{unicolour.Xyy}");
table.AddRow("Wxy", $"{unicolour.Wxy}");
table.AddRow("Lab", $"{unicolour.Lab}");
table.AddRow("Lchab", $"{unicolour.Lchab}");
table.AddRow("Luv", $"{unicolour.Luv}");
table.AddRow("Lchuv", $"{unicolour.Lchuv}");
table.AddRow("Hsluv", $"{unicolour.Hsluv}");
table.AddRow("Hpluv", $"{unicolour.Hpluv}");
table.AddRow("Ypbpr", $"{unicolour.Ypbpr}");
table.AddRow("Ycbcr", $"{unicolour.Ycbcr}");
table.AddRow("Ycgco", $"{unicolour.Ycgco}");
table.AddRow("Yuv", $"{unicolour.Yuv}");
table.AddRow("Yiq", $"{unicolour.Yiq}");
table.AddRow("Ydbdr", $"{unicolour.Ydbdr}");
table.AddRow("Tsl", $"{unicolour.Tsl}");
table.AddRow("Xyb", $"{unicolour.Xyb}");
table.AddRow("Ipt", $"{unicolour.Ipt}");
table.AddRow("Ictcp", $"{unicolour.Ictcp}");
table.AddRow("Jzazbz", $"{unicolour.Jzazbz}");
table.AddRow("Jzczhz", $"{unicolour.Jzczhz}");
table.AddRow("Oklab", $"{unicolour.Oklab}");
table.AddRow("Oklch", $"{unicolour.Oklch}");
table.AddRow("Okhsv", $"{unicolour.Okhsv}");
table.AddRow("Okhsl", $"{unicolour.Okhsl}");
table.AddRow("Okhwb", $"{unicolour.Okhwb}");
table.AddRow("Cam02", $"{unicolour.Cam02}");
table.AddRow("Cam16", $"{unicolour.Cam16}");
table.AddRow("Hct", $"{unicolour.Hct}");
table.AddRow("Icc", $"{unicolour.Icc}");
table.AddRow("Hex", $"{colour.Hex}");
table.AddRow("Rgb 255", $"{colour.Rgb.Byte255}");
table.AddRow("Rgb", $"{colour.Rgb}");
table.AddRow("Rgb Lin.", $"{colour.RgbLinear}");
table.AddRow("Hsl", $"{colour.Hsl}");
table.AddRow("Hsb", $"{colour.Hsb}");
table.AddRow("Hwb", $"{colour.Hwb}");
table.AddRow("Hsi", $"{colour.Hsi}");
table.AddRow("Xyz", $"{colour.Xyz}");
table.AddRow("Xyy", $"{colour.Xyy}");
table.AddRow("Wxy", $"{colour.Wxy}");
table.AddRow("Lab", $"{colour.Lab}");
table.AddRow("Lchab", $"{colour.Lchab}");
table.AddRow("Luv", $"{colour.Luv}");
table.AddRow("Lchuv", $"{colour.Lchuv}");
table.AddRow("Hsluv", $"{colour.Hsluv}");
table.AddRow("Hpluv", $"{colour.Hpluv}");
table.AddRow("Ypbpr", $"{colour.Ypbpr}");
table.AddRow("Ycbcr", $"{colour.Ycbcr}");
table.AddRow("Ycgco", $"{colour.Ycgco}");
table.AddRow("Yuv", $"{colour.Yuv}");
table.AddRow("Yiq", $"{colour.Yiq}");
table.AddRow("Ydbdr", $"{colour.Ydbdr}");
table.AddRow("Tsl", $"{colour.Tsl}");
table.AddRow("Xyb", $"{colour.Xyb}");
table.AddRow("Ipt", $"{colour.Ipt}");
table.AddRow("Ictcp", $"{colour.Ictcp}");
table.AddRow("Jzazbz", $"{colour.Jzazbz}");
table.AddRow("Jzczhz", $"{colour.Jzczhz}");
table.AddRow("Oklab", $"{colour.Oklab}");
table.AddRow("Oklch", $"{colour.Oklch}");
table.AddRow("Okhsv", $"{colour.Okhsv}");
table.AddRow("Okhsl", $"{colour.Okhsl}");
table.AddRow("Okhwb", $"{colour.Okhwb}");
table.AddRow("Cam02", $"{colour.Cam02}");
table.AddRow("Cam16", $"{colour.Cam16}");
table.AddRow("Hct", $"{colour.Hct}");
table.AddRow("Icc", $"{colour.Icc}");
return table;
}

4 changes: 2 additions & 2 deletions Example.Diagrams/Utils.cs
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,8 @@ internal static List<Marker> GetUvFillMarkers((double min, double max) rangeU, (
}
else
{
var unicolour = new Unicolour(chromaticity);
color = unicolour.IsImaginary ? null : GetScaledColour(unicolour.Rgb);
var colour = new Unicolour(chromaticity);
color = colour.IsImaginary ? null : GetScaledColour(colour.Rgb);
ChromaticityCache.Add(chromaticity, color);
}

Expand Down
1 change: 1 addition & 0 deletions Example.Gradients/Example.Gradients.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@

<ItemGroup>
<ProjectReference Include="..\Unicolour.Datasets\Unicolour.Datasets.csproj" />
<ProjectReference Include="..\Unicolour.Experimental\Unicolour.Experimental.csproj" />
<ProjectReference Include="..\Unicolour\Unicolour.csproj" />
</ItemGroup>

Expand Down
Loading

0 comments on commit 9ad552f

Please sign in to comment.