HuginBase::Panorama Class Reference

Model for a panorama. More...

#include <Panorama.h>

Inheritance diagram for HuginBase::Panorama:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 Panorama ()
 ctor.
 ~Panorama ()
 dtor.
Panorama getSubset (const UIntSet &imgs) const
 get a subset of the panorama
Panorama duplicate () const
 duplicate the panorama
PanoramaDatagetNewSubset (const UIntSet &imgs) const
PanoramaDatagetNewCopy () const
std::size_t getNrOfImages () const
 number of images.
const SrcPanoImagegetImage (std::size_t nr) const
 get a panorama image, counting starts with 0
void setImage (std::size_t nr, const SrcPanoImage &img)
 set a panorama image, counting starts with 0
unsigned int addImage (const SrcPanoImage &img)
 add an Image to the panorama
void mergePanorama (const Panorama &newPano)
 merges the panorama with the given pano
void removeImage (unsigned int nr)
 remove an Image.
void swapImages (unsigned int img1, unsigned int img2)
 swap images.
void moveImage (size_t img1, size_t img2)
 moves images.
SrcPanoImage getSrcImage (unsigned imgNr) const
 get a description of a source image
void setSrcImage (unsigned int nr, const SrcPanoImage &img)
 set input image parameters
void setImageFilename (unsigned int img, const std::string &fname)
 set a new image filename
void activateImage (unsigned int imgNr, bool active=true)
 mark an image as active or inactive.
UIntSet getActiveImages () const
 get active images
std::size_t getNrOfCtrlPoints () const
 number of control points
const ControlPointgetCtrlPoint (std::size_t nr) const
 get a control point, counting starts with 0
const CPVectorgetCtrlPoints () const
 get all control point of this Panorama
std::vector< unsigned int > getCtrlPointsForImage (unsigned int imgNr) const
 return all control points for a given image.
CPointVector getCtrlPointsVectorForImage (unsigned int imgNr) const
 return a vector of std::pairs with global ctrl point nr and ControlPoint In the class ControlPoint the image with imgNr is always image1
void setCtrlPoints (const CPVector &points)
 set all control points (Ippei: Is this supposed to be 'add' method?)
unsigned int addCtrlPoint (const ControlPoint &point)
 add a new control point.
void removeCtrlPoint (unsigned int pNr)
 remove a control point.
void removeDuplicateCtrlPoints ()
 removes duplicates control points
void changeControlPoint (unsigned int pNr, const ControlPoint &point)
 change a control Point.
int getNextCPTypeLineNumber () const
 get the next unused line number for t3, .
void updateLineCtrlPoints ()
 assign new mode line numbers, if required
void updateCtrlPointErrors (const CPVector &controlPoints)
 update control points distances.
void updateCtrlPointErrors (const UIntSet &imgs, const CPVector &cps)
 update control points for a subset of images.
VariableMapVector getVariables () const
 get variables of this panorama
const VariableMap getImageVariables (unsigned int imgNr) const
 Get the variables of an image.
virtual void updateVariables (const VariableMapVector &vars)
 Set the variables.
virtual void updateVariables (const UIntSet &imgs, const VariableMapVector &var)
 update variables for some specific images
virtual void updateVariables (unsigned int imgNr, const VariableMap &var)
 Set variables for a single picture.
virtual void updateVariable (unsigned int imgNr, const Variable &var)
 update a single variable
virtual void UpdateFocalLength (UIntSet imgs, double newFocalLength)
 updates the focal length by changing hfov
virtual void UpdateCropFactor (UIntSet imgs, double newCropFactor)
 updates the crop factor, try to keep focal length constant
