public override void Initialize()
        {
            base.Initialize();
            Array2d.TryVectorize = true;
            var           vectorIntegrate = GetIntegrate();
            var           _  = vectorIntegrate.Transform; // force compilation
            IVectorizable ev = ((IVectorizable)vectorIntegrate);

            if (!ev.Vectorized)
            {
                Console.Error.Write("Recurrent integration failed");
                Console.Error.WriteLine($" due to the expression\n{ev.VectorizationResult.BlockedBy.ToCSharpCode()}:\n  {ev.VectorizationResult.Reason}");
            }
            else
            {
                _integrateVector = vectorIntegrate.Transform;
            }

            Array2d.TryVectorize = false;
            _integrateScalar     = GetIntegrate().Transform;
        }
Exemplo n.º 2
0
 public Vector2 HexToScreen(IVectorizable hex)
 {
     return(Vector2.Transform(hex.Vector(), _forward));
 }