39 = {ImageVariableGroup::IVE_Size,
40 ImageVariableGroup::IVE_Projection,
41 ImageVariableGroup::IVE_HFOV,
42 ImageVariableGroup::IVE_ResponseType,
43 ImageVariableGroup::IVE_EMoRParams,
44 ImageVariableGroup::IVE_Gamma,
45 ImageVariableGroup::IVE_RadialDistortion,
46 ImageVariableGroup::IVE_RadialDistortionRed,
47 ImageVariableGroup::IVE_RadialDistortionBlue,
48 ImageVariableGroup::IVE_RadialDistortionCenterShift,
49 ImageVariableGroup::IVE_Shear,
50 ImageVariableGroup::IVE_VigCorrMode,
51 ImageVariableGroup::IVE_FlatfieldFilename,
52 ImageVariableGroup::IVE_RadialVigCorrCoeff,
53 ImageVariableGroup::IVE_RadialVigCorrCenterShift
72 = {ImageVariableGroup::IVE_Yaw,
73 ImageVariableGroup::IVE_Pitch,
74 ImageVariableGroup::IVE_Roll,
75 ImageVariableGroup::IVE_Stack,
76 ImageVariableGroup::IVE_X,
77 ImageVariableGroup::IVE_Y,
78 ImageVariableGroup::IVE_Z,
79 ImageVariableGroup::IVE_TranslationPlaneYaw,
80 ImageVariableGroup::IVE_TranslationPlanePitch
99 const std::set<ConstImageVariableGroup::ImageVariableEnum> &
105 const std::set<ConstImageVariableGroup::ImageVariableEnum> &
115 std::size_t image_number;
117 for (image_number = 0; image_number < number_of_images; image_number++)
124 DEBUG_ERROR(
"Cannot find an image with requested lens number.");
144 #define image_variable( name, type, default_value)\
146 VariableMap temp_vars;\
147 if (set_contains(lens_variables_set, ImageVariableGroup::IVE_##name))\
149 PTOVariableConverterFor##name::addToVariableMap(image.get##name##IV(), temp_vars);\
150 for (VariableMap::iterator tvi = temp_vars.begin(); tvi != temp_vars.end(); tvi++)\
152 LensVariable & lens_var = map_get(result.variables, tvi->first);\
153 lens_var.setValue(tvi->second.getValue());\
154 lens_var.setLinked(image.name##isLinked());\
159 #undef image_variable
static const std::set< ConstImageVariableGroup::ImageVariableEnum > & getLensVariables()
Get the set of lens image variables.
void setImageSize(const vigra::Size2D &sz)
set image size in pixels
unsigned int getPartNumber(unsigned int imageNr) const
Get a part number from an image number.
Somewhere to specify what variables belong to what.
void setProjection(LensProjectionFormat l)
set projection type
ImageVariableGroup m_stacks
#define DEBUG_ASSERT(cond)
ConstImageVariableGroup m_stacks
the stack ImageVariableGroup.
ImageVariableGroup m_lenses
Make an ImageVariableGroup for lenses and other common concepts.
const ConstImageVariableGroup::ImageVariableEnum lens_variables_array[]
The image variables that are specific to lenses.
virtual const SrcPanoImage & getImage(std::size_t nr) const =0
get a panorama image, counting starts with 0
void setCropFactor(double newCropFactor)
sets the crop factor
const PanoramaData & m_pano
ConstImageVariableGroup m_lenses
the lens ImageVariableGroup.
const std::set< ConstImageVariableGroup::ImageVariableEnum > lens_variables_set
A set containing the lens image variables.
Convenience functions for SrcPanoImage to use on the image variables.
const std::set< ConstImageVariableGroup::ImageVariableEnum > stack_variables_set
A set containing the stack image variables.
void updatePartNumbers()
Update the part numbers, call this when the panorama changes.
StandardImageVariableGroups(PanoramaData &pano)
void update()
Update part numbers for each variable group.
const ConstImageVariableGroup::ImageVariableEnum stack_variables_array[]
The image variables that are specific to stack.
void update()
Update part numbers for each variable group.
ConstStandardImageVariableGroups(const PanoramaData &pano)
constructor.
virtual std::size_t getNrOfImages() const =0
number of images.
std::size_t getNumberOfParts() const
get the number of parts.
All variables of a source image.
This file specifies what image variables SrcPanoImg should have.
static const std::set< ConstImageVariableGroup::ImageVariableEnum > & getStackVariables()
Get the set of stack image variables.
Lens getLensForImage(std::size_t imgNr)
Get the lens object for a specific image, also not for new code.
Lens getLens(std::size_t lens_number)
A panorama.getLens equivalent, not for new code.