using System;
using Chernobyl.Event;
using Chernobyl.Mathematics.Vectors;
namespace Chernobyl.Mathematics.Mechanics
{
///
/// A mechanism that can be moved in positive or negative direction on 3
/// dimensions (X, Y, and Z).
///
public interface IAxis3D : IAxis2D
{
///
/// The Z axis of the 3 dimensions of this mechanism.
///
IAxis Z { get; }
///
/// The (X, Y, Z) position of the mechanism.
///
Vector3 Xyz { get; }
///
/// Invoked when this control moves in either the X, Y, Z or all three
/// directions.
///
new event EventHandler> OnMove;
}
}