%% syntaxe : solid i solidnormaleface --> u, vecteur normale a la
%% face d indice i du solide
/solidnormaleface {
4 dict begin
/i exch def
/solid exch def
solid issolid not {
(Error : mauvais type d argument dans solidgetsommetface) ==
quit
} if
%% solid 0 i solidgetsommetface /G defpoint3d
%% G
%% solid 1 i solidgetsommetface
%% vecteur3d
%% G
%% solid 2 i solidgetsommetface
%% vecteur3d
/n solid i solidfacenombresommets def
solid i solidcentreface /G defpoint3d
%% debug %% G 3dto2d point
G
solid 0 i solidgetsommetface
/A defpoint3d
% gsave bleu A point3d grestore
A
vecteur3d normalize3d
G
solid 1 i solidgetsommetface
/A defpoint3d
% gsave orange A point3d grestore
A
vecteur3d normalize3d
vectprod3d
/resultat defpoint3d
resultat normalize3d
end
} def
|