anchor.diff:    static const int _MAX_LENGTH_FOR_MAIN_DIRECTION = 1;
   
     static const double _MAX_LENGTH_WITH_PRECISION = 1.001;
  -  
  +
  +  static const num SQRT2_2 = Math.SQRT2/2;
  +
   //=============================================================================
   
     StageXL.Vector mainDirection = new StageXL.Vector.zero();
  
positive.code: 
    StageXL.Vector downLeftDirection;
    StageXL.Vector downRightDirection;
    
  //=============================================================================
  
    DirectionSystem() {
      upLeftDirection = upDirection.rotate(_makeRadians(-45));
      upRightDirection = upDirection.rotate(_makeRadians(45));
  
      downLeftDirection = downDirection.rotate(_makeRadians(45));
      downRightDirection = downDirection.rotate(_makeRadians(-45));
    }
    
  //=============================================================================
  
    /**
  
negative.code:   void rotateDirectionsAngles(num angles) {
      rotateDirectionsRadians(_makeRadians(angles));
    }
  
  //=============================================================================
  
    num _makeRadians(num angles) => angles * (Math.PI / 180);
  