RoboidControl for Arduino
Loading...
Searching...
No Matches
Placement.h
Go to the documentation of this file.
1#pragma once
2
3#include "Thing.h"
4#include "Vector2.h"
5#include "Vector3.h"
6
7namespace Passer {
8namespace RoboidControl {
9
38class Placement {
39 public:
49 float horizontalDirection = 0.0F,
50 float verticalAngle = 0.0F);
59 float verticalDirection = 0.0F);
61 Placement();
62
65 Placement* parent = nullptr;
68 Placement** children = nullptr;
71 unsigned int childCount = 0;
72
81};
82
83} // namespace RoboidControl
84} // namespace Passer
85using namespace Passer::RoboidControl;
A plament is used to specify where a Thing is placed on the Roboid.
Definition Placement.h:38
Placement ** children
An array of children of this placement in the Roboid hierarchy.
Definition Placement.h:68
float verticalDirection
The angle or direction of the Thing in the vertical plane.
Definition Placement.h:80
Placement(Thing *thing, Vector3 position=Vector3::zero, float horizontalDirection=0.0F, float verticalAngle=0.0F)
Placement of a Thing on a Roboid.
float horizontalDirection
The angle or direction of the Thing in the horizontal plane.
Definition Placement.h:78
Thing * thing
The Thing which is placed.
Definition Placement.h:74
unsigned int childCount
The number of children of this placemet in the Roboid hierarchy.
Definition Placement.h:71
Placement * parent
The parent placement in the Roboid hierarchy.
Definition Placement.h:65
Placement()
Default constructor with a zero placement.
Definition Placement.cpp:3
Vector3 position
The position of the Thing in carthesian coordinates.
Definition Placement.h:76
A thing is a functional component on a robot.
Definition Thing.h:7
Definition DRV8833.h:7
Definition DRV8833.h:6
A 3-dimensional vector.
Definition Vector3.h:35
static const Vector3 zero
A vector with zero for all axis.
Definition Vector3.h:58