virtual void linkImageVariableFilename (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableSize (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableProjection (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableHFOV (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableResponseType (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableEMoRParams (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExposureValue (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableGamma (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableWhiteBalanceRed (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableWhiteBalanceBlue (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRoll (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariablePitch (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableYaw (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableX (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableY (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableZ (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableTranslationPlaneYaw (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableTranslationPlanePitch (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableStack (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRadialDistortion (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRadialDistortionRed (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRadialDistortionBlue (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRadialDistortionCenterShift (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableShear (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableCropMode (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableCropRect (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableAutoCenterCrop (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableVigCorrMode (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableFlatfieldFilename (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRadialVigCorrCoeff (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableRadialVigCorrCenterShift (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifModel (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifMake (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifLens (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifCropFactor (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifFocalLength (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifOrientation (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifAperture (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifISO (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifDistance (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifFocalLength35 (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifExposureTime (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifDate (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableExifExposureMode (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableMasks (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableActiveMasks (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void linkImageVariableActive (unsigned int sourceImgNr, unsigned int destImgNr)
virtual void unlinkImageVariableFilename (unsigned int imgNr)
virtual void unlinkImageVariableSize (unsigned int imgNr)
virtual void unlinkImageVariableProjection (unsigned int imgNr)
virtual void unlinkImageVariableHFOV (unsigned int imgNr)
virtual void unlinkImageVariableResponseType (unsigned int imgNr)
virtual void unlinkImageVariableEMoRParams (unsigned int imgNr)
virtual void unlinkImageVariableExposureValue (unsigned int imgNr)
virtual void unlinkImageVariableGamma (unsigned int imgNr)
virtual void unlinkImageVariableWhiteBalanceRed (unsigned int imgNr)
virtual void unlinkImageVariableWhiteBalanceBlue (unsigned int imgNr)
virtual void unlinkImageVariableRoll (unsigned int imgNr)
virtual void unlinkImageVariablePitch (unsigned int imgNr)
virtual void unlinkImageVariableYaw (unsigned int imgNr)
virtual void unlinkImageVariableX (unsigned int imgNr)
virtual void unlinkImageVariableY (unsigned int imgNr)
virtual void unlinkImageVariableZ (unsigned int imgNr)
virtual void unlinkImageVariableTranslationPlaneYaw (unsigned int imgNr)
virtual void unlinkImageVariableTranslationPlanePitch (unsigned int imgNr)
virtual void unlinkImageVariableStack (unsigned int imgNr)
virtual void unlinkImageVariableRadialDistortion (unsigned int imgNr)
virtual void unlinkImageVariableRadialDistortionRed (unsigned int imgNr)
virtual void unlinkImageVariableRadialDistortionBlue (unsigned int imgNr)
virtual void unlinkImageVariableRadialDistortionCenterShift (unsigned int imgNr)
virtual void unlinkImageVariableShear (unsigned int imgNr)
virtual void unlinkImageVariableCropMode (unsigned int imgNr)
virtual void unlinkImageVariableCropRect (unsigned int imgNr)
virtual void unlinkImageVariableAutoCenterCrop (unsigned int imgNr)
virtual void unlinkImageVariableVigCorrMode (unsigned int imgNr)
virtual void unlinkImageVariableFlatfieldFilename (unsigned int imgNr)
virtual void unlinkImageVariableRadialVigCorrCoeff (unsigned int imgNr)
virtual void unlinkImageVariableRadialVigCorrCenterShift (unsigned int imgNr)
virtual void unlinkImageVariableExifModel (unsigned int imgNr)
virtual void unlinkImageVariableExifMake (unsigned int imgNr)
virtual void unlinkImageVariableExifLens (unsigned int imgNr)
virtual void unlinkImageVariableExifCropFactor (unsigned int imgNr)
virtual void unlinkImageVariableExifFocalLength (unsigned int imgNr)
virtual void unlinkImageVariableExifOrientation (unsigned int imgNr)
virtual void unlinkImageVariableExifAperture (unsigned int imgNr)
virtual void unlinkImageVariableExifISO (unsigned int imgNr)
virtual void unlinkImageVariableExifDistance (unsigned int imgNr)
virtual void unlinkImageVariableExifFocalLength35 (unsigned int imgNr)
virtual void unlinkImageVariableExifExposureTime (unsigned int imgNr)
virtual void unlinkImageVariableExifDate (unsigned int imgNr)
virtual void unlinkImageVariableExifExposureMode (unsigned int imgNr)
virtual void unlinkImageVariableMasks (unsigned int imgNr)
virtual void unlinkImageVariableActiveMasks (unsigned int imgNr)
virtual void unlinkImageVariableActive (unsigned int imgNr)
virtual void updateWhiteBalance (double redFactor, double blueFactor)
 update the global white balace of the panorama by multiplying the red and blue factor of each image with given factors
const OptimizeVectorgetOptimizeVector () const
 return the optimize settings stored inside panorama
void setOptimizeVector (const OptimizeVector &optvec)
 set optimize setting
const int getOptimizerSwitch () const
 returns optimizer master switch
void setOptimizerSwitch (const int newSwitch)
 set optimizer master switch
const int getPhotometricOptimizerSwitch () const
 return the photometric optimizer master switch
void setPhotometricOptimizerSwitch (const int newSwitch)
 sets the photometric optimizer master switch
const PanoramaOptionsgetOptions () const
 returns the options for this panorama
void setOptions (const PanoramaOptions &opt)
 set new output settings This is not used directly for optimizing/stiching, but it can be feed into runOptimizer() and runStitcher().
void parseOptimizerScript (std::istream &i, const UIntSet &imgs, VariableMapVector &imgVars, CPVector &ctrlPoints) const
 read after optimization, fills in control point errors.
void printPanoramaScript (std::ostream &o, const OptimizeVector &optvars, const PanoramaOptions &options, const UIntSet &imgs, bool forPTOptimizer, const std::string &stripPrefix="") const
 create an optimizer script
void printStitcherScript (std::ostream &o, const PanoramaOptions &target, const UIntSet &imgs) const
 create the stitcher script
void addObserver (PanoramaObserver *o)
 add a panorama observer.
bool removeObserver (PanoramaObserver *observer)
 remove a panorama observer.
void clearObservers ()
 remove all panorama observers.
void changeFinished (bool keepDirty)
 notify observers about changes in this class
void changeFinished ()
 notify observers about changes in this class
void imageChanged (unsigned int imgNr)
 mark image for change notification.
void updateMasksForImage (unsigned int imgNr, MaskPolygonVector newMasks)
 set complete mask list for image with number
void updateMasks (bool convertPosMaskToNeg=false)
 updates all active masks
void transferMask (MaskPolygon mask, unsigned int imgNr, const UIntSet targetImgs)
 transfers given mask from image imgNr to all targetImgs
void updateOptimizeVector ()
 updates the optimize vector according to master switches
std::set< size_t > getRefImages ()
 returns set of reference image and images linked with reference images
void checkRefOptStatus (bool &linkRefImgsYaw, bool &linkRefImgsPitch, bool &linkRefImgsRoll)
 checks if yaw/pitch/roll of reference image can be check, it depends on number and type of control points
virtual PanoramaDataMementogetNewMemento () const
 get the internal state
virtual bool setMementoToCopyOf (const PanoramaDataMemento *const memento)
 set the internal state
PanoramaMemento getMemento () const
 get the internal state
void setMemento (const PanoramaMemento &memento)
 set the internal state
bool needsOptimization ()
 true if control points or lens variables have been changed after the last optimisation
void markAsOptimized (bool optimized=true)
ReadWriteError readData (std::istream &dataInput, std::string documentType="")
 Reads data.
ReadWriteError writeData (std::ostream &dataOutput, std::string documentType="")
bool isDirty () const
 true if there are unsaved changes
virtual void clearDirty ()
 clear dirty flag.
void setFilePrefix (std::string prefix)
 sets the path prefix of the images reffered with relative paths
void reset ()
 clear the internal state.

Protected Member Functions

void setDirty (const bool &dirty=true)
std::string getFilePrefix () const
void adjustVarLinks ()
 adjust the links of the linked variables, must be called when a lens has been changed.

Private Member Functions

void centerCrop (unsigned int imgNr)
 center the crop for given image and all linked images
vigra::Rect2D centerCropImage (unsigned int imgNr)
 return the centered crop for given image
void updateCropMode (unsigned int imgNr)
 update the crop mode in dependence of crop rect and lens projection

Private Attributes

std::string imgFilePrefix
bool dirty
 this indicates that there are unsaved changes
PanoramaMemento state
std::list< PanoramaObserver * > observers
UIntSet changedImages
 the images that have been changed since the last changeFinished()
bool m_forceImagesUpdate
std::set< std::stringm_ptoptimizerVarNames

Detailed Description

Model for a panorama.

This class contains the properties of a panorama That is:

view and controller classes can get information about these with the getXXX Functions.

Images and Control points are numbered, and const references are handed out. this means that all interaction will be based on image/control point numbers. The references are not stable, they might disappear when other functions of this class are called, so its best to get a new reference whenever you need the object.

This also means that the whole object is not threadsafe and concurrent access has to be synchronized from the outside.

Changes should be made through command objects, not with direct calls.

Todo:
should the changer call the report() functions?
Todo:
should we add constraints for the simple / advanced functionality to the model? I have to think a bit more about that issue. maybe the contraints can be factored out into another class that corrects then when updating. or we could have different models.. SimplePanorama and AdvancedPanorama.
also, it is useful to use the memento pattern for the internal state, so that redo/undo for complex interactions can be implemented without too much pain.

Definition at line 156 of file Panorama.h.


Constructor & Destructor Documentation

HuginBase::Panorama::Panorama (  ) 

ctor.

Reimplemented in PT::Panorama.

Definition at line 44 of file Panorama.cpp.

References m_ptoptimizerVarNames.

HuginBase::Panorama::~Panorama (  ) 

dtor.

Reimplemented in PT::Panorama.

Definition at line 82 of file Panorama.cpp.

References DEBUG_TRACE, and reset().


Member Function Documentation

void HuginBase::Panorama::activateImage ( unsigned int  imgNr,
bool  active = true 
) [virtual]

mark an image as active or inactive.

This is only a flag, that can be turned on or off. If an image is marked active, then it should be used for optimizing and stitching.

However, this is not done automatically. One has to use getActiveImages() to get the numbers of the active images, and pass these to the respective functions that do the stitching or optimisation

Implements HuginBase::PanoramaData.

Definition at line 2447 of file Panorama.cpp.

References DEBUG_DEBUG.

unsigned int HuginBase::Panorama::addCtrlPoint ( const ControlPoint point  )  [virtual]

add a new control point.

Implements HuginBase::PanoramaData.

Definition at line 945 of file Panorama.cpp.

Referenced by AddControlPointsWithCheck(), CheckAndAddPoint(), createCtrlPoints(), createCtrlPointsOld(), LensCalFrame::GetPanorama(), main(), and iCPApp::OnRun().

unsigned int HuginBase::Panorama::addImage ( const SrcPanoImage img  )  [virtual]

add an Image to the panorama

Implements HuginBase::PanoramaData.

Definition at line 883 of file Panorama.cpp.

Referenced by HuginLines::_getVerticalLines(), PossiblePano::GeneratePanorama(), PossiblePano::GetNewProjectFilename(), LensCalFrame::GetPanorama(), main(), main2(), and processImg().

void HuginBase::Panorama::addObserver ( PanoramaObserver o  )  [virtual]

add a panorama observer.

It will recieve all change messages. An observer can only be added once. if its added twice, the second addObserver() will have no effect.

Implements HuginBase::ManagedPanoramaData.

Definition at line 2423 of file Panorama.cpp.

Referenced by GLPreviewFrame::GLPreviewFrame(), PreviewPanel::Init(), PanoPanel::Init(), OptimizePhotometricPanel::Init(), OptimizePanel::Init(), MaskEditorPanel::Init(), ImagesTreeCtrl::Init(), ImagesPanel::Init(), ImagesList::Init(), CPEditorPanel::Init(), OverviewOutlinesTool::OverviewOutlinesTool(), PreviewFrame::PreviewFrame(), PreviewLayoutLinesTool::PreviewLayoutLinesTool(), and ViewState::ViewState().

void HuginBase::Panorama::adjustVarLinks (  )  [protected]

adjust the links of the linked variables, must be called when a lens has been changed.

void HuginBase::Panorama::centerCrop ( unsigned int  imgNr  )  [private]

center the crop for given image and all linked images

Definition at line 2066 of file Panorama.cpp.

vigra::Rect2D HuginBase::Panorama::centerCropImage ( unsigned int  imgNr  )  [private]

return the centered crop for given image

Definition at line 2049 of file Panorama.cpp.

References celeste::max().

void HuginBase::Panorama::changeControlPoint ( unsigned int  pNr,
const ControlPoint point 
) [virtual]

change a control Point.

Implements HuginBase::PanoramaData.

Definition at line 998 of file Panorama.cpp.

void HuginBase::Panorama::changeFinished (  )  [inline, virtual]

notify observers about changes in this class

This needs to be called explicitly by somebody after changes have been made. Allows to compress multiple changes into one notification.

Implements HuginBase::ManagedPanoramaData.

Definition at line 869 of file Panorama.h.

void HuginBase::Panorama::changeFinished ( bool  keepDirty  ) 

notify observers about changes in this class

This needs to be called explicitly by somebody after changes have been made. Allows to compress multiple changes into one notification.

Parameters:
keepDirty do not set dirty flag. useful for changing the dirty flag itself

Definition at line 1711 of file Panorama.cpp.

void HuginBase::Panorama::checkRefOptStatus ( bool &  linkRefImgsYaw,
bool &  linkRefImgsPitch,
bool &  linkRefImgsRoll 
) [virtual]

checks if yaw/pitch/roll of reference image can be check, it depends on number and type of control points

Implements HuginBase::PanoramaData.

Definition at line 2137 of file Panorama.cpp.

Referenced by parseOptimizerScript().

virtual void HuginBase::Panorama::clearDirty (  )  [inline, virtual]

clear dirty flag.

call after save

Reimplemented from AppBase::DocumentData.

Definition at line 950 of file Panorama.h.

Referenced by MainFrame::OnSaveProject().

void HuginBase::Panorama::clearObservers (  )  [virtual]

remove all panorama observers.

Warning:
this is a hack. it must not be used on normal Panorama's.

Implements HuginBase::ManagedPanoramaData.

Definition at line 2435 of file Panorama.cpp.

Panorama HuginBase::Panorama::duplicate (  )  const

duplicate the panorama

returns a copy of the pano state, except for the listeners.

Definition at line 2819 of file Panorama.cpp.

Referenced by PanoOperation::CleanControlPointsOperation::GetInternalCommand(), PanoDetector::loadProject(), and GLPreviewFrame::ResetTranslationPlaneParameters().

UIntSet HuginBase::Panorama::getActiveImages (  )  const [virtual]

get active images

Implements HuginBase::PanoramaData.

Definition at line 2457 of file Panorama.cpp.

Referenced by PreviewColorPickerTool::CalcCorrection(), PT::Panorama::calcOptimalStackROI(), PanoPanel::DoCalcFOV(), PanoPanel::DoCalcOptimalROI(), PanoPanel::DoCalcOptimalWidth(), main(), main2(), GLPreviewFrame::OnAutocrop(), PreviewFrame::OnCenterHorizontally(), GLPreviewFrame::OnCenterHorizontally(), ImageToogleButtonEventHandler::OnChange(), PreviewFrame::OnChangeDisplayedImgs(), ImageGroupButtonEventHandler::OnEnter(), ImageToogleButtonEventHandler::OnEnter(), PreviewFrame::OnFitPano(), GLPreviewFrame::OnFitPano(), ImageGroupButtonEventHandler::OnLeave(), ImageToogleButtonEventHandler::OnLeave(), OptimizePhotometricPanel::OnOptimizeButton(), OptimizePanel::OnOptimizeButton(), MainFrame::OnSaveProject(), GLPreviewFrame::OnStackAutocrop(), PreviewFrame::panoramaChanged(), GLPreviewFrame::panoramaChanged(), PanoPanel::StackCheck(), RunStitchPanel::StitchProject(), PlaneOverviewToolHelper::UpdateImagesUnderMouse(), PanosphereOverviewToolHelper::UpdateImagesUnderMouse(), PreviewToolHelper::UpdateImagesUnderMouse(), PreviewLayoutLinesTool::updateLineInformation(), and PreviewPanel::updatePreview().

const ControlPoint& HuginBase::Panorama::getCtrlPoint ( std::size_t  nr  )  const [inline, virtual]

get a control point, counting starts with 0

Implements HuginBase::PanoramaData.

Definition at line 311 of file Panorama.h.

Referenced by CPImagesComboBox::CalcCPDistance(), CPEditorPanel::ShowControlPoint(), and PreviewLayoutLinesTool::updateLineInformation().

const CPVector& HuginBase::Panorama::getCtrlPoints (  )  const [inline, virtual]

get all control point of this Panorama

Implements HuginBase::PanoramaData.

Definition at line 318 of file Panorama.h.

Referenced by PreviewControlPointTool::AfterDrawImagesEvent(), alignStereoWindow(), HuginBase::getCPinMasks(), HuginBase::getCPoutsideLimit(), HuginBase::getCPoutsideLimit_pair(), PanoOperation::CleanControlPointsOperation::GetInternalCommand(), PanoOperation::RemoveControlPointsOperation::GetInternalCommand(), main(), main2(), MainFrame::OnFineTuneAll(), MainFrame::OnRemoveCPinMasks(), CPListFrame::OnSelectButton(), GLPreviewFrame::panoramaChanged(), CPListFrame::panoramaImagesChanged(), AutoCtrlPointCreator::readUpdatedControlPoints(), PanoDetector::run(), SetGeometricControlPointsOverlap(), SetGeometricControlPointsUnconnected(), CPEditorPanel::UpdateDisplay(), and CPListFrame::updateList().

std::vector< unsigned int > HuginBase::Panorama::getCtrlPointsForImage ( unsigned int  imgNr  )  const [virtual]

return all control points for a given image.

Implements HuginBase::PanoramaData.

Definition at line 176 of file Panorama.cpp.

References HuginBase::PanoramaMemento::ctrlPoints, and state.

Referenced by ImagesTreeCtrl::UpdateImageText().

CPointVector HuginBase::Panorama::getCtrlPointsVectorForImage ( unsigned int  imgNr  )  const

return a vector of std::pairs with global ctrl point nr and ControlPoint In the class ControlPoint the image with imgNr is always image1

Definition at line 189 of file Panorama.cpp.

References HuginBase::PanoramaMemento::ctrlPoints, and state.

Referenced by PanoOperation::CelesteOperation::GetInternalCommand(), and main().

std::string HuginBase::Panorama::getFilePrefix (  )  const [inline, protected]

Definition at line 973 of file Panorama.h.

const SrcPanoImage& HuginBase::Panorama::getImage ( std::size_t  nr  )  const [inline, virtual]

get a panorama image, counting starts with 0

Implements HuginBase::PanoramaData.

Definition at line 210 of file Panorama.h.

Referenced by HuginLines::_getVerticalLines(), AddGeometricControlPoint(), PreviewControlPointTool::AfterDrawImagesEvent(), alignStereoWindow(), PanoDetector::AnalyzeImage(), ApplyLensDBParameters(), ImageVariableDialog::ApplyNewVariables(), PreviewColorPickerTool::CalcCorrection(), PreviewColorPickerTool::CalcCorrectionForImage(), CheckAndAddPoint(), MaskEditorPanel::DisplayCrop(), PanoOutputDialog::EnableOutputOptions(), CPEditorPanel::estimateAndAddOtherPoint(), CPEditorPanel::EstimatePoint(), FillPlaceholders(), ViewState::FinishedDraw(), PossiblePano::GeneratePanorama(), HuginBase::getCPinMasks(), HuginBase::getCPoutsideLimit_pair(), getDefaultOutputName(), getDefaultProjectName(), PanoOperation::ResetOperation::GetInternalCommand(), PanoOperation::CelesteOperation::GetInternalCommand(), PanoOperation::SaveLensOperation::GetInternalCommand(), PanoOperation::LoadLensOperation::GetInternalCommand(), PanoOperation::RemoveImageOperation::GetInternalCommand(), PanoOperation::AddImagesSeriesOperation::GetInternalCommand(), MaskEditorPanel::GetRot(), ImageVariableDialog::InitValues(), loadImgsAndExtractPoints(), PT::loadImgsAndExtractPoints(), main(), CPEditorPanel::NewPointChange(), ImagesTreeCtrl::OnBeginEdit(), CPEditorPanel::OnCelesteButton(), ImagesTreeCtrl::OnEndEdit(), MainFrame::OnFineTuneAll(), ImagesPanel::OnFocalLengthChanged(), ImagesPanel::OnLensTypeChanged(), GLPreviewFrame::OnLensTypeChanged(), MaskEditorPanel::OnMaskCopy(), MaskEditorPanel::OnMaskLoad(), MaskEditorPanel::OnMaskPaste(), MaskEditorPanel::OnMaskSave(), LensCalFrame::OnSaveLens(), ImagesPanel::OnSelectionChanged(), LensCalFrame::Optimize(), ViewState::panoramaChanged(), GLPreviewFrame::panoramaChanged(), PanoDetector::printFilenames(), PanoDetector::RansacMatchesInPair(), AutoCtrlPointCreator::readUpdatedControlPoints(), GLPlaneOverviewRenderer::Redraw(), GLPanosphereOverviewRenderer::Redraw(), GLPreviewRenderer::Redraw(), SaveLensParameters(), SetGeometricControlPointsOverlap(), SetGeometricControlPointsUnconnected(), MaskEditorPanel::setImage(), CPEditorPanel::setLeftImage(), CPEditorPanel::setRightImage(), ImagesTreeCtrl::UpdateGroupText(), ImagesTreeCtrl::UpdateImageText(), ImagesListMask::UpdateItem(), PreviewLayoutLinesTool::updateLineInformation(), ImagesPanel::UpdatePreviewImage(), UpdateSingleVar(), CPEditorPanel::UpdateTransforms(), and PanoDetector::writeKeyfile().

const VariableMap HuginBase::Panorama::getImageVariables ( unsigned int  imgNr  )  const [virtual]

Get the variables of an image.

Should not be used for most GUI stuff, use the getImage(imgNr).get* methods instead for each variable you want.

Todo:
change things using this to use getImage(imgNr).get*() instead.

Implements HuginBase::PanoramaData.

Definition at line 221 of file Panorama.cpp.

References HuginBase::PanoramaMemento::images, and state.

Referenced by PanoOperation::ResetOperation::GetInternalCommand(), GLPreviewFrame::panoramaChanged(), SaveLensParameters(), CPEditorPanel::setLeftImage(), and CPEditorPanel::setRightImage().

PanoramaMemento HuginBase::Panorama::getMemento (  )  const [inline]

get the internal state

Definition at line 907 of file Panorama.h.

PanoramaData* HuginBase::Panorama::getNewCopy (  )  const [inline, virtual]

Implements HuginBase::PanoramaData.

Definition at line 193 of file Panorama.h.

PanoramaDataMemento * HuginBase::Panorama::getNewMemento (  )  const [virtual]

get the internal state

Implements HuginBase::ManagedPanoramaData.

Definition at line 2403 of file Panorama.cpp.

PanoramaData* HuginBase::Panorama::getNewSubset ( const UIntSet imgs  )  const [inline, virtual]

Implements HuginBase::PanoramaData.

Definition at line 187 of file Panorama.h.

Referenced by PanoDetector::RansacMatchesInPairCam().

int HuginBase::Panorama::getNextCPTypeLineNumber (  )  const [virtual]

get the next unused line number for t3, .

.. control point creation

Implements HuginBase::PanoramaData.

Definition at line 3301 of file Panorama.cpp.

Referenced by CPEditorPanel::panoramaChanged().

std::size_t HuginBase::Panorama::getNrOfCtrlPoints (  )  const [inline, virtual]

number of control points

Implements HuginBase::PanoramaData.

Definition at line 305 of file Panorama.h.

Referenced by CPImagesComboBox::CalcCPDistance(), HuginBase::getCPoutsideLimit_pair(), PanoOperation::RemoveControlPointsOperation::GetInternalCommand(), PanoOperation::CleanControlPointsOperation::IsEnabled(), PanoOperation::RemoveControlPointsOperation::IsEnabled(), main(), GLPreviewFrame::OnLoadImages(), GLPreviewFrame::panoramaChanged(), Project::ReadOptions(), and PreviewLayoutLinesTool::updateLineInformation().

std::size_t HuginBase::Panorama::getNrOfImages (  )  const [inline, virtual]

number of images.

Implements HuginBase::PanoramaData.

Definition at line 204 of file Panorama.h.

Referenced by alignStereoWindow(), AutoPanoSift::automatch(), TextureManager::CheckUpdate(), MeshManager::CheckUpdate(), GLPreviewFrame::CleanButtonColours(), TextureManager::CleanTextures(), ImagesPanel::CPGenerate(), PanoPanel::DoSendToBatch(), PanoPanel::DoStitch(), PanoOutputDialog::EnableOutputOptions(), FillPlaceholders(), ViewState::FinishedDraw(), PossiblePano::GeneratePanorama(), HuginBase::getCPoutsideLimit_pair(), getDefaultOutputName(), getDefaultProjectName(), PanoOperation::AssignStacksOperation::GetInternalCommand(), PanoOperation::ResetOperation::GetInternalCommand(), PanoOperation::LoadLensOperation::GetInternalCommand(), PanoOperation::AddImagesSeriesOperation::GetInternalCommand(), LensCalFrame::GetPanorama(), GLPreviewFrame::HasNonZeroTranslationPlaneParameters(), PanoOperation::AssignStacksOperation::IsEnabled(), PanoOperation::ChangeStackOperation::IsEnabled(), PanoOperation::NewStackOperation::IsEnabled(), PanoOperation::ResetOperation::IsEnabled(), PanoOperation::RemoveControlPointsOperation::IsEnabled(), PanoOperation::ChangeLensOperation::IsEnabled(), PanoOperation::NewLensOperation::IsEnabled(), loadImgsAndExtractPoints(), PT::loadImgsAndExtractPoints(), PanoDetector::loadProject(), main(), main2(), PreviewControlPointTool::MakeTransforms(), DragTool::MouseButtonEvent(), ImagesTreeCtrl::OnBeginDrag(), PreviewFrame::OnChangeDisplayedImgs(), ImagesPanel::OnCropFactorChanged(), GLPreviewFrame::OnCropFactorChanged(), PreviewFrame::OnDefaultExposure(), GLPreviewFrame::OnDefaultExposure(), ImagesTreeCtrl::OnEndDrag(), MainFrame::OnFineTuneAll(), ImagesPanel::OnFocalLengthChanged(), GLPreviewFrame::OnFocalLengthChanged(), CPEditorPanel::OnNextImg(), PreviewFrame::OnNumTransform(), GLPreviewFrame::OnNumTransform(), OptimizePhotometricPanel::OnOptimizeButton(), OptimizePanel::OnOptimizeButton(), CPEditorPanel::OnPrevImg(), iCPApp::OnRun(), MainFrame::OnSaveProject(), LensCalFrame::OnSaveProject(), MainFrame::OnSavePTStitcherAs(), PreviewFrame::OnShowAll(), GLPreviewFrame::OnShowAll(), PreviewFrame::OnShowNone(), GLPreviewFrame::OnShowNone(), PreviewFrame::OnStraighten(), GLPreviewFrame::OnStraighten(), GLPreviewFrame::OnToolModeChanging(), ViewState::panoramaChanged(), PreviewFrame::panoramaChanged(), ImagesTreeCtrl::panoramaChanged(), GLPreviewFrame::panoramaChanged(), OptimizePhotometricPanel::panoramaImagesChanged(), OptimizePanel::panoramaImagesChanged(), MainFrame::panoramaImagesChanged(), ImagesPanel::panoramaImagesChanged(), parseOptimizerScript(), PanoDetector::printFilenames(), Project::ReadOptions(), AutoCtrlPointCreator::readUpdatedControlPoints(), GLPlaneOverviewRenderer::Redraw(), GLPanosphereOverviewRenderer::Redraw(), GLPreviewRenderer::Redraw(), VisualizationState::RequireRecalculateMesh(), GLPreviewFrame::ResetTranslationPlaneParameters(), PanoDetector::run(), MainFrame::RunAssistant(), ImagesTreeCtrl::SelectAllParameters(), SetGeometricControlPointsOverlap(), SetGeometricControlPointsUnconnected(), ImagesTreeCtrl::SetGroupMode(), ViewState::SetOptions(), VisualizationState::SetScale(), ImagesListMask::SetSingleSelect(), RunStitchPanel::StitchProject(), MeshManager::MeshInfo::Update(), PreviewLayoutLinesTool::updateImageCentres(), PlaneOverviewToolHelper::UpdateImagesUnderMouse(), PanosphereOverviewToolHelper::UpdateImagesUnderMouse(), PreviewToolHelper::UpdateImagesUnderMouse(), PreviewLayoutLinesTool::updateLineInformation(), ImagesPanel::UpdatePreviewImage(), ViewState::ViewState(), VisualizationState::VisualizationState(), and work_on_triplets().

const int HuginBase::Panorama::getOptimizerSwitch (  )  const [inline, virtual]

returns optimizer master switch

Implements HuginBase::PanoramaData.

Definition at line 758 of file Panorama.h.

Referenced by OptimizePanel::OnOptimizeButton(), ImagesPanel::OnOptimizerSwitchChanged(), OptimizePanel::panoramaChanged(), MainFrame::panoramaChanged(), ImagesPanel::panoramaChanged(), and MainFrame::SetGuiLevel().

const OptimizeVector& HuginBase::Panorama::getOptimizeVector (  )  const [inline, virtual]

return the optimize settings stored inside panorama

Implements HuginBase::PanoramaData.

Definition at line 751 of file Panorama.h.

Referenced by AutoCtrlPointCreator::Cleanup(), PanoPanel::DoStitch(), PossiblePano::GeneratePanorama(), hasphotometricParams(), main(), ImagesTreeCtrl::OnLeftDown(), iCPApp::OnRun(), MainFrame::OnSaveProject(), LensCalFrame::OnSaveProject(), MainFrame::RunAssistant(), ImagesTreeCtrl::SelectAllParameters(), MainFrame::SetGuiLevel(), RunStitchPanel::StitchProject(), and ImagesTreeCtrl::UpdateOptimizerVariables().

const PanoramaOptions& HuginBase::Panorama::getOptions (  )  const [inline, virtual]

returns the options for this panorama

Implements HuginBase::PanoramaData.

Definition at line 778 of file Panorama.h.

Referenced by AddGeometricControlPoint(), PreviewDifferenceTool::AfterDrawImagesEvent(), alignStereoWindow(), autoCrop(), TextureManager::Begin(), PanoPanel::BlenderChanged(), PreviewColorPickerTool::CalcCorrection(), PreviewColorPickerTool::CalcCorrectionForImage(), PT::Panorama::calcOptimalStackROI(), PanoPanel::CheckGoodSize(), AutoCtrlPointCreator::Cleanup(), PanoPanel::DoCalcFOV(), PanoPanel::DoCalcOptimalROI(), PanoPanel::DoCalcOptimalWidth(), PanoPanel::DoStitch(), PreviewPanel::DrawPreview(), PanoPanel::FileFormatChanged(), FillPlaceholders(), ViewState::FinishedDraw(), PossiblePano::GeneratePanorama(), HuginBase::getCPoutsideLimit_pair(), PanoOperation::ChangeColorAnchorImageOperation::GetInternalCommand(), PanoOperation::ChangeAnchorImageOperation::GetInternalCommand(), LensCalFrame::GetPanorama(), CPEditorPanel::getVerticalCPBias(), PanoPanel::HDRFileFormatChanged(), PanoPanel::HeightChanged(), PanoPanel::HFOVChanged(), NonaOptionsDialog::InterpolatorChanged(), main(), main2(), GLPreviewFrame::OnAutocrop(), PanoPanel::OnBlenderOptions(), PreviewFrame::OnChangeFOV(), GLPreviewFrame::OnChangeFOV(), PreviewFrame::OnDecreaseExposure(), GLPreviewFrame::OnDecreaseExposure(), PreviewFrame::OnDefaultExposure(), GLPreviewFrame::OnDefaultExposure(), GLPreviewFrame::OnExposureChanged(), PreviewFrame::OnFitPano(), GLPreviewFrame::OnFitPano(), PanoPanel::OnFusionOptions(), PanoPanel::OnHDRMergeOptions(), PanoPanel::OnHDRTIFFCompression(), GLPreviewFrame::OnHFOVChanged(), PreviewFrame::OnIncreaseExposure(), GLPreviewFrame::OnIncreaseExposure(), PanoPanel::OnJPEGQualityText(), ImagesPanel::OnMaxEvDiffChanged(), ImagesPanel::OnMinimumOverlapChanged(), PanoPanel::OnNormalTIFFCompression(), PreviewFrame::OnOutputChoice(), PanoPanel::OnOutputFilesChanged(), PreviewFrame::OnProjectionChoice(), GLPreviewFrame::OnProjectionChoice(), GLPreviewFrame::OnProjParameterChanged(), PreviewFrame::OnProjParameterReset(), GLPreviewFrame::OnProjParameterReset(), PanoPanel::OnRemapperOptions(), GLPreviewFrame::OnResetCrop(), GLPreviewFrame::OnROIChanged(), iCPApp::OnRun(), NonaOptionsDialog::OnSaveCropped(), MainFrame::OnSaveProject(), LensCalFrame::OnSaveProject(), MainFrame::OnSavePTStitcherAs(), GLPreviewFrame::OnStackAutocrop(), PreviewFrame::OnTextCtrlChanged(), GLPreviewFrame::OnTrackChangeFOV(), GLPreviewFrame::OnVFOVChanged(), ViewState::panoramaChanged(), PreviewPanel::panoramaChanged(), PreviewFrame::panoramaChanged(), PanoPanel::panoramaChanged(), NonaOptionsDialog::panoramaChanged(), ImagesPanel::panoramaChanged(), GLPreviewFrame::panoramaChanged(), PanoPanel::ProjectionChanged(), Project::ReadOptions(), PanoPanel::RemapperChanged(), PanoPanel::ROIChanged(), MainFrame::RunAssistant(), ImagesTreeCtrl::SelectAllParameters(), GLPreviewFrame::ShowProjectionWarnings(), PanoPanel::StackCheck(), RunStitchPanel::StitchProject(), ImagesTreeCtrl::UpdateImageText(), PreviewPanel::updatePreview(), CPEditorPanel::UpdateTransforms(), PanoPanel::VFOVChanged(), ViewState::ViewState(), PanoPanel::WidthChanged(), and work_on_triplets().

const int HuginBase::Panorama::getPhotometricOptimizerSwitch (  )  const [inline, virtual]

return the photometric optimizer master switch

Implements HuginBase::PanoramaData.

Definition at line 764 of file Panorama.h.

Referenced by OptimizePhotometricPanel::OnOptimizeButton(), ImagesPanel::OnPhotometricOptimizerSwitchChanged(), OptimizePhotometricPanel::panoramaChanged(), MainFrame::panoramaChanged(), ImagesPanel::panoramaChanged(), and MainFrame::SetGuiLevel().

std::set< size_t > HuginBase::Panorama::getRefImages (  )  [virtual]

returns set of reference image and images linked with reference images

Implements HuginBase::PanoramaData.

Definition at line 2117 of file Panorama.cpp.

Referenced by parseOptimizerScript().

SrcPanoImage HuginBase::Panorama::getSrcImage ( unsigned  imgNr  )  const [virtual]

get a description of a source image

Notice the SrcPanoImage is a copy. This removes all references to the other images, which means you should use getImage instead if you would like to find out about the variable links.

Warning:
Variable links cannot be accessed this way.

Implements HuginBase::PanoramaData.

Definition at line 2472 of file Panorama.cpp.

Referenced by HuginLines::_getVerticalLines(), ImageVariableDialog::ApplyNewVariables(), AutoPanoSift::automatch(), ViewState::FinishedDraw(), PossiblePano::GeneratePanorama(), PanoOperation::ResetOperation::GetInternalCommand(), LensCalFrame::GetPanorama(), GLPreviewFrame::HasNonZeroTranslationPlaneParameters(), PanoDetector::loadProject(), main(), main2(), DragTool::MouseButtonEvent(), CPEditorPanel::OnTextPointChange(), ViewState::panoramaChanged(), print_result(), PanoDetector::RemapBackKeypoints(), GLPreviewFrame::ResetTranslationPlaneParameters(), resetValues(), MaskEditorPanel::UpdateCrop(), PreviewPanel::updatePreview(), ViewState::ViewState(), and work_on_triplets().

Panorama HuginBase::Panorama::getSubset ( const UIntSet imgs  )  const

get a subset of the panorama

This returns a panorama that contains only the images specified by Useful for operations on a subset of the panorama

Referenced by HuginBase::getCPoutsideLimit_pair().

VariableMapVector HuginBase::Panorama::getVariables (  )  const [virtual]

get variables of this panorama

Implements HuginBase::PanoramaData.

Definition at line 211 of file Panorama.cpp.

References HuginBase::PanoramaMemento::images, and state.

Referenced by OptimizePanel::AskApplyResult(), ImageVariableDialog::InitValues(), and GLPreviewFrame::ResetTranslationPlaneParameters().

void HuginBase::Panorama::imageChanged ( unsigned int  imgNr  )  [virtual]

mark image for change notification.

Does not send the notification, this is left to changedFinished()

Implements HuginBase::ManagedPanoramaData.

Definition at line 2440 of file Panorama.cpp.

Referenced by transferMask(), and updateCtrlPointErrors().

bool HuginBase::Panorama::isDirty (  )  const [inline, virtual]

true if there are unsaved changes

Reimplemented from AppBase::DocumentData.

Definition at line 941 of file Panorama.h.

Referenced by MainFrame::CloseProject(), and PanoPanel::DoSendToBatch().

void HuginBase::Panorama::linkImageVariableActive ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 689 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableActiveMasks ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 686 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableAutoCenterCrop ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 639 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableCropMode ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 637 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableCropRect ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 638 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableEMoRParams ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 602 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifAperture ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 663 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifCropFactor ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 660 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifDate ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 668 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifDistance ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 665 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifExposureMode ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 669 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifExposureTime ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 667 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifFocalLength ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 661 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifFocalLength35 ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 666 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifISO ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 664 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifLens ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 659 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifMake ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 658 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifModel ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 657 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExifOrientation ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 662 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableExposureValue ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 603 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableFilename ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 594 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableFlatfieldFilename ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 645 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableGamma ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 604 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableHFOV ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 598 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableMasks ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 683 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariablePitch ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 610 of file Panorama.cpp.

Referenced by PossiblePano::GeneratePanorama(), and main().

void HuginBase::Panorama::linkImageVariableProjection ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 597 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRadialDistortion ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 624 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRadialDistortionBlue ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 628 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRadialDistortionCenterShift ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 631 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRadialDistortionRed ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 627 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRadialVigCorrCenterShift ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 647 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRadialVigCorrCoeff ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 646 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableResponseType ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 601 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableRoll ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 609 of file Panorama.cpp.

Referenced by PossiblePano::GeneratePanorama(), and main().

void HuginBase::Panorama::linkImageVariableShear ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 634 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableSize ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 595 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableStack ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 621 of file Panorama.cpp.

Referenced by PossiblePano::GeneratePanorama(), main(), and main2().

void HuginBase::Panorama::linkImageVariableTranslationPlanePitch ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 618 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableTranslationPlaneYaw ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 617 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableVigCorrMode ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 642 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableWhiteBalanceBlue ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 606 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableWhiteBalanceRed ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 605 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableX ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 613 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableY ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 614 of file Panorama.cpp.

void HuginBase::Panorama::linkImageVariableYaw ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 611 of file Panorama.cpp.

Referenced by PossiblePano::GeneratePanorama(), and main().

void HuginBase::Panorama::linkImageVariableZ ( unsigned int  sourceImgNr,
unsigned int  destImgNr 
) [virtual]

Implements HuginBase::PanoramaData.

Definition at line 615 of file Panorama.cpp.

void HuginBase::Panorama::markAsOptimized ( bool  optimized = true  )  [inline, virtual]

Implements HuginBase::ManagedPanoramaData.

Definition at line 923 of file Panorama.h.

void HuginBase::Panorama::mergePanorama ( const Panorama newPano  ) 

merges the panorama with the given pano

Referenced by main().

void HuginBase::Panorama::moveImage ( size_t  img1,
size_t  img2 
) [virtual]

moves images.

moves the image from pos1 to pos2

Implements HuginBase::PanoramaData.

Definition at line 2306 of file Panorama.cpp.

bool HuginBase::Panorama::needsOptimization (  )  [inline, virtual]

true if control points or lens variables have been changed after the last optimisation

Implements HuginBase::ManagedPanoramaData.

Definition at line 919 of file Panorama.h.

void HuginBase::Panorama::parseOptimizerScript ( std::istream i,
const UIntSet imgs,
VariableMapVector imgVars,
CPVector ctrlPoints 
) const [virtual]

read after optimization, fills in control point errors.

Parameters:
set of image numbers that where used during by printPanoramaScript().
vars will be set the the optimzied variables
ctrlPoints will contain the controlpoints, with distance information
Returns:
false on error (could not read optimizer output, parse error)

Implements HuginBase::PanoramaData.

Definition at line 1560 of file Panorama.cpp.

References checkRefOptStatus(), getNrOfImages(), getRefImages(), HuginBase::OPT_ALL, HuginBase::OPT_BARREL, HuginBase::OPT_PAIR, HuginBase::OPT_POSITION, HuginBase::OPT_TRANSLATION, HuginBase::OPT_VIEW, set_contains(), and HuginBase::UpdateOptVectorSet().

void HuginBase::Panorama::printPanoramaScript ( std::ostream o,
const OptimizeVector optvars,
const PanoramaOptions options,
const UIntSet imgs,
bool  forPTOptimizer,
const std::string stripPrefix = "" 
) const [virtual]

create an optimizer script

Implements HuginBase::PanoramaData.

Referenced by AutoCtrlPointCreator::Cleanup(), PanoPanel::DoStitch(), PossiblePano::GeneratePanorama(), main(), main2(), iCPApp::OnRun(), MainFrame::OnSaveProject(), LensCalFrame::OnSaveProject(), MainFrame::RunAssistant(), and RunStitchPanel::StitchProject().

void HuginBase::Panorama::printStitcherScript ( std::ostream o,
const PanoramaOptions target,
const UIntSet imgs 
) const [virtual]

create the stitcher script

Implements HuginBase::PanoramaData.

Definition at line 1502 of file Panorama.cpp.

Referenced by MainFrame::OnSavePTStitcherAs().

Panorama::ReadWriteError HuginBase::Panorama::readData ( std::istream dataInput,
std::string  documentType = "" 
) [virtual]

Reads data.

You have to check with refered images after data is loaded as the file path is likely to be relative, and the image property might have been changed since the project is saved.

Implements AppBase::DocumentData.

Definition at line 3315 of file Panorama.cpp.

Referenced by PanoDetector::loadProject(), main(), and processPTO().

void HuginBase::Panorama::removeCtrlPoint ( unsigned int  pNr  )  [virtual]

remove a control point.

Implements HuginBase::PanoramaData.

Definition at line 955 of file Panorama.cpp.

Referenced by main().

void HuginBase::Panorama::removeDuplicateCtrlPoints (  )  [virtual]

removes duplicates control points

Implements HuginBase::PanoramaData.

Definition at line 970 of file Panorama.cpp.

References DEBUG_DEBUG, and DEBUG_ERROR.

Referenced by PanoDetector::writeOutput().

void HuginBase::Panorama::removeImage ( unsigned int  nr  )  [virtual]

remove an Image.

also deletes/updates all associated control points and the Lens, if it was only used by this image.

Implements HuginBase::PanoramaData.

Definition at line 893 of file Panorama.cpp.

References m_ptoptimizerVarNames, and set_contains().

bool HuginBase::Panorama::removeObserver ( PanoramaObserver observer  )  [virtual]

remove a panorama observer.

Observers must be removed before they are destroyed, else Panorama will try to notify them after they have been destroyed

Returns:
true if observer was known, false otherwise.

Implements HuginBase::ManagedPanoramaData.

Definition at line 2428 of file Panorama.cpp.

Referenced by CPEditorPanel::~CPEditorPanel(), CPListFrame::~CPListFrame(), GLPreviewFrame::~GLPreviewFrame(), ImagesList::~ImagesList(), ImagesPanel::~ImagesPanel(), ImagesTreeCtrl::~ImagesTreeCtrl(), MainFrame::~MainFrame(), MaskEditorPanel::~MaskEditorPanel(), NonaOptionsDialog::~NonaOptionsDialog(), OptimizePanel::~OptimizePanel(), OptimizePhotometricPanel::~OptimizePhotometricPanel(), PanoPanel::~PanoPanel(), PreviewFrame::~PreviewFrame(), PreviewLayoutLinesTool::~PreviewLayoutLinesTool(), PreviewPanel::~PreviewPanel(), and ViewState::~ViewState().

void HuginBase::Panorama::reset (  ) 

clear the internal state.

(public use deprecated)

Definition at line 90 of file Panorama.cpp.

References HuginBase::PanoramaMemento::ctrlPoints, HuginBase::PanoramaMemento::deleteAllImages(), dirty, HuginBase::PanoramaMemento::needsOptimization, HuginBase::PanoramaMemento::options, HuginBase::PanoramaMemento::optPhotoSwitch, HuginBase::PanoramaMemento::optSwitch, HuginBase::PanoramaMemento::optvec, HuginBase::PanoramaOptions::reset(), AppBase::DocumentData::setDirty(), and state.

Referenced by ~Panorama().

void HuginBase::Panorama::setCtrlPoints ( const CPVector points  )  [virtual]

set all control points (Ippei: Is this supposed to be 'add' method?)

Implements HuginBase::PanoramaData.

Definition at line 1013 of file Panorama.cpp.

Referenced by alignStereoWindow(), HuginBase::getCPoutsideLimit(), HuginBase::getCPoutsideLimit_pair(), PanoOperation::CleanControlPointsOperation::GetInternalCommand(), main(), and main2().

void HuginBase::Panorama::setDirty ( const bool &  dirty = true  )  [inline, protected, virtual]

Reimplemented from AppBase::DocumentData.

Definition at line 957 of file Panorama.h.

void HuginBase::Panorama::setFilePrefix ( std::string  prefix  )  [inline]

sets the path prefix of the images reffered with relative paths

Definition at line 969 of file Panorama.h.

Referenced by PanoDetector::loadProject(), main(), and processPTO().

void HuginBase::Panorama::setImage ( std::size_t  nr,
const SrcPanoImage img 
) [inline, virtual]

set a panorama image, counting starts with 0

Implements HuginBase::PanoramaData.

Definition at line 217 of file Panorama.h.

Referenced by PanoDetector::loadProject().

void HuginBase::Panorama::setImageFilename ( unsigned int  img,
const std::string fname 
) [virtual]

set a new image filename

It is assumed that it is of the same size as the old image.

Implements HuginBase::PanoramaData.

Definition at line 937 of file Panorama.cpp.

Referenced by main().

void HuginBase::Panorama::setMemento ( const PanoramaMemento memento  ) 

set the internal state

Definition at line 2384 of file Panorama.cpp.

Referenced by RunStitchPanel::DetectProject(), MainFrame::OnMergeProject(), iCPApp::OnRun(), Project::ReadOptions(), AutoCtrlPointCreator::readUpdatedControlPoints(), and RunStitchPanel::StitchProject().

bool HuginBase::Panorama::setMementoToCopyOf ( const PanoramaDataMemento *const   memento  )  [virtual]

set the internal state

Implements HuginBase::ManagedPanoramaData.

Definition at line 2361 of file Panorama.cpp.

void HuginBase::Panorama::setOptimizerSwitch ( const int  newSwitch  )  [virtual]

set optimizer master switch

Implements HuginBase::PanoramaData.

Definition at line 867 of file Panorama.cpp.

Referenced by PossiblePano::GeneratePanorama(), and main().

void HuginBase::Panorama::setOptimizeVector ( const OptimizeVector optvec  )  [virtual]

set optimize setting

Implements HuginBase::PanoramaData.

Definition at line 861 of file Panorama.cpp.

Referenced by HuginBase::getCPoutsideLimit_pair(), LensCalFrame::GetPanorama(), main2(), and optimize_old().

void HuginBase::Panorama::setOptions ( const PanoramaOptions opt  )  [virtual]

set new output settings This is not used directly for optimizing/stiching, but it can be feed into runOptimizer() and runStitcher().

Implements HuginBase::PanoramaData.

Definition at line 2408 of file Panorama.cpp.

Referenced by HuginLines::_getVerticalLines(), autoCrop(), PossiblePano::GeneratePanorama(), HuginBase::getCPoutsideLimit_pair(), LensCalFrame::GetPanorama(), main(), main2(), processImg(), Project::ReadOptions(), PanoPanel::StackCheck(), and RunStitchPanel::StitchProject().

void HuginBase::Panorama::setPhotometricOptimizerSwitch ( const int  newSwitch  )  [virtual]

sets the photometric optimizer master switch

Implements HuginBase::PanoramaData.

Definition at line 875 of file Panorama.cpp.

Referenced by PossiblePano::GeneratePanorama(), and main().

void HuginBase::Panorama::setSrcImage ( unsigned int  nr,
const SrcPanoImage img 
) [virtual]

set input image parameters

This sets the values of the image variables, but does not change the links.

Warning:
Variable links cannot be set this way.

Implements HuginBase::PanoramaData.

Referenced by PossiblePano::GeneratePanorama(), LensCalFrame::GetPanorama(), main(), main2(), GLPreviewFrame::ResetTranslationPlaneParameters(), and resetValues().

void HuginBase::Panorama::swapImages ( unsigned int  img1,
unsigned int  img2 
) [virtual]

swap images.

swaps the images, image img1 becomes img2 and the other way round

Implements HuginBase::PanoramaData.

Definition at line 2262 of file Panorama.cpp.

References DEBUG_DEBUG, DEBUG_WARN, HuginBase::PTScriptParsing::getDoubleParam(), HuginBase::PTScriptParsing::getIntParam(), and HuginBase::PTScriptParsing::getPTParam().

void HuginBase::Panorama::transferMask ( MaskPolygon  mask,
unsigned int  imgNr,
const UIntSet  targetImgs 
) [virtual]

transfers given mask from image imgNr to all targetImgs

Implements HuginBase::PanoramaData.

Definition at line 1770 of file Panorama.cpp.

References imageChanged().

void HuginBase::Panorama::unlinkImageVariableActive ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 857 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableActiveMasks ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 854 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableAutoCenterCrop ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 807 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableCropMode ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 805 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableCropRect ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 806 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableEMoRParams ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 770 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifAperture ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 831 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifCropFactor ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 828 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifDate ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 836 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifDistance ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 833 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifExposureMode ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 837 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifExposureTime ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 835 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifFocalLength ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 829 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifFocalLength35 ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 834 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifISO ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 832 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifLens ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 827 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifMake ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 826 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifModel ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 825 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExifOrientation ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 830 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableExposureValue ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 771 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableFilename ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 762 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableFlatfieldFilename ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 813 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableGamma ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 772 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableHFOV ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 766 of file Panorama.cpp.

Referenced by main2().

void HuginBase::Panorama::unlinkImageVariableMasks ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 851 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariablePitch ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 778 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableProjection ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 765 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableRadialDistortion ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 792 of file Panorama.cpp.

Referenced by main2().

void HuginBase::Panorama::unlinkImageVariableRadialDistortionBlue ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 796 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableRadialDistortionCenterShift ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 799 of file Panorama.cpp.

References HuginBase::PanoramaOptions::NO_BLEND.

Referenced by main2().

void HuginBase::Panorama::unlinkImageVariableRadialDistortionRed ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 795 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableRadialVigCorrCenterShift ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 815 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableRadialVigCorrCoeff ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 814 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableResponseType ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 769 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableRoll ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 777 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableShear ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 802 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableSize ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 763 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableStack ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 789 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableTranslationPlanePitch ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 786 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableTranslationPlaneYaw ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 785 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableVigCorrMode ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 810 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableWhiteBalanceBlue ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 774 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableWhiteBalanceRed ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 773 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableX ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 781 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableY ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 782 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableYaw ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 779 of file Panorama.cpp.

void HuginBase::Panorama::unlinkImageVariableZ ( unsigned int  imgNr  )  [virtual]

Implements HuginBase::PanoramaData.

Definition at line 783 of file Panorama.cpp.

void HuginBase::Panorama::UpdateCropFactor ( UIntSet  imgs,
double  newCropFactor 
) [virtual]

updates the crop factor, try to keep focal length constant

Definition at line 504 of file Panorama.cpp.

References HuginBase::PanoramaMemento::ctrlPoints, and state.

void HuginBase::Panorama::updateCropMode ( unsigned int  imgNr  )  [private]

update the crop mode in dependence of crop rect and lens projection

Definition at line 2029 of file Panorama.cpp.

void HuginBase::Panorama::updateCtrlPointErrors ( const UIntSet imgs,
const CPVector cps 
) [virtual]

update control points for a subset of images.

Usually, the control point subset is created using subset() The number and ordering and control points must not be changed between the call to subset() and this function.

Implements HuginBase::PanoramaData.

Definition at line 228 of file Panorama.cpp.

References HuginBase::PanoramaMemento::ctrlPoints, imageChanged(), set_contains(), and state.

void HuginBase::Panorama::updateCtrlPointErrors ( const CPVector controlPoints  )  [virtual]

update control points distances.

updates control distances and position in final panorama usually used to set the changes from the optimization. The control points must be the same as in

Implements HuginBase::PanoramaData.

Definition at line 253 of file Panorama.cpp.

References HuginBase::PanoramaMemento::ctrlPoints, imageChanged(), and state.

void HuginBase::Panorama::UpdateFocalLength ( UIntSet  imgs,
double  newFocalLength 
) [virtual]

updates the focal length by changing hfov

Definition at line 477 of file Panorama.cpp.

void HuginBase::Panorama::updateLineCtrlPoints (  )  [virtual]

assign new mode line numbers, if required

Implements HuginBase::PanoramaData.

Definition at line 1035 of file Panorama.cpp.

References DEBUG_ASSERT, DEBUG_ERROR, map_get(), and HuginBase::PTScriptParsing::readVar().

void HuginBase::Panorama::updateMasks ( bool  convertPosMaskToNeg = false  )  [virtual]

updates all active masks

this is necessary after variables of *one* image has changed, because positive masks have to be updated

Implements HuginBase::PanoramaData.

Definition at line 1868 of file Panorama.cpp.

Referenced by PanoDetector::loadProject().

void HuginBase::Panorama::updateMasksForImage ( unsigned int  imgNr,
MaskPolygonVector  newMasks 
) [virtual]

set complete mask list for image with number

Implements HuginBase::PanoramaData.

Definition at line 1762 of file Panorama.cpp.

Referenced by main().

void HuginBase::Panorama::updateOptimizeVector (  )  [virtual]

updates the optimize vector according to master switches

Implements HuginBase::PanoramaData.

Definition at line 2181 of file Panorama.cpp.

virtual void HuginBase::Panorama::updateVariable ( unsigned int  imgNr,
const Variable var 
) [virtual]

update a single variable

It knows lenses etc and updates other images when the variable is linked

Implements HuginBase::PanoramaData.

Referenced by UpdateSingleVar(), and updateVariables().

void HuginBase::Panorama::updateVariables ( unsigned int  imgNr,
const VariableMap var 
) [virtual]

Set variables for a single picture.

Implements HuginBase::PanoramaData.

Definition at line 284 of file Panorama.cpp.

References HuginBase::PanoramaMemento::images, state, and updateVariable().

void HuginBase::Panorama::updateVariables ( const UIntSet imgs,
const VariableMapVector var 
) [virtual]

update variables for some specific images

Implements HuginBase::PanoramaData.

Definition at line 274 of file Panorama.cpp.

References HuginBase::PanoramaMemento::images, state, and updateVariables().

void HuginBase::Panorama::updateVariables ( const VariableMapVector vars  )  [virtual]

Set the variables.

Usually used when the optimizer results should be applied.

Implements HuginBase::PanoramaData.

Definition at line 264 of file Panorama.cpp.

References HuginBase::PanoramaMemento::images, and state.

Referenced by updateVariables().

void HuginBase::Panorama::updateWhiteBalance ( double  redFactor,
double  blueFactor 
) [virtual]

update the global white balace of the panorama by multiplying the red and blue factor of each image with given factors

Implements HuginBase::PanoramaData.

Definition at line 3351 of file Panorama.cpp.

Panorama::ReadWriteError HuginBase::Panorama::writeData ( std::ostream dataOutput,
std::string  documentType = "" 
) [virtual]

Implements AppBase::DocumentData.

Definition at line 3339 of file Panorama.cpp.

Referenced by PanoDetector::writeOutput().


Member Data Documentation

UIntSet HuginBase::Panorama::changedImages [private]

the images that have been changed since the last changeFinished()

Definition at line 1026 of file Panorama.h.

bool HuginBase::Panorama::dirty [private]

this indicates that there are unsaved changes

Definition at line 1021 of file Panorama.h.

Referenced by reset().

std::string HuginBase::Panorama::imgFilePrefix [private]

Definition at line 1018 of file Panorama.h.

bool HuginBase::Panorama::m_forceImagesUpdate [private]

Definition at line 1028 of file Panorama.h.

std::set<std::string> HuginBase::Panorama::m_ptoptimizerVarNames [private]

Definition at line 1030 of file Panorama.h.

Referenced by Panorama(), and removeImage().

std::list<PanoramaObserver *> HuginBase::Panorama::observers [private]

Definition at line 1024 of file Panorama.h.

PanoramaMemento HuginBase::Panorama::state [private]

Definition at line 1023 of file Panorama.h.

Referenced by getCtrlPointsForImage(), getCtrlPointsVectorForImage(), getImageVariables(), getVariables(), reset(), UpdateCropFactor(), updateCtrlPointErrors(), and updateVariables().


The documentation for this class was generated from the following files:
Generated on 24 Oct 2014 for Hugintrunk by  doxygen 1.4.7