primitives: added containsPoint()