-
Notifications
You must be signed in to change notification settings - Fork 57
Expand file tree
/
Copy pathlens.proto
More file actions
92 lines (74 loc) · 2.48 KB
/
lens.proto
File metadata and controls
92 lines (74 loc) · 2.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
/*
* Copyright (C) 2022 Open Source Robotics Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
syntax = "proto3";
package gz.msgs;
option java_package = "com.gz.msgs";
option java_outer_classname = "LensProtos";
/// \ingroup gz.msgs
/// \interface Lens
/// \brief Information about a lens element
message Lens
{
/// \brief Types of lens models.
enum Type
{
TYPE_NOT_SPECIFIED = 0;
GNOMONICAL = 1;
STEREOGRAPHIC = 2;
EQUIDISTANT = 3;
EQUISOLID_ANGLE = 4;
ORTHOGRAPHIC = 5;
CUSTOM = 6;
}
/// \brief Lens custom function type.
enum FunctionType
{
FUNCTION_NOT_SPECIFIED = 0;
SIN = 1;
TAN = 2;
ID = 3;
}
/// \brief Lens type
Type type = 1;
/// \brief Lens scale to horizontal field of view.
bool scale_to_hfov = 2;
/// \brief Lens custom function linear scaling constant
double c1 = 3;
/// \brief Lens custom function angular scaling constant.
double c2 = 4;
/// \brief Lens custom function angle offset constant.
double c3 = 5;
/// \brief Lens custom function focal length.
double focal_length = 6;
/// \brief Lens custom function type.
FunctionType function_type = 7;
/// \brief Lens cutoff angle in radians. Everything outside of the specified
/// angle will be hidden.
double cutoff_angle = 8;
/// \brief The resolution of the environment cube map used to draw the world.
int32 environment_texture_size = 9;
/// \brief Lens X focal length in pixels.
double intrinsics_fx = 10;
/// \brief Lens Y focal length in pixels.
double intrinsics_fy = 11;
/// \brief Lens X principal point in pixels.
double intrinsics_cx = 12;
/// \brief Lens Y principal point in pixels.
double intrinsics_cy = 13;
/// \brief Lens XY axis skew.
double intrinsics_skew = 14;
}