private static void DrawObjectsToImage(Bitmap bitmap, ObjectLayer layer, Color color) { //*** Exception, falls eines der Parameter null ist ********************************************** if (bitmap == null || layer == null || color == null) { throw new NullReferenceException("Parameter ungültig!"); } //*** Exception, falls Bild und Objektebene unterschiedliche Dimension haben ********************* if (bitmap.Width != layer.Map.Width || bitmap.Height != layer.Map.Height) { throw new ArgumentOutOfRangeException("bitmap"); } //*** Bildprozessor anlegen ********************************************************************** using (var processor = new BitmapProcessor(bitmap)) { //*** Über alle Konturpunkte der Objekte iterieren ******************************************* foreach (Point point in layer.Objects.ToArray().SelectMany(imageObject => imageObject.Contour.GetPoints())) { //*** Konturpunkt im Bild auf gegebene Farbe setzen ************************************** processor.SetRed(point.X, point.Y, color.R); processor.SetGreen(point.X, point.Y, color.G); processor.SetBlue(point.X, point.Y, color.B); } } }