private UvMapping[] GetUvMapping(Vector3 position) { var xString = position.X.ToString("000"); var yString = position.Y.ToString("000"); var zString = position.Z.ToString("000"); var text = xString.Substring(Math.Max(0, xString.Length - 4), 3) + yString.Substring(Math.Max(0, yString.Length - 4), 3) + zString.Substring(Math.Max(0, zString.Length - 4), 3); var result = new UvMapping[9]; for (var i = 0; i < 9; i++) { var xOffset = text[i] - '0'; var yOffset = i; var xStep = 1.0f / 10; var xStart = xOffset * xStep; var xEnd = (xOffset + 1) * xStep; var yStep = 1.0f / 9; var yStart = yOffset * yStep; var yEnd = (yOffset + 1) * yStep; var uvMapping = new UvMapping { TopLeft = new Vector2(xEnd, yStart), TopRight = new Vector2(xStart, yStart), BottomLeft = new Vector2(xEnd, yEnd), BottomRight = new Vector2(xStart, yEnd), }; result[i] = uvMapping; } return(result); }
private void OnSelectMapping(object sender, MouseButtonEventArgs e) { SelectedMapping = (UvMapping)Options.SelectedItem; Close(); }