private void FeatureChanged(object sender, MapInfo.Tools.FeatureChangedEventArgs e) { txtResults.Text = txtResults.Text + "\r\nFeatureChanged: " + e.ToString(); txtResults.Refresh(); UpdateObjCount(); }
private void SplitImage(string filePrefix, IList<Image> data, MapInfo list) { Image img = data[0]; list.X = (img.Width + 511) / 512; list.Y = (img.Height + 511) / 512; Bitmap output = new Bitmap(512, 512); Graphics g = Graphics.FromImage(output); MapItem item; Image image; var dlg1 = new FolderBrowserDialog(); dlg1.ShowDialog(); string path = dlg1.SelectedPath; list.LayerCount = data.Count; for (int i = 0; i < list.X; i++) { for (int j = 0; j < list.Y; j++) { item = new MapItem() {X = i, Y = j}; for (int k = 0; k < list.LayerCount; k++) { image = data[k]; g.Clear( Color.Transparent ); g.DrawImage( image, new Rectangle( -512 * i, -512 * j, img.Width, img.Height ) ); output.Save( path + "\\" + filePrefix + "_" + k + "_" + j + "_" + i + ".png", ImageFormat.Png ); item.List.Add( new MapItem.TextureInfo() {Layer = k, Texture = filePrefix + "_" + k + "_" + j + "_" + i} ); } list.Add(item); } } list.CollusionLayer = Convert.ToInt32( textBox2.Text ); FileStream fs = new FileStream( path + "\\" + filePrefix + ".xml", FileMode.Create ); StreamWriter writer = new StreamWriter( fs ); writer.Write( list.ToString() ); writer.Close(); fs.Close(); }