% The cross-product for homogeneous coords: function c = hcross(a,b); if (size(a)>3 | size(a)<3) error('hcross is only defined for 2D homogeneous coordinates'); end %cross-product of two vectors c = cross(a,b); %devide by third coordinate to remain in one plane (z=1) c = c/c(3);