mrumtl

Describe materials that vary spectrally
git clone git://git.meso-star.fr/mrumtl.git
Log | Files | Refs | README | LICENSE

commit 0d4d8db8bfc138a689575ba1fdc5a915664696b4
parent 1cf0cc38686e9be2aef0b216a991d1239a4f57dd
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Mon,  2 Mar 2020 14:51:36 +0100

Push further the band BRDF

Diffstat:
Msrc/test_mrumtl_band.c | 39+++++++++++++++++++++++++++++++++------
1 file changed, 33 insertions(+), 6 deletions(-)

diff --git a/src/test_mrumtl_band.c b/src/test_mrumtl_band.c @@ -202,12 +202,12 @@ check_fetch(struct mrumtl* mrumtl) CHK(fp = freopen(filename, "w+", fp)); fprintf(fp, "bands 7\n"); - fprintf(fp, "200 280 lambertian 0.314\n"); - fprintf(fp, "280 300 specular 0\n"); - fprintf(fp, "350 400.12 specular 0.123\n"); - fprintf(fp, "400.12 400.12 lambertian 0.9\n"); - fprintf(fp, "500.11 500.11 lambertian 0.4\n"); - fprintf(fp, "500.21 512.40 specular 0.4\n"); + fprintf(fp, "200 280 lambertian 0.314\n"); + fprintf(fp, "280 300 specular 0\n"); + fprintf(fp, "350 400.12 specular 0.123\n"); + fprintf(fp, "400.12 400.12 lambertian 0.9\n"); + fprintf(fp, "500.11 500.11 lambertian 0.4\n"); + fprintf(fp, "500.21 512.40 specular 0.4\n"); fprintf(fp, "521.125 530.40 lambertian 0.7\n"); rewind(fp); CHK(mrumtl_load_stream(mrumtl, fp, filename) == RES_OK); @@ -268,6 +268,33 @@ check_fetch(struct mrumtl* mrumtl) CHK(mrumtl_brdf_get_type(brdf) == MRUMTL_BRDF_LAMBERTIAN); CHK(mrumtl_brdf_lambertian_get_reflectivity(brdf) == 0.314); + CHK(fp = freopen(filename, "w+", fp)); + fprintf(fp, "bands 2\n"); + fprintf(fp, "380 780 lambertian 0.3\n"); + fprintf(fp, "1000 100000 lambertian 9.e-2\n"); + rewind(fp); + CHK(mrumtl_load_stream(mrumtl, fp, filename) == RES_OK); + + CHK(mrumtl_fetch_brdf(mrumtl, 300, &brdf) == RES_OK); + CHK(mrumtl_brdf_get_type(brdf) == MRUMTL_BRDF_LAMBERTIAN); + CHK(mrumtl_brdf_lambertian_get_reflectivity(brdf) == 0.3); + + CHK(mrumtl_fetch_brdf(mrumtl, 500, &brdf) == RES_OK); + CHK(mrumtl_brdf_get_type(brdf) == MRUMTL_BRDF_LAMBERTIAN); + CHK(mrumtl_brdf_lambertian_get_reflectivity(brdf) == 0.3); + + CHK(mrumtl_fetch_brdf(mrumtl, 800, &brdf) == RES_OK); + CHK(mrumtl_brdf_get_type(brdf) == MRUMTL_BRDF_LAMBERTIAN); + CHK(mrumtl_brdf_lambertian_get_reflectivity(brdf) == 0.3); + + CHK(mrumtl_fetch_brdf(mrumtl, 900, &brdf) == RES_OK); + CHK(mrumtl_brdf_get_type(brdf) == MRUMTL_BRDF_LAMBERTIAN); + CHK(mrumtl_brdf_lambertian_get_reflectivity(brdf) == 9.e-2); + + CHK(mrumtl_fetch_brdf(mrumtl, 97810, &brdf) == RES_OK); + CHK(mrumtl_brdf_get_type(brdf) == MRUMTL_BRDF_LAMBERTIAN); + CHK(mrumtl_brdf_lambertian_get_reflectivity(brdf) == 9.e-2); + fclose(fp); }