private static CoordinateTransformer CoordinateTransformer() { const double canvasMaxX = 857.8125; const double canvasMaxY = 20; const double canvasMinX = 20; const double canvasMinY = 688; const double worldMaxX = 7762; const double worldMaxY = 5184; const double worldMinX = 10; const double worldMinY = 10; var transformer = new CoordinateTransformer(worldMinX, worldMaxX, worldMinY, worldMaxY, canvasMinX, canvasMaxX, canvasMinY, canvasMaxY); return transformer; }
private void InitialiseTransformer() { var worldMinX = _currentTspItemManager.MinXCoordinate; var worldMinY = _currentTspItemManager.MinYCoordinate; var worldMaxX = _currentTspItemManager.MaxXCoordinate; var worldMaxY = _currentTspItemManager.MaxYCoordinate; const double margin = 20; const double canvasMinX = margin; const double canvasMinY = margin; var canvasMaxX = _canvas.ActualWidth - margin; var canvasMaxY = _canvas.ActualHeight - margin; // Order of canvas Y min and max arguments are swapped due to canvas coordinate // system (top-left is 0,0). This "flips" the coordinate system along the Y // axis by making the Y scale value negative so that we have bottom-left at 0,0. _transformer = new CoordinateTransformer(worldMinX, worldMaxX, worldMinY, worldMaxY, canvasMinX, canvasMaxX, canvasMaxY, canvasMinY); }