Revision: 4923
http://hugin.svn.sourceforge.net/hugin/?rev=4923&view=rev
Author: tmodes
Date: 2010-01-21 06:25:05 +0000 (Thu, 21 Jan 2010)
Log Message:
-----------
Some internal improvements for reset of projection paramters
Modified Paths:
--------------
hugin/trunk/src/hugin_base/panodata/PanoramaOptions.cpp
Modified: hugin/trunk/src/hugin_base/panodata/PanoramaOptions.cpp
===================================================================
--- hugin/trunk/src/hugin_base/panodata/PanoramaOptions.cpp 2010-01-20 15:46:30 UTC (rev 4922)
+++ hugin/trunk/src/hugin_base/panodata/PanoramaOptions.cpp 2010-01-21 06:25:05 UTC (rev 4923)
@@ -183,12 +183,8 @@
panoProjectionFeaturesQuery(f, &m_projFeatures);
/* post default projection parameters and corresponding FOV limits */
m_projectionParams.resize(m_projFeatures.numberOfParameters);
+ // reset projection parameters to default, determine also new fov limits, clip current fovs...
resetProjectionParameters();
- // post new params, determine fov limits, clip current fovs...
- setProjectionParameters( m_projectionParams );
- // post new fovs
- setHFOV(m_hfov, false);
- setVFOV(getVFOV());
}
@@ -211,7 +207,7 @@
/* get dynamic FOV limits corresponding to the new parameters,
clip current fovs to those limits, and post the results
*/
- double parms[6];
+ double parms[PANO_PROJECTION_MAX_PARMS];
double fovs[2];
int i;
for( i = 0; i < m_projFeatures.numberOfParameters; i++){
@@ -219,7 +215,6 @@
}
if( queryFOVLimits((int)m_projectionFormat, parms, fovs )){
m_projFeatures.maxHFOV = fovs[0];
- m_hfov = std::min(m_hfov, fovs[0]);
m_projFeatures.maxVFOV = fovs[1];
}
setHFOV( m_hfov, false );
@@ -228,10 +223,12 @@
void PanoramaOptions::resetProjectionParameters()
{
+ std::vector<double> defParam(m_projFeatures.numberOfParameters);
for(int i = 0; i < m_projFeatures.numberOfParameters; i++)
{
- m_projectionParams[i] = m_projFeatures.parm[i].defValue;
+ defParam[i] = m_projFeatures.parm[i].defValue;
};
+ setProjectionParameters(defParam);
};
bool PanoramaOptions::fovCalcSupported(ProjectionFormat f) const
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|