try using the viz.screentoworld function to get a line that you can use to call viz.intersect. This code should let you know if the pointer is in line with an object
Code:
def FireLine():
line = viz.screentoworld(pointer.getPosition())
dir = viz.Vector(line.dir)
dir.setLength(200)
begin = line.begin
end = line.begin + dir
info = viz.intersect(begin,end)
if info.valid:
print "intersected"
vizact.onsensordown(wiimote,wii.BUTTON_B,FireLine)