added tga file format converter

This commit is contained in:
Guido Ranzuglia granzuglia 2007-12-13 23:43:35 +00:00
parent c00d5658db
commit 030e1ff9d5

View File

@ -1,4 +1,17 @@
#include "u3d_gui.h"
#include <cmath>
float avoidExponentialNotation(const float n,const float bboxdiag)
{
float val_min = std::min(1000.0f,floor(bboxdiag) * 1000.0f);
return val_min * floor(n) / val_min;
}
vcg::Point3f avoidExponentialNotation(const vcg::Point3f& p,const float bboxdiag)
{
float val_min = std::min(1000.0f,floor(bboxdiag) * 1000.0f);
return vcg::Point3f(val_min * floor(p.X()) / val_min,val_min * floor(p.Y()) / val_min,val_min * floor(p.Z()) / val_min);
}
U3D_GUI::U3D_GUI(vcg::tri::io::u3dparametersclasses::Movie15Parameters& param,QWidget *parent, Qt::WFlags flags)
: QDialog(parent, flags),_param(param)
@ -20,8 +33,9 @@ void U3D_GUI::saveParameters()
ui.tary_lab->text().toFloat() - ui.posy_lnedt->text().toFloat(),
ui.tarz_lab->text().toFloat() - ui.posz_lnedt->text().toFloat());
vcg::tri::io::u3dparametersclasses::Movie15Parameters::CameraParameters* sw = _param._campar;
vcg::Point3f p = avoidExponentialNotation(sw->_obj_pos,_param._campar->_obj_bbox_diag);
_param._campar = new vcg::tri::io::u3dparametersclasses::Movie15Parameters::CameraParameters(
(float) ui.fov_spn->value(),0.0f,from_target_to_camera,from_target_to_camera.Norm(),sw->_obj_pos);
(float) ui.fov_spn->value(),0.0f,from_target_to_camera,from_target_to_camera.Norm(),sw->_obj_bbox_diag,p);
delete sw;
}
@ -39,15 +53,17 @@ void U3D_GUI::on_buttonBox_rejected()
void U3D_GUI::defaultParameters()
{
QString tmp;
tmp.setNum(_param._campar->_obj_pos.X());
vcg::Point3f pos = avoidExponentialNotation(_param._campar->_obj_pos,_param._campar->_obj_bbox_diag);
tmp.setNum(pos.X());
ui.tarx_lnedt->setText(tmp);
tmp.setNum(_param._campar->_obj_pos.Y());
tmp.setNum(pos.Y());
ui.tary_lnedt->setText( tmp);
tmp.setNum(_param._campar->_obj_pos.Z());
tmp.setNum(pos.Z());
ui.tarz_lnedt->setText(tmp);
tmp.setNum(0.0);
ui.posx_lnedt->setText(tmp);
ui.posy_lnedt->setText(tmp);
tmp.setNum(-1.0f * _param._campar->_obj_bbox_diag);
tmp.setNum(avoidExponentialNotation(-1.0f * _param._campar->_obj_bbox_diag,_param._campar->_obj_bbox_diag));
ui.posz_lnedt->setText(tmp);
}