任意给出四个点(这四个点给成的图形不会是凹四边形),如果判断某一点在其组成的图形中。谁能写出原代码,我将给其100分,真的。

解决方案 »

  1.   

    var p:array[1..4] of TPoint;
        hrgn1:hRgn;
    begin
    p[1].x:=10;
    p[1].y:=10;
    ....
    hrgn:=CreatePolygonRgn(p,4,WINDING);
    if PtInRegion(hrgn,myx,myy) then//myx、myy所指定的点是否在hrgn内
      ShowMessage('In');
      

  2.   

    你有QQ吗?windlindance,告诉我咱们讨论一下。好吗、
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var p:array[1..4] of TPoint;
        hrgn1:hRgn;
    begin
    p[1].x:=10;
    p[1].y:=10;
    p[2].X:=30;
    p[2].Y:=10;
    p[3].X:=30;
    p[3].Y:=30;
    p[4].X:=10;
    p[4].Y:=30;
    hrgn1:=CreatePolygonRgn(p,4,WINDING);
    if PtInRegion(hrgn1,20,20) then//myx、myy所指定的点是否在hrgn内
      ShowMessage('In');
    end;