2 using System.Collections.Generic;
9 namespace droid.Runtime.Prototyping.Sensors.Transform {
29 [AddComponentMenu(SensorComponentMenuPath._ComponentMenuPath
31 + SensorComponentMenuPath._Postfix)]
36 [SerializeField] Vector3 _direction;
39 [Header(
"Observation", order = 103)]
45 [SerializeField] Vector3 _rotation;
48 [Header(
"Specific", order = 102)]
56 public override string PrototypingTypeName {
get {
return "EulerTransform"; } }
61 public Vector3 Position {
62 get {
return this._position; }
73 public Vector3 Rotation {
74 get {
return this._rotation; }
100 public Vector3 Direction {
101 get {
return this._direction; }
112 public override IEnumerable<float> FloatEnumerable {
131 var transform1 = this.transform;
132 if (this.ParentEnvironment != null && this._space ==
ObservationSpace.Environment_) {
133 this.Position = this.ParentEnvironment.TransformPoint(transform1.position);
134 this.Direction = this.ParentEnvironment.TransformDirection(transform1.forward);
135 this.Rotation = this.ParentEnvironment.TransformDirection(transform1.up);
137 this.Position = transform1.localPosition;
138 this.Direction = transform1.forward;
139 this.Rotation = transform1.up;
141 this.Position = transform1.position;
142 this.Direction = transform1.forward;
143 this.Rotation = transform1.up;
Vector3 ClipNormaliseRound(Vector3 v)