There was a raycast plugin in C2 that could do some of that. There was also a chipmunk physics behavior for c2 that could give that info.
For C3 I don't believe there is anything. You could put an image point on top of every collision polygon point, so you can access it from events, and then calculate everything from scratch. Or you could search for examples of how to do lasers in C2. That could give the collision point where the laser stops, and then you could guestimate the normal.
The tutorials section may also have some ideas.