# Enum.DragDetectorDragStyle

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

- HTML page: https://rapi.sleaze.dev/enums/DragDetectorDragStyle/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/enums/DragDetectorDragStyle

Used with [`DragDetector`](https://rapi.sleaze.dev/classes/DragDetector.md) as the paradigm to generate proposed motion, given a stream of cursor rays.

## Items

| Name | Value | Description |
| --- | --- | --- |
| `TranslateLine` | 0 | 1D motion along the detector's `Axis`, by default the world **Y** axis. |
| `TranslatePlane` | 1 | 2D motion in the plane **perpendicular** to the detector's `Axis`, by default the world **XZ** plane. |
| `TranslatePlaneOrLine` | 2 | 2D motion in the plane **perpendicular** to the detector's `Axis` and, when the modifier is active, 1D motion along the detector's `Axis`. |
| `TranslateLineOrPlane` | 3 | 1D motion along the detector's `Axis` and, when the modifier is active, 2D motion in the plane **perpendicular** to the detector's `Axis`. |
| `TranslateViewPlane` | 4 | 2D motion in the plane perpendicular to the camera's view. In this mode, the plane is constantly updated, even while dragging, and will always face the camera's current view. |
| `RotateAxis` | 5 | Rotation about the detector's `Axis`, by default the world **Y** axis. |
| `RotateTrackball` | 6 | Trackball rotation, further customized through the `TrackballRadialPullFactor` and `TrackballRollFactor` properties. |
| `Scriptable` | 7 | Calculates desired motion via a custom function provided through `SetDragStyleFunction()`. |
| `BestForDevice` | 8 | **TranslatePlaneOrLine** for mouse and gamepad; **TranslatePlane** for touch; **6DOF** for VR. |

## Used by

Each entry lists the class, then the role and names of the members that use this type.

- [DragDetector](https://rapi.sleaze.dev/classes/DragDetector.md): property `DragStyle`
