Blender V4.3
packed_intrinsics.cc
Go to the documentation of this file.
1// Copyright (c) 2020 libmv authors.
2//
3// Permission is hereby granted, free of charge, to any person obtaining a copy
4// of this software and associated documentation files (the "Software"), to
5// deal in the Software without restriction, including without limitation the
6// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7// sell copies of the Software, and to permit persons to whom the Software is
8// furnished to do so, subject to the following conditions:
9//
10// The above copyright notice and this permission notice shall be included in
11// all copies or substantial portions of the Software.
12//
13// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19// IN THE SOFTWARE.
20
22
23namespace libmv {
24
26 parameters_.fill(0.0);
27 known_parameters_.fill(false);
28}
29
30void PackedIntrinsics::SetFocalLength(double focal_length) {
31 SetParameter(OFFSET_FOCAL_LENGTH, focal_length);
32}
34 return GetParameter(OFFSET_FOCAL_LENGTH);
35}
36
37void PackedIntrinsics::SetPrincipalPoint(double x, double y) {
38 SetParameter(OFFSET_PRINCIPAL_POINT_X, x);
39 SetParameter(OFFSET_PRINCIPAL_POINT_Y, y);
40}
42 return GetParameter(OFFSET_PRINCIPAL_POINT_X);
43}
45 return GetParameter(OFFSET_PRINCIPAL_POINT_Y);
46}
47
48void PackedIntrinsics::SetParameter(int index, double value) {
49 parameters_.at(index) = value;
50 known_parameters_.at(index) = true;
51}
52double PackedIntrinsics::GetParameter(int index) const {
53 // TODO(sergey): Consider adding a check for whether the parameter is known.
54
55 return parameters_.at(index);
56}
57
59 return known_parameters_.at(offset);
60}
61
62} // namespace libmv
double GetPrincipalPointY() const
void SetFocalLength(double focal_length)
double GetPrincipalPointX() const
void SetPrincipalPoint(double x, double y)
bool IsParameterDefined(int offset)