0001-Added-new-type-PlanePatch-to-sandbox.patch
proto/sandbox/rst/geometry/PlanePatch.proto | ||
---|---|---|
1 |
package rst.geometry; |
|
2 | ||
3 |
option java_outer_classname = "PlanePatchType"; |
|
4 | ||
5 |
import "rst/geometry/Pose.proto"; |
|
6 |
import "rst/geometry/PointCloud2DInt.proto"; |
|
7 | ||
8 |
/** |
|
9 |
* Defines a bounded plane patch in 3D space. |
|
10 |
* In contrast to other definitions for regular planes (with infinite extend) |
|
11 |
* this kind of bounded patch needs a local coodinate system in order to |
|
12 |
* define the borders of the patch. Thus, instead of the widely used point-normal |
|
13 |
* representation, we use a complete 6D pose or describing the location of the |
|
14 |
* plane. We define that the x-y axes of the resulting CS span the plane. |
|
15 |
* Accordingly, the z axis represents the normal on the plane. |
|
16 |
* The patch borders are represented by a 2D polygon defined by the |
|
17 |
* PointCloud2DInt type. In order to construct a 3D representation of the patch, |
|
18 |
* the 2D coordinates of the polygon must be extended by a z=0 coordinate and |
|
19 |
* transformed using the 6D pose. |
|
20 |
* |
|
21 |
* @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de> |
|
22 |
*/ |
|
23 |
message PlanePatch { |
|
24 | ||
25 |
/** |
|
26 |
* The 6D transformation defining the infinite plane (x-y axes span plane). |
|
27 |
*/ |
|
28 |
required Pose plane = 1; |
|
29 | ||
30 |
/** |
|
31 |
* The 2D polygon defining the borders of the patch. |
|
32 |
*/ |
|
33 |
required PointCloud2DInt polygon = 2; |
|
34 |
} |
|
0 |
- |