; File: sphscan_intens.pro
; Author: Erik Brisson

ntheta = 100
nphi   = 100
nentries = ntheta*nphi

dat = fltarr(4,nentries)

openr, 1, '../data/xyz_intens.dat'
readf, 1, dat
close, 1

print, 'nentries = ', nentries

theta = dat(0,*)
phi = dat(1,*)
r = dat(2,*)
intens = dat(3,*)

triangulate, theta, phi, tri

x = r * sin(phi) * cos(theta)
y = r * sin(phi) * sin(theta)
z = r * cos(phi)
intens_norm = (intens - min(intens)) / (max(intens)-min(intens))
color_ind = (fix(256.0*intens_norm)) < 255

nvert = nentries
ntri = n_elements(tri)/3

print, "nvert = ", nvert
print, "ntri  = ", ntri

openw, 1, 'results/sphscan_mtl.obj'

printf, 1, "mtllib sphscan.mtl"
for i=0, nentries-1 do begin
    printf, 1, "v ", x(i), y(i), z(i)
end
for i=0, nentries-1 do begin
    printf, 1, "vt ", intens_norm(i), " 0.5"
end
printf, 1, "usemtl density_cmap"
for i=0, n_elements(tri)/3-1 do begin
    printf, 1, "f ", tri(1,i)+1, "/", tri(1,i)+1, $
                     tri(0,i)+1, "/", tri(0,i)+1, $
		     tri(2,i)+1, "/", tri(2,i)+1
endfor
close, 1

end
