Thanks Alexey that's helpful, but what is the difference between mulv and using *
for example why do:
v = PhotoScan.Vector([0.3, 0.6, 0.9])
camera.transform.mulv(v)
and
v_homog = PhotoScan.Vector([0.3, 0.6, 0.9, 1.0]) #homogenous version of v
camera.transform * v_homog
Give different results?