Autor Beitrag
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Sa 22.12.07 15:47 
user profile iconBenBE hat folgendes geschrieben:
Kannste den irgendwie mal erklären???

Das mal von dir zu hören ;)
Und noch besser, ich glaube, ihn verstanden zu haben :P

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
 //Bild laden aus Datei, dabei nach BGR Konvertieren
var bit = new FormatConvertedBitmap(new BitmapImage(new Uri("pack://application:,,,/kombi.bmp")),
  PixelFormats.Bgr32, null, 0d);
var data = new uint[bit.PixelWidth * bit.PixelHeight]; //array mit...
bit.CopyPixels(data, bit.PixelWidth * 4, 0);  //...Pixeldaten füllen

//alle eindeutigen Farben geordnet in array stecken
var colors = data.Distinct().OrderBy(u => u).ToArray();
//für je 2 zusammengehörende Farben
for (int i = 0; i < 6; i += 2) {
  //neues Bild erstellen mit 20*20 in BGR
  //aus den Farben des Ausgangsbildes, soweit sie entweder Farbe i oder die nächste sind
  list.Items.Add(BitmapSource.Create(20, 20, 0, 0,
    PixelFormats.Bgr32, null,
    data.Where(u => u == colors[i] || u == colors[i + 1]).ToArray(),
    80));
}

Könnte man mit Chrome fast wörtlich genauso machen, weiß ich jetzt nach dem Suchspiel ;)

Die Logik hat was von SQL... könnte mir gefallen. Im Prinzip macht meine Lösung genau das gleiche. Nur halt umständlicher von Hand, weil normales Delphi da nix hergibt, um so einfach mit Arrays zu arbeiten.

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
BenBE Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Sa 22.12.07 15:54 
Naja ... Arbeite nicht so häufig mit C# und war daher bei einigen Stellen nicht ganz sicher, was die da an Daten umbauen. Aber so kommentiert macht das Sinn ;-)

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5285
Erhaltene Danke: 29

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Sa 22.12.07 16:55 
user profile iconKhabarakh hat folgendes geschrieben:
Will keiner mehr seine Quelltexte veröffentlichen :gruebel: ?
Da das Thema erst zwei Seiten lang ist und es zum zweiten Rätsel überhaupt keinen Beitrag gab, werde ich diesen Thread mal auch für das dritte Rätsel zweckentfremden ;) .

Doch hier:
www.delphi-forum.de/...n+Frage+2_78979.html