Я работаю с делфи. У меня есть массив точек, которые продолжаются, как показано на рисунке.
Затем я передаю этот массив CreatePolygonRgn и создаю область, скажем, rgn1.
rgn1 := CreatePolygonRgn(tmpary1[0],Count,WINDING);
Затем я заполняю область и показываю ее в своем элементе управления TImage, как показано на рисунке. Проблема с левой стороны, точки также покрываются в области, но с правой стороны точки массива не покрываются. На изображении видно, что слева зеленая граница не показана, а справа граница видна. Я где-то ошибаюсь??? Если мой вопрос вам непонятен, пожалуйста, спросите.
Спасибо.
Изменить:
for cnt := 0 to Count - 1 do begin
p1 := imgmain.Picture.Bitmap.ScanLine[tmpary[cnt].Y];
p1[tmpary[cnt].X].rgbtBlue := 0;
p1[tmpary[cnt].X].rgbtGreen := 255;
p1[tmpary[cnt].X].rgbtRed := 0;
end;
rgn1 := CreatePolygonRgn(tmpary1[0],tmpseq1.Count,WINDING);
imgmain.Picture.Bitmap.Canvas.Brush.Color := clRed;
FillRgn(imgmain.Picture.Bitmap.Canvas.Handle,rgn1,imgmain.Picture.Bitmap.Canvas.Brush.Handle);