in FigmaSharp.Views/FigmaSharp.Views.Cocoa/Graphics/PathBuilder.cs [171:276]
private void HandleCommand(string command)
{
var c = command[0];
if (_lastCommand != '~' && (char.IsDigit(c) || c == '-'))
{
if (_lastCommand == 'M')
{
_commandStack.Push(command);
HandleCommand('L');
}
else if (_lastCommand == 'm')
{
_commandStack.Push(command);
HandleCommand('l');
}
else if (_lastCommand == 'L')
{
_commandStack.Push(command);
HandleCommand('L');
}
else if (_lastCommand == 'l')
{
_commandStack.Push(command);
HandleCommand('l');
}
else if (_lastCommand == 'H')
{
_commandStack.Push(command);
HandleCommand('H');
}
else if (_lastCommand == 'h')
{
_commandStack.Push(command);
HandleCommand('h');
}
else if (_lastCommand == 'V')
{
_commandStack.Push(command);
HandleCommand('V');
}
else if (_lastCommand == 'v')
{
_commandStack.Push(command);
HandleCommand('v');
}
else if (_lastCommand == 'C')
{
_commandStack.Push(command);
HandleCommand('C');
}
else if (_lastCommand == 'c')
{
_commandStack.Push(command);
HandleCommand('c');
}
else if (_lastCommand == 'S')
{
_commandStack.Push(command);
HandleCommand('S');
}
else if (_lastCommand == 's')
{
_commandStack.Push(command);
HandleCommand('s');
}
else if (_lastCommand == 'Q')
{
_commandStack.Push(command);
HandleCommand('Q');
}
else if (_lastCommand == 'q')
{
_commandStack.Push(command);
HandleCommand('q');
}
else if (_lastCommand == 'T')
{
_commandStack.Push(command);
HandleCommand('T');
}
else if (_lastCommand == 't')
{
_commandStack.Push(command);
HandleCommand('t');
}
else if (_lastCommand == 'A')
{
_commandStack.Push(command);
HandleCommand('A');
}
else if (_lastCommand == 'a')
{
_commandStack.Push(command);
HandleCommand('a');
}
else
{
LoggingService.LogError("Don't know how to handle the path command: " + command);
}
}
else
{
HandleCommand(c);
}
}