I think this is a
troll, but anyway....<sigh>
Under Linux, try draw three triangles in a panel canvas using the same coordinates and different pen color.
So? That works. Show code that proves otherwise....
procedure TForm1.FormPaint(Sender: TObject);
begin
form1.Canvas.Pen.Color := clBlue;
form1.Canvas.Line( 2, 100, 50,2);
form1.Canvas.Line( 2, 100, 150,2);
form1.Canvas.Line( 50, 2, 150,2);
form1.Canvas.Pen.Color := clRed;
form1.Canvas.Line( 20, 120, 70,20);
form1.Canvas.Line( 20, 120, 170,20);
form1.Canvas.Line( 70, 20, 170,20);
form1.Canvas.Pen.Color := clGreen;
form1.Canvas.Line( 40, 140, 90,40);
form1.Canvas.Line( 40, 140, 190,40);
form1.Canvas.Line( 90, 40, 190,40);
end;
What you suggest is overwriting, so in the above example you would end up with green...
procedure TForm1.FormPaint(Sender: TObject);
begin
form1.Canvas.Pen.Color := clBlue;
form1.Canvas.Line( 2, 100, 50,2);
form1.Canvas.Line( 2, 100, 150,2);
form1.Canvas.Line( 50, 2, 150,2);
form1.Canvas.Pen.Color := clRed;
form1.Canvas.Line( 2, 100, 50,2);
form1.Canvas.Line( 2, 100, 150,2);
form1.Canvas.Line( 50, 2, 150,2);
form1.Canvas.Pen.Color := clGreen;
form1.Canvas.Line( 2, 100, 50,2);
form1.Canvas.Line( 2, 100, 150,2);
form1.Canvas.Line( 50, 2, 150,2);
end;
BTW:
Linux has nothing to do with it....