private static void Main(string[] args) { TsMapper mapper = new TsMapper("D:/Projects/ts-map-files/europe/"); mapper.Parse(); System.Console.ReadLine(); }
private static void Main(string[] args) { var mods = new System.Collections.Generic.List <Mod> { new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-me-assets-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-me-defmap-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-def-st-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\RusMap-map_v1.8.1.2.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\RusMap-model2_v1.8.1.2.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\RusMap-model_v1.8.1.2.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-assets-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-map-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-media-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-model1-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-model2-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\promods-model3-v241.scs"), new Mod(@"D:\Documents\Euro Truck Simulator 2\mod\RusMap-def_v1.8.1.2.scs"), }; mods.ForEach(x => x.Load = true); TsMapper mapper = new TsMapper("D:/Apps/Steam/steamapps/common/Euro Truck Simulator 2/", mods); mapper.IsEts2 = true; mapper.Parse(); var renderer = new TsMapRenderer(mapper); var palette = new SimpleMapPalette(); var path = @"F:/Screenshots"; int width, height, scale; width = height = scale = 4000; int upperX = 160_000; // 160_000; int lowerX = -120_000; // -120_000; int upperY = 130_000; // 130_000; int lowerY = -210_000; // -210_000; for (int y = lowerY; y < upperY; y += scale * 2) { for (int x = lowerX; x < upperX; x += scale * 2) { var bitmap = new Bitmap(width, height); PointF pos = new PointF(x, y); renderer.Render(Graphics.FromImage(bitmap), new Rectangle(0, 0, bitmap.Width, bitmap.Height), scale, pos, palette, RenderFlags.All); using (FileStream fileStream = File.Open($"{path}/{x};{y}.png", FileMode.OpenOrCreate, FileAccess.ReadWrite)) { bitmap.Save(fileStream, ImageFormat.Png); } bitmap.Dispose(); GC.Collect(); } } }
public TsMapCanvas(SetupForm f) { InitializeComponent(); //_appSettings = f.AppSettings; //JsonHelper.SaveSettings(_appSettings); _mapper = this.CreateMapper(); _palette = SettingsManager.Current.Settings.Palette.ToBrushPalette(); _mapper.Parse(); CityStripComboBox.Items.AddRange(_mapper.Cities.Where(x => !x.Hidden).ToArray()); if (!_mapper.IsEts2) { _startPoint = new PointF(-105000, 15000); } else { _startPoint = new PointF(-1000, -4000); } _renderer = this.CreateRenderer(_mapper); // Panning around MapPanel.MouseDown += (s, e) => { _dragging = true; _lastPoint = new PointF(e.X, e.Y); }; MapPanel.MouseUp += (s, e) => _dragging = false; MapPanel.MouseMove += (s, e) => { if (_dragging) { MapPanel.Invalidate(); _startPoint.X -= (e.X - _lastPoint.X) / _scale; _startPoint.Y -= (e.Y - _lastPoint.Y) / _scale; } _lastPoint = new PointF(e.X, e.Y); }; MapPanel.MouseWheel += (s, e) => { _scale += (e.Delta > 0 ? 1 : -1) * 0.05f * _scale; _scale = Math.Max(_scale, 0.0005f); MapPanel.Invalidate(); }; MapPanel.Resize += TsMapCanvas_Resize; Closed += (s, e) => { f.Close(); _tileMapGeneratorForm?.Close(); }; }
public TsMapCanvas(Form f, string path, List <Mod> mods) { InitializeComponent(); _mapper = new TsMapper(path, mods); _palette = new SimpleMapPalette(); if (path.Contains("American Truck Simulator")) { _pos = new PointF(-103000, -54444); _mapper.IsEts2 = false; } else { _pos = new PointF(850, -920); _mapper.IsEts2 = true; } _mapper.Parse(); _renderer = new TsMapRenderer(_mapper); Timer t = new Timer { Interval = 1000 / 30 }; t.Tick += (s, a) => MapPanel.Invalidate(); t.Start(); // Panning around MapPanel.MouseDown += (s, e) => _dragPoint = e.Location; MapPanel.MouseUp += (s, e) => _dragPoint = null; MapPanel.MouseMove += (s, e) => { if (_dragPoint == null) { return; } var spd = _mapScale / Math.Max(MapPanel.Width, MapPanel.Height); _pos.X = _pos.X - (e.X - _dragPoint.Value.X) * spd; _pos.Y = _pos.Y - (e.Y - _dragPoint.Value.Y) * spd; _dragPoint = e.Location; }; MapPanel.MouseWheel += TsMapCanvas_MouseWheel; MapPanel.Resize += TsMapCanvas_Resize; Closed += (s, e) => { f.Close(); _imageExportForm?.Close(); }; }
private void GenerateTileMapToolStripMenuItem_Click(object sender, EventArgs e) { if (_tileMapGeneratorForm == null || _tileMapGeneratorForm.IsDisposed) { _tileMapGeneratorForm = new TileMapGeneratorForm(); } _tileMapGeneratorForm.Show(); _tileMapGeneratorForm.BringToFront(); _tileMapGeneratorForm.GenerateTileMap += () => // Called when export button is pressed in TileMapGeneratorForm { _tileMapGeneratorForm.Close(); MapPanel.Enabled = false; //Task.Run(() => //{ UpdateProgress("Loading map...", true); _tilesGeneratorMapper = this.CreateMapper(); _tilesGeneratorMapper.Parse(); UpdateProgress("Loading renderer...", true); _tilesGeneratorRenderer = this.CreateRenderer(_tilesGeneratorMapper); UpdateProgress("Generating tiles...", true); _tilesGeneratorMapper.ExportInfo(SettingsManager.Current.Settings.TileGenerator.ExportFlags, SettingsManager.Current.Settings.TileGenerator.LastTileMapPath); GenerateTileMap(SettingsManager.Current.Settings.TileGenerator.StartZoomLevel, SettingsManager.Current.Settings.TileGenerator.EndZoomLevel, SettingsManager.Current.Settings.TileGenerator.LastTileMapPath, SettingsManager.Current.Settings.TileGenerator.GenerateTiles, (SettingsManager.Current.Settings.TileGenerator.ExportFlags & ExportFlags.TileMapInfo) == ExportFlags.TileMapInfo, SettingsManager.Current.Settings.TileGenerator.RenderFlags); MessageBox.Show("Tile map has been generated!", "TsMap - Tile Map Generation Finished", MessageBoxButtons.OK, MessageBoxIcon.Information); UpdateProgress("Ready.", false); Invoke(new Action(() => { Focus(); MapPanel.Enabled = true; })); //}); }; }
public TsMapCanvas(Form f, string path) { InitializeComponent(); SetStyle(ControlStyles.UserPaint, true); SetStyle(ControlStyles.OptimizedDoubleBuffer, true); SetStyle(ControlStyles.AllPaintingInWmPaint, true); _pos = (path.Contains("American Truck Simulator")) ? new PointF(-103000, 16000) : new PointF(850, -920); var mapper = new TsMapper(path); mapper.Parse(); _renderer = new TsMapRenderer(mapper, new SimpleMapPalette()); Timer t = new Timer { Interval = 1000 / 30 }; t.Tick += (s, a) => Invalidate(); t.Start(); // Panning around MouseDown += (s, e) => _dragPoint = e.Location; MouseUp += (s, e) => _dragPoint = null; MouseMove += (s, e) => { if (_dragPoint == null) { return; } var spd = _mapScale / Math.Max(this.Width, this.Height); _pos.X = _pos.X - (e.X - _dragPoint.Value.X) * spd; _pos.Y = _pos.Y - (e.Y - _dragPoint.Value.Y) * spd; _dragPoint = e.Location; }; MouseWheel += TsMapCanvas_MouseWheel; Resize += TsMapCanvas_Resize; Closed += (s, e) => { f.Close(); }; }
public TsMapCanvas(SetupForm f, string path, List <Mod> mods) { InitializeComponent(); _appSettings = f.AppSettings; JsonHelper.SaveSettings(_appSettings); _mapper = new TsMapper(path, mods); _palette = new SimpleMapPalette(); _mapper.Parse(); CityStripComboBox.Items.AddRange(_mapper.Cities.Where(x => !x.Hidden).ToArray()); if (!_mapper.IsEts2) { _startPoint = new PointF(-105000, 15000); } else { _startPoint = new PointF(-1000, -4000); } _renderer = new TsMapRenderer(_mapper); Timer t = new Timer { Interval = 1000 / 30 }; t.Tick += (s, a) => MapPanel.Invalidate(); t.Start(); // Panning around MapPanel.MouseDown += (s, e) => { _dragging = true; _lastPoint = new PointF(e.X, e.Y); }; MapPanel.MouseUp += (s, e) => _dragging = false; MapPanel.MouseMove += (s, e) => { if (_dragging) { _startPoint.X -= (e.X - _lastPoint.X) / _scale; _startPoint.Y -= (e.Y - _lastPoint.Y) / _scale; } _lastPoint = new PointF(e.X, e.Y); }; MapPanel.MouseWheel += (s, e) => { _scale += (e.Delta > 0 ? 1 : -1) * 0.05f * _scale; _scale = Math.Max(_scale, 0.0005f); }; MapPanel.Resize += TsMapCanvas_Resize; Closed += (s, e) => { f.Close(); _tileMapGeneratorForm?.Close(); }; }