私はデルフィと一緒に働いています。画像に示すように続く点の配列があります。
次に、この配列を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);