# Curve Tool Kit

<div align="left"><figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FjDjCSPm7wKipyhWFqaZ1%2FxgtCurveManipulator_user.jpg?alt=media&#x26;token=db407313-0ec0-419e-ae8d-4b0bddbf672f" alt=""><figcaption></figcaption></figure></div>

## Overview

This is a tool kit consists of multiple small functions for Maya curves. We can dock the UI to the side for easy access.

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FL0mcSYgrczyCo9alEePA%2Fv14_ui.gif?alt=media&#x26;token=5c2aedc1-dcb8-4872-a7fc-071cf49303d0" alt=""><figcaption></figcaption></figure>

* **Random Curve Select**
  * **​Set Selected Curves For Random Select:**
    * **​**Tag all selected Maya curves to be counted in the random selection.
  * **Random Select Slider:**
    * % for random curve selection.

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2Fo5eM0Vjlgk4sXE0tRJWd%2Frandom_select_v14.gif?alt=media&#x26;token=e1938a99-d0b5-4a8f-9a89-7a671d35a981" alt=""><figcaption></figcaption></figure>

* **Batch Curve Transform**
  * **​Pivot to Root:**
    * **​**Set pivot to the root of all selected curve(s).
  * **Batch Mode On:**
    * ​Toggle selection mode to curves only. This will affect all curves in scene. If you do not want some curves to be affected, please put them in a display layer and hide it.
    * After clicking on '**Batch Mode On**', Maya will only be able to select 'curves' in your scene.
  * **Batch Mode Off:**
    * ​Make sure to click on '**Batch Mode Off**' to set Maya selection back to normal.

{% hint style="warning" %}
Sometimes, curves with transform values (when it's too dramatic) can fall outside of the batch mode falloff area. If there are curves not being affected (gradient orange/red display), please freeze transforms.
{% endhint %}

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FipeRvhIWVz3rJvVKxKPb%2Fbatch_mode_v14.gif?alt=media&#x26;token=9d69a666-7509-4d60-b893-4d78ffcde0cd" alt=""><figcaption></figcaption></figure>

* **Curve CV Selection**
  * Select "**First**", "**Last**", "**Next**" or "**Previous**" CVs based on current selections.

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FenIT87QG1XTLxYfPxy5P%2FCV_selection_v14.gif?alt=media&#x26;token=1c156bd2-6a9c-4d4c-97a5-12ab7787c721" alt=""><figcaption></figcaption></figure>

* **Curve Rebuild**
  * **Rebuild** - A simple curve rebuild. Default degree is set to 3. To build a curve with total of 8 CVs, put a span of 5.&#x20;
  * **Smooth** - Smooths selected curves with the strength value.
  * **Average Curves** - Scale the selected curves so they have equal length.
  * **Get Length** - Get the 'average length' of selected curves.&#x20;
  * **Set** - Scales the selected curves so they equal the defined length in the field box.

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FiBdboZkZAK0g15FOxIrG%2Frebuilds_V14.gif?alt=media&#x26;token=db990b56-bbc6-466e-9fd7-4d84a392998c" alt=""><figcaption><p>Rebuild/Smooth/Average Curves</p></figcaption></figure>

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FSsfsP7eutMsuaPuW1hVC%2Fset_length_V14.gif?alt=media&#x26;token=4bed0e19-0f4b-4db9-bc48-35448a8ce270" alt=""><figcaption><p>Get/Set Curves Length</p></figcaption></figure>

* **Functions**
  * **Mirror** - Makes a copy of selected curves and flips them over either X, Y, or Z axis.&#x20;
  * **Lattice** - Maya's default Lattice function.
  * **Check Overlapping Curves** - From selected curves, check if curves are sitting within the threshold distance.&#x20;
  * **Length Check** - Without selecting anything in scene, set a length, and click on Select. The tool will select all curves that are shorter than the defined length in scene. This can be useful to clean up curves that has almost 0 length in scene.

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FoPoEiKUvsXuFf6hqvbvj%2Flattice_V14.gif?alt=media&#x26;token=86e49f96-fbf5-423f-8a89-9b6227d5f2d4" alt=""><figcaption><p>Using Lattice On Curves and Baking it</p></figcaption></figure>

<figure><img src="https://454332562-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGyyK7o0fNRXvtva8vEkG%2Fuploads%2FbKeM3ewdoHpz0OOw1OXB%2Foverlapping_curves_V14.gif?alt=media&#x26;token=75f982d7-0dc9-4a96-968b-8dd5946c83be" alt=""><figcaption><p>Check for Overlapping Curves</p></figcaption></figure>
