

Python: User Interface
This technical breakdown explains how a custom user interface for Maya was implemented to create Point Clouds in various shapes using Python.
User Interface Overview


The following shows implementation of individual shapes and their User Interface.






Implementation of the Delete Function
User Instructions
Step 1: Installation
To function properly the python code (mentioned below) must be copied to the appropriate location. Following are the steps:
​
i. Create a new folder named "qt_dev" in the maya directory under scripts folder (eg: C:\Users\Username\Documents\maya\scripts\qt_dev).
ii. Copy all the python code in the "qt_dev" folder.
iii. To launch the code, follow the instructions below.
​
​
​
Step 2: How to launch
The above NParticle Maker is created by implementing the following steps.
​
i. Open the Script Editor in Maya.
ii. Copy this code in Python Panel in the Maya Script Editor.
iii. Select the code and click the play icon.
iv. Following the steps above, the NParticle Maker will launch as seen below.

Step 3: How to Use

NParticle Maker Parameters :-
​
i. Shape :This lets you choose the appropriate shape for the point cloud.
​
ii. Size: :This lets adjust the size of the selected point cloud in width, height, depth, radius respectively.
​
iii. Create :This created the point cloud in the selected shape.
iv. Delete :This deletes the previously created point clouds.
​
v. Video Demonstration below.

Python Code
iii. Sliders.py
iv. Gen_points.py
Final Thoughts
This was an interesting assignment to explore and understand some of the inner working of using Python. Although the assignment application was to create a UI, the key insight remained how to assign, reference and navigate in the structural way of Python.
​
If I would have more time, I would have love to explore the following:
i. Create more complex and organic shapes for interesting Point Clouds.
ii. Use boolean operators for shapes.
iii. Ability to replace points by other basic geometry (box, sphere, cylinder) controlled by noise values.