VonMisesFischerApprox::VonMisesFischerApprox(const float* data, int length):
		kappas(), mus(),  radiosities() {
	int nLobes = (length-1)/7;

	kappas.resize(nLobes,0.0f);
	mus.resize(nLobes,V3f(0,0,0));
	radiosities.resize(nLobes,C3f(0,0,0));

	for (int i=0; i < nLobes; i++) {
		kappas[i] = data[i*7+1];
		mus[i] = V3f(data[(i*7+2)],data[(i*7+3)],data[(i*7+4)]);
		radiosities[i] = C3f(data[(i*7+5)],data[(i*7+6)],data[(i*7+7)]);
	}
}
Example #2
0
PhongModelApprox::PhongModelApprox(const float* data, int length):
	lobeDirs(), lobeCols() {
	int nLobes = (length-5)/6;

	phong = (int) data[1];
	N = V3f(data[2],data[3],data[4]);
	lobeDirs.resize(nLobes,V3f(0,0,0));
	lobeCols.resize(nLobes,C3f(0,0,0));

	for (int i=0; i < nLobes; i++) {
		lobeDirs[i] = V3f(data[(i*6+5)],data[(i*6+6)],data[(i*6+7)]);
		lobeCols[i] = C3f(data[(i*6+8)],data[(i*6+9)],data[(i*6+10)]);
	}
}
VonMisesFischerApprox::VonMisesFischerApprox(int nLobes) :
		kappas(nLobes,0), mus(nLobes,V3f(0,0,0)), radiosities(nLobes,C3f(0,0,0))  {

}
Example #4
0
PhongModelApprox::PhongModelApprox(int nLobes) :
		lobeDirs(nLobes,V3f(0,0,0)), lobeCols(nLobes,C3f(0,0,0))  {
}