Esempio:

Definiamo una proiezione 'cabinet' sul piano z = 0 . Il vettore normale è n = (0, 0, 1) . Se c = (c[1], c[2], c[3]) è la direzione di proiezione, si ottiene una proiezione 'cabinet' quando

(n.c)^2/(abs(n)^2*abs(c)^2) = 4/5 (deve essere f = 1/2 ; vedi l'esercizio sopra e il suggerimento)

Dunque la condizione sulla direzione c diventa

c[3]^2/(c[1]^2+c[2]^2+c[3]^2) = 4/5 ovvero 4(c[1]^2+c[2]^2) = c[3]^2

Una possibile direzione è c = (3, 4, 10) , corrispondente alla matrice di proiezione

> MP([0,0,1,0],[3,4,10,0]);

matrix([[-10, 0, 0, 0], [0, -10, 0, 0], [3, 4, 0, 0...

> colore:=[red,green,blue,white,black,yellow]:

> vertici:=[[1,2,4,3],[1,2,6,5],[1,3,7,5],[2,4,8,6],[3,4,8,7],[5,6,8,7]]:

> box:= proc(l) local i,ll; global faccia6; ll:=convert(l,listlist):for i from 1 to 6 do faccia6[i]:=polygon([seq(ll[vertici[i,j]],j=1..4)],color=colore[i]) od; RETURN(convert(faccia6,set)) end:

> c0:=[[0,0,0],[1,0,0],[0,1,0],[1,1,0],[0,0,1],[1,0,1],[0,1,1],[1,1,1]];

c0 := [[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0], ...

> c1:=trasforma(c0,MP([0,0,1,0],[3,4,10,0])); proiezione 'cabinet' del cubo unitario c0 sul piano z = 0

c1 := matrix([[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, ...

> disegno3d(box(c0) union box(c1));

[Maple Plot]

> c2:=trasforma(c0,MP([0,0,1,0],[3,4,5,0])); proiezione cavaliera di c0 sul piano z = 0

c2 := matrix([[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, ...

> disegno3d(box(c2));

[Maple Plot]

>