# EulerRotationCurve

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/EulerRotationCurve/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/EulerRotationCurve

Represents a 3D rotation curve through a group of three `FloatCurves`.

## Properties

### RotationOrder

```luau
EulerRotationCurve.RotationOrder: Enum.RotationOrder = Enum.RotationOrder.XYZ
```

- Tags: Read capabilities: Basic

Euler angles rotation order.

## Methods

### GetAnglesAtTime

```luau
EulerRotationCurve:GetAnglesAtTime(time: number): { any }
```

- Tags: Capabilities: Basic

Samples the three `FloatCurves` ([`X`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md), [`Y`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md), [`Z`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md)) at the passed `time` argument and returns the result as three Euler angles.

Parameters:

- `time`: The time, in seconds, at which to sample the three channel curves.

Returns: An array of three values holding the sampled [`X`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md), [`Y`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md), and [`Z`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angles; any channel whose curve is missing or has no key at `time` is returned as `nil`.

### GetRotationAtTime

```luau
EulerRotationCurve:GetRotationAtTime(time: number): CFrame
```

- Tags: Capabilities: Basic

Samples the [`EulerRotationCurve`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) at a given `time` and returns the corresponding rotation.

Parameters:

- `time`: The time, in seconds, at which to sample the curve.

Returns: A [`CFrame`](https://rapi.sleaze.dev/index/types/CFrame.md) whose rotation is composed from the [`X`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md), [`Y`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md), and [`Z`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angles sampled at `time`, applied in the order given by [`EulerRotationCurve.RotationOrder`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md); empty channels are treated as zero.

### X

```luau
EulerRotationCurve:X(): FloatCurve
```

- Tags: Capabilities: Basic

Returns the [`FloatCurve`](https://rapi.sleaze.dev/classes/FloatCurve.md) controlling the [`X`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angle channel.

Returns: The [`FloatCurve`](https://rapi.sleaze.dev/classes/FloatCurve.md) controlling the [`X`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angle channel.

### Y

```luau
EulerRotationCurve:Y(): FloatCurve
```

- Tags: Capabilities: Basic

Returns the [`FloatCurve`](https://rapi.sleaze.dev/classes/FloatCurve.md) controlling the [`Y`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angle channel.

Returns: The [`FloatCurve`](https://rapi.sleaze.dev/classes/FloatCurve.md) controlling the [`Y`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angle channel.

### Z

```luau
EulerRotationCurve:Z(): FloatCurve
```

- Tags: Capabilities: Basic

Returns the [`FloatCurve`](https://rapi.sleaze.dev/classes/FloatCurve.md) controlling the [`Z`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angle channel.

Returns: The [`FloatCurve`](https://rapi.sleaze.dev/classes/FloatCurve.md) controlling the [`Z`](https://rapi.sleaze.dev/classes/EulerRotationCurve.md) Euler angle channel.

## Inherited members

- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
