====== Image-Komponente - Grundlegende Funktionen ====== * [[http://docwiki.embarcadero.com/RADStudio/XE8/de/H%C3%A4ufig_verwendete_Eigenschaften_und_Methoden_des_Canvas-Objekts|Häufig verwendete Eigenschaften und Methoden des Canvas-Objekts]] * [[http://docwiki.embarcadero.com/RADStudio/XE8/de/Grafikobjekte_zeichnen|Grafikobjekte zeichnen]] ---- Rectangle (x1, y1, x2, y2)-> zeichnet ein Rechteck mit einem Scheitelpunkt ausgehend vom Punkt (x1, y1) und dem gegenüberliegenden Punkt (x2, y2) Ellipse (x1, y1, x2, y2)-> zeichnet eine Ellipse in einem durch die Punkte (x1, y1) und (x2, y2) definierten Rechteck Wie kann man die Innenseite der Rechtecke und Ellipsen malen?\\ Im Canvas-Objekt, gibt es ein Objekt namens ''Brush'' (Pinsel) und ein Objekt namens ''Pen'' (Stift), beide haben Farbeigenschaften für die Fläche und die Kontur der Objekte.\\ Um ein Objekt in einer Farbe zu malen müssen die Eigenschaften von Bürste und Pinsel entsprechend angepasst werden.\\ //Setzen der Brush-Farbe auf Weiß Image1->Canvas->Brush->Color=clWhite; //Füllen des gesamten Bereiches Image1->Canvas->FillRect(Form1->Image1->Canvas->ClipRect); //Füllen des gesamten Bereiches: //selber Effekt wie oben. Image1->Canvas->FillRect(ClientRect); //Malen eines kleinen Männchen Image1->Canvas->Brush->Color= clRed; Image1->Canvas->Ellipse(195, 117, 205, 128); Image1->Canvas->Brush->Color= clBlue; Image1->Canvas->Rectangle (192, 130,208,160); Image1->Canvas->Brush->Color= clGreen; Image1->Canvas->Rectangle (187, 130,191,162); Image1->Canvas->Brush->Color= clYellow; Image1->Canvas->Rectangle (209, 130,213,162); Image1->Canvas->Brush->Color= clMaroon; Image1->Canvas->Rectangle (193,161,199,200); Image1->Canvas->Brush->Color= clPurple; Image1->Canvas->Rectangle (201,161,207,200); {{:inf:turbo_cpp:image-komponente:maennchen.png}} Image1->Canvas->Pen->Color = clBlue; Image1->Canvas->MoveTo(10, 10); Image1->Canvas->LineTo(100, 100); Image1->Canvas->Brush->Color = clBtnFace; Image1->Canvas->Font->Name = "Arial"; Image1->Canvas->TextOut(Image1->Canvas->PenPos.x, Image1->Canvas->PenPos.y,"This is the end of the line"); {{:inf:turbo_cpp:image-komponente:endofline.png}} //Zufallslauf von Punkten; Image1->Canvas->Brush->Color=clWhite; Image1->Canvas->FillRect(Form1->Image1->Canvas->ClipRect); int x=200,y=150; srand(time(0)); for (int i=0;i<10000 ;i++ ) { int x1=rand()%3-1; int y1=rand()%3-1; x=x+x1; y=y+y1; Image1->Canvas->Pixels[x][y]=TColor(RGB(255,0,0)); Image1->Refresh(); Sleep(1); {{:inf:turbo_cpp:image-komponente:punkte.png|}} //Ausfüllen des gesamten Bereiches mit zufälligen Farben; srand(time(0)); for (int i=0;i<400 ;i++ ) { for (int j=0;j<300 ;j++ ) { int r=rand()%255; int g=rand()%255; int b=rand()%255; Image1->Canvas->Pixels[i][j]=TColor(RGB(r,g,b)); } } {{:inf:turbo_cpp:image-komponente:zufallspunkte.png|}}