Fabricating QR codes on 3D objects using self-shadows. (September 2019)