I have lots (billions) of points in 2D which I can preprocess and I would like to answer queries which are of the following form:
Given all four corners of a rectang
You can use a BoundBox for the rectangle then if a point is inside the boundbox you can check if it collide with the rectangle or you can use oriented bounded box.
This is the simplest way and don't need use of complex data structure