Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function CreatePolygonRgn Lib "gdi32" (lpPoint As POINTAPI, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long
Private Declare Function PtInRegion Lib "gdi32" (ByVal hRgn As Long, ByVal x As Long, ByVal y As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Const ALTERNATE = 1
Const WINDING = 2
Dim pt() As POINTAPI
pt(0).x =
pt(0).y =
Dim hRgn As Long
hRgn = CreatePolygonRgn(pt(0), n, ALTERNATE)
If PtInRegion(hRgn, px, py) = 0 Then
else
End If
DeleteObject hRgn这里面的点都是整形的数据,请问如果将这些点都变成单精度型或是双精度型的怎么写
比如我要判断一个点px=111.222 py=22.111
是否在pt(0).x=123.111
pt(0).y=23.123
pt(1).x=.......
...............
等等 所有的点都是小数形式的,请问怎么写,怎么改,哪位懂得大哥大姐帮忙给看看吧 谢谢
我在声明区将x,y定义为double型,可hrgn就得0了
x As Long
y As Long
End Type
Private Declare Function CreatePolygonRgn Lib "gdi32" (lpPoint As POINTAPI, ByVal nCount As Long, ByVal nPolyFillMode As Long) As Long
Private Declare Function PtInRegion Lib "gdi32" (ByVal hRgn As Long, ByVal x As Long, ByVal y As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Const ALTERNATE = 1
Const WINDING = 2
Dim pt() As POINTAPI
pt(0).x =
pt(0).y =
Dim hRgn As Long
hRgn = CreatePolygonRgn(pt(0), n, ALTERNATE)
If PtInRegion(hRgn, px, py) = 0 Then
else
End If
DeleteObject hRgn这里面的点都是整形的数据,请问如果将这些点都变成单精度型或是双精度型的怎么写
比如我要判断一个点px=111.222 py=22.111
是否在pt(0).x=123.111
pt(0).y=23.123
pt(1).x=.......
...............
等等 所有的点都是小数形式的,请问怎么写,怎么改,哪位懂得大哥大姐帮忙给看看吧 谢谢
我在声明区将x,y定义为double型,可hrgn就得0了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货