CheckCollisionCircleLine() added
This commit is contained in:
parent
24c48cde91
commit
cb6615f05b
2 changed files with 18 additions and 0 deletions
|
@ -247,6 +247,7 @@ var getSplinePointBezierCubic func(p1 uintptr, c2 uintptr, c3 uintptr, p4 uintpt
|
|||
var checkCollisionRecs func(rec1 uintptr, rec2 uintptr) bool
|
||||
var checkCollisionCircles func(center1 uintptr, radius1 float32, center2 uintptr, radius2 float32) bool
|
||||
var checkCollisionCircleRec func(center uintptr, radius float32, rec uintptr) bool
|
||||
var checkCollisionCircleLine func(center uintptr, radius float32, p1, p2 uintptr) bool
|
||||
var checkCollisionPointRec func(point uintptr, rec uintptr) bool
|
||||
var checkCollisionPointCircle func(point uintptr, center uintptr, radius float32) bool
|
||||
var checkCollisionPointTriangle func(point uintptr, p1 uintptr, p2 uintptr, p3 uintptr) bool
|
||||
|
@ -751,6 +752,7 @@ func init() {
|
|||
purego.RegisterLibFunc(&checkCollisionRecs, raylibDll, "CheckCollisionRecs")
|
||||
purego.RegisterLibFunc(&checkCollisionCircles, raylibDll, "CheckCollisionCircles")
|
||||
purego.RegisterLibFunc(&checkCollisionCircleRec, raylibDll, "CheckCollisionCircleRec")
|
||||
purego.RegisterLibFunc(&checkCollisionCircleLine, raylibDll, "CheckCollisionCircleLine")
|
||||
purego.RegisterLibFunc(&checkCollisionPointRec, raylibDll, "CheckCollisionPointRec")
|
||||
purego.RegisterLibFunc(&checkCollisionPointCircle, raylibDll, "CheckCollisionPointCircle")
|
||||
purego.RegisterLibFunc(&checkCollisionPointTriangle, raylibDll, "CheckCollisionPointTriangle")
|
||||
|
@ -2283,6 +2285,11 @@ func CheckCollisionCircleRec(center Vector2, radius float32, rec Rectangle) bool
|
|||
return checkCollisionCircleRec(*(*uintptr)(unsafe.Pointer(¢er)), radius, uintptr(unsafe.Pointer(&rec)))
|
||||
}
|
||||
|
||||
// CheckCollisionCircleLine - Check if circle collides with a line created betweeen two points [p1] and [p2]
|
||||
func CheckCollisionCircleLine(center Vector2, radius float32, p1, p2 Vector2) bool {
|
||||
return checkCollisionCircleLine(*(*uintptr)(unsafe.Pointer(¢er)), radius, *(*uintptr)(unsafe.Pointer(&p1)), *(*uintptr)(unsafe.Pointer(&p2)))
|
||||
}
|
||||
|
||||
// CheckCollisionPointRec - Check if point is inside rectangle
|
||||
func CheckCollisionPointRec(point Vector2, rec Rectangle) bool {
|
||||
return checkCollisionPointRec(*(*uintptr)(unsafe.Pointer(&point)), uintptr(unsafe.Pointer(&rec)))
|
||||
|
|
|
@ -561,6 +561,17 @@ func CheckCollisionCircleRec(center Vector2, radius float32, rec Rectangle) bool
|
|||
return v
|
||||
}
|
||||
|
||||
// CheckCollisionCircleLine - Check if circle collides with a line created betweeen two points [p1] and [p2]
|
||||
func CheckCollisionCircleLine(center Vector2, radius float32, p1, p2 Vector2) bool {
|
||||
ccenter := center.cptr()
|
||||
cradius := (C.float)(radius)
|
||||
cp1 := p1.cptr()
|
||||
cp2 := p2.cptr()
|
||||
ret := C.CheckCollisionCircleLine(*ccenter, cradius, *cp1, *cp2)
|
||||
v := bool(ret)
|
||||
return v
|
||||
}
|
||||
|
||||
// CheckCollisionPointRec - Check if point is inside rectangle
|
||||
func CheckCollisionPointRec(point Vector2, rec Rectangle) bool {
|
||||
cpoint := point.cptr()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue