# Curve to Twist Proxy Manager

<div align="left"><figure><img src="/files/X1XhyLyY7ChUlRd86bvx" alt=""><figcaption></figcaption></figure></div>

{% embed url="<https://youtu.be/39H2dNKE8hE>" %}
Check out how Emmanuelle Gaufillier Made the twists in this project!
{% endembed %}

{% embed url="<https://youtu.be/Wt9U0HQ5Ato>" %}
Release Deomo
{% endembed %}

***

## Twist Layer UI

<div align="left"><figure><img src="/files/KR73cjTnL14W3oBfxUko" alt=""><figcaption></figcaption></figure></div>

**Twist Info:**&#x20;

* Displays the layer name of current selected twists.

**S-M-L:**

* Size of the UI. Small, Medium, or Large.

**Refresh Button:**

* Sometimes a layer is deleted or when a new Maya scene is opened, click on this button to refresh the layer list so it can pick up correct layers in current scene.

**Create Twist Layer:**

* Select curve(s), and click on this button to create a new twist layer.

**Separate Layers:**

* When this is turned on, a layer will be created for each selected curve.

**Extract Selected Layers:**

* Makes a duplicate of proxy twists ​from selected twist layers.

**Extract All Layers:**

* Makes a duplicate of proxy twist from all twist layers.

**Remove All Layers:**

* Delete all layers and the setup.​

***

### **Layer Name Left/Right Click**

**Left Click:**

* **​​​​​**selects the twists in the layer

**Right Click:**

* **​**​shows menu for add/remove twists, or rename this layer. (At the moment, copy/pasting twists are not available).

**Ctrl + Click or Shift + Click:**

* **​** select multiple layers

***

### Layer Buttons

<div align="left"><figure><img src="/files/kwM060Lm50bgDOOOBfIe" alt=""><figcaption></figcaption></figure></div>

**Color Swatches:**

* Change the color of twists by clicking on the color swatch.

**Layer visibility (V):**

* Like Maya Display Layers, turn on/off twists in that layer. When multiple layers are selected, all will be toggled

**Layer Lock (L):**

* Like Maya Display Layers, set template/lock on twists in that layer to keep them from being selected. When multiple layers are selected, all will be toggled

**Editor (E):**

* Opens up the UI for twist controls.

**Add Selected Curves (+):**

* Add selected curves into this layer. The tool will apply the global settings. When multiple layers are selected, curves will ONLY be added to the layer that was clicked on.

**​Remove Selected Cards (-):**

* Select geometries in the viewport, and click on - to remove them from the layer.

**Delete Layer (x):**

* **​**Delete entire layer.&#x20;

***

### Layer Utilities

<div align="left"><figure><img src="/files/WbANLO1uWAjvV5oXlO2s" alt=""><figcaption></figcaption></figure></div>

The tool comes with Visibility, Lock and Up/Down buttons:\
​1. Toggle all layer **Visibility ON**\
2\. Toggle all layer **Visibility OFF**\
3\. **Invert** current layers **Visibility** states\
4\. Toggle all layer **Lock ON**\
5\. Toggle all layer **Lock OFF**\
6\. **Invert** current layers **Lock** States\
7\. Move selected Layer(s) Up\
8\. Move selected Layer(s) Down \
9\. Move selected Layer(s) to the top\
10\. Move selected Layer(s) to the bottom

***

## Card Control UI

<div align="left"><figure><img src="/files/BtdKwPsTjA5oe4Pk0njQ" alt=""><figcaption></figcaption></figure></div>

**Select Twists:**

* Click on this bottom on the very top of the UI to quickly select all twists in this layer.

**​Template On Curve Toggle:**

* When this is turn on, curve toggling will also set template to the geometry. Sometimes this allows easier viewing of the geometry while moving CV's of curves.

**Global Curve:**

* Toggles the main curve(s) in component mode. Moving the CVs on these curve(s) will move all together your twist strands.

**Strand Curve:**

* Toggles the **all** individual curve(s) in component mode.

**Re-Cal Curve**:

* After manipulating curve CVs, if the length of the curve has changed, click on this button to re-length geometries to the length of curves.

**Smoothing:**

* Click to smooth out strands as some settings changes the normal and orientation of the strand faces.

**Preset**:

* Choose a 'style' for twisting strands. Switching preset will overwrite all existing settings.&#x20;

**Count:**&#x20;

* Reading from the preset option, populates the amount of sub strands for the twist.

### ​Global Tab

**Length SubD:**

* Controls the length subdivision of all twists in the current layer.

**Width SubD:**&#x20;

* Controls the width subdivision of all twists in the current layer.

**Distance:**&#x20;

* Controls the distance, to the main central axis (global curves) of all twist(s) in the current layer. Increasing this will push the sub strands further away from center.

**Rotation:**

* ​Rotates all strand(s) around the **central axis (global curve)** in degrees.

**Twist:**

* Twists all strand(s) around the **central axis (global curve)**. This setting needs to be coupled with the twist ramp.

**Source Spans:**

* When a twist is created on more complicated curves ( such as coiling curves), sometimes the twist does not follow the shape of curves. On more complicated curves, you can increase the source spans to allow the twist strands to follow the curve shape more. There is no correct amount to set to. Most of the time a value of 30 is enough for most standard curves.&#x20;

{% hint style="warning" %}
**Note:** **When your initial Maya curve are more complex, (for example, if it has a lot of curls), creating a twist strand may causes some issues. Twist strands will likely not follow your initial Maya curve, or, contain flipping faces along the strand. Here's how we can fix it.**

* Depending on your complexity of the initial Maya curves, increase Source Spans value. The more complex your curves are, the higher this value needs to be. (It will also be slower)
* Increase the SubD Length slider
* Click on the Smoothing button to smooth out the twisting faces.

Please see the demo image below.
{% endhint %}

<figure><img src="/files/VqziTFg2RIu6nChXIsq8" alt=""><figcaption><p>Setting the Source Spans parameter for a more complex twist to retain the shape</p></figcaption></figure>

### Sub Tab

<div align="left"><figure><img src="/files/4fGT8To8DCCDlbTtgyAC" alt=""><figcaption></figcaption></figure></div>

**Scale, Scale X & Scale Z:**

* Controls the scale of all sub strands in the current layer.

**Length:**&#x20;

* Controls the length of all sub strands in the current layer.

**Strand Rotation:**

* Rotates all strand(s) around its **own axis (strand curve)** in degrees.

**Strand twist:**

* Twists all strand(s) around its **own axis (strand curve)** . This setting needs to be coupled with the twist ramp.
* This tab displays the settings for **individual selected cards**. If you change any settings in this tab, the corresponding setting in the global tap will be **locked.**
* You can unlock the **global** settings by '**middle mouse clicking**' on the greyed out text. Just be careful that by unlocking global settings, it will apply the value for that setting to all the cards in this layer.

***

### Misc Tab

<div align="left"><figure><img src="/files/rGOCYjaATKZDQ8uvKqgw" alt=""><figcaption></figcaption></figure></div>

**Scale Rand %:**&#x20;

* Randomize the scale for all sub strands in the current layer. A setting of 100.00 will randomly scale between 0\~100%. A setting of 20.00 randomly scale the strands between 80%\~100%.

**Length Rand %:**

* Randomize the length for all sub strands in the current layer. A setting of 100.00 randomly sets length between 0\~100%. A setting of 20.00 randomly set length between 80%\~100%.

**Scale + - :**

* Multiplier to increase or reduce the scale of each sub strand.

**Length + - :**

* Multiplier to increase or reduce the length of each sub strand. The maximum length of sub strand will not exceed the length of it's counterpart strand **curve**.

***

### Target Tab

<div align="left"><figure><img src="/files/zetV9PNxGpY3IkIDXLYc" alt=""><figcaption></figcaption></figure></div>

* This tab displays the settings for **individual selected twists**. If you change any settings in this tab, the corresponding setting in the global tap will be **locked.**
* You can unlock the **global** settings by '**middle mouse clicking**' on the greyed out text. Just be careful that by unlocking global settings, it will apply the value for that setting to all the twists in this layer.

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nobraintools.gitbook.io/maya-groomers-tool/maya-tools/curve-to-proxy-managers/curve-to-twist-proxy-manager.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
