cube2

show views with increasing perspective

cube1
campos([-6,-4, 5]);
viewinfo
camera position: -6 -4 5
camera target: 0.5 0.5 0.5
camera up vector: 0 0 1
projection: orthographic
az -55.3048 el 29.649
view matrix
    0.5692   -0.8222         0         0
    0.4067    0.2816    0.8691         0
   -0.7145   -0.4947    0.4947         0
         0         0         0    1.0000

% set perspective transformation
camproj('Perspective');
campos([-6,-4, 5]);
camva(10);
viewinfo
camera position: -6 -4 5
camera target: 0.5 0.5 0.5
camera up vector: 0 0 1
camera view angle: 10
projection: perspective
az -55.3048 el 29.649
view matrix
    0.5692   -0.8222         0         0
    0.4067    0.2816    0.8691         0
   -0.7145   -0.4947    0.4947         0
         0         0         0    1.0000

k = campos()-camtarget();
distance = norm(k);
fprintf('distance to camera %g\n',distance);
distance to camera 9.0967
campos(camtarget()+k/2);
camva(20);
viewinfo
camera position: -2.75 -1.75 2.75
camera target: 0.5 0.5 0.5
camera up vector: 0 0 1
camera view angle: 20
projection: perspective
az -55.3048 el 29.649
view matrix
    0.5692   -0.8222         0         0
    0.4067    0.2816    0.8691         0
   -0.7145   -0.4947    0.4947         0
         0         0         0    1.0000

campos(camtarget()+k/4);
camva(40);
viewinfo
camera position: -1.125 -0.625 1.625
camera target: 0.5 0.5 0.5
camera up vector: 0 0 1
camera view angle: 40
projection: perspective
az -55.3048 el 29.649
view matrix
    0.5692   -0.8222         0         0
    0.4067    0.2816    0.8691         0
   -0.7145   -0.4947    0.4947         0
         0         0         0    1.0000

campos(camtarget()+k/6);
camva(60);
viewinfo
camera position: -0.583333 -0.25 1.25
camera target: 0.5 0.5 0.5
camera up vector: 0 0 1
camera view angle: 60
projection: perspective
az -55.3048 el 29.649
view matrix
    0.5692   -0.8222         0         0
    0.4067    0.2816    0.8691         0
   -0.7145   -0.4947    0.4947         0
         0         0         0    1.0000