From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- pkg/proto/vol/src/vmatrix.x | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 pkg/proto/vol/src/vmatrix.x (limited to 'pkg/proto/vol/src/vmatrix.x') diff --git a/pkg/proto/vol/src/vmatrix.x b/pkg/proto/vol/src/vmatrix.x new file mode 100644 index 00000000..bfc01d63 --- /dev/null +++ b/pkg/proto/vol/src/vmatrix.x @@ -0,0 +1,31 @@ +include +include "pvol.h" + + +# VMATRIX -- Volume rotation, rotation matrix projection algorithm. +# Proceeds from origin at back of volume image toward front, writing +# output image lines in successive overlapping sheets. See "Back to +# Front Display of Voxel-Based Objects", G.Frieder, D.Gordon, R.Reynolds, +# IEEE Computer Graphics & Applications Jan. 85, p 52-60. + +procedure vmatrix (im1, im2, vp) +pointer im1 # Input volume image +pointer im2 # Output projection image +pointer vp # Volume projection descriptor + +real v, vx, vy, vz +real dcosa, dcosb, dcosc +#real t11,t21,t31, t12,t22,t32, t13,t23,t33 + +begin + vx = VECX(vp) + vy = VECY(vp) + vz = VECZ(vp) + v = sqrt (vx*vx + vy*vy + vz*vz) + dcosa = vx / v + dcosb = vy / v + dcosc = vz / v + + # ??????? +end + -- cgit