Eugene Liscio of AI2-3D put together a neat video on how to use HemoSpat to estimate the impact angle of a bullet. This technique might be useful at a scene if you only have one bullet defect for a trajectory and it has a well-formed ellipse.
Why does this work? As explained in Wong and Jacobson’s article on Angle of Impact Determination from Bullet Holes, the same principles of calculating the alpha angle for bloodstains apply to bullet holes. Because the same principles are being applied, it’s important to note that as a ellipse’s alpha angle approaches 90°, the error increases dramatically , so you would only use this technique for impact angles ~60° or less. Bullets may deform on impact and/or deform the target surface, so this must be considered as well.
Since Eugene put together this video, HemoSpat has been modified to make this technique a little bit easier (see version 1.7.3). The calculation of the alpha angle is no longer dependent on the location of the impact being set (as Eugene does in the video). So you can just load the image and use the ellipse tool right away to get an alpha angle.
Eugene didn’t show it here, but if you do a complete analysis by adding the impact’s location, using the scale tool, and adding a plumb-line along with the ellipse, HemoSpat will allow you to visualize the (linear) bullet trajectory in its 2D views and export it to a 3D format for integration into 3D models.
Update 25 July 2016: I collaborated with the Ottawa Police Service and the Ontario Provincial Police to create some high-speed videos of bullets striking different surfaces at varying angles. These show in detail ellipses being created by bullets.
 Willis, C., Piranian, A. K., Donaggio, J. R., Barnett, R. J., and Rowe, W. F. Errors in the estimation of the distance of fall and angles of impact blood drops, Forensic Science International (2001) 123:1–4.