Snapping & constraints
Snapping and constraints are used to allow high precision modeling. Snapping tools compute nearest position that may be useful (grid point, vertex, edge…) and constraints lock movement to specified direction(s). These tools are accessible from Player toolbar.
Tool is activated by clicking on it; additional tool properties are accessible by rclicking on the tool icon. Panels for snapping tools are located in preferences encapsulator
(/Preferences/Snapping/ and /Preferences/Snapping/Point edit snapping).
Snapping & constraints can be combined and activated together. For example you can have active grid snapping and snap to edge at once. Then when moving or drawing a polygon nearest point will be used as a snap position. This is also valid for constraints, for example when constraining movement to two non-parallel planes movement will be constrained to their intersection.
You can have as many snapping managers as you wish, movement widget tools are now extended to contain snapping group name. In this way you can add special controls to Widgets that will cause snapping to selected elements, whereas other controls can move without snapping or constraints. Polygon draw
Polygon draw tool allows directly drawing faces or edges during point edit mode.
Activate the tool by clicking on Polydraw tool icon in Player toolbar.
When selected object is not in point edit mode tool will activate it.
You add vertices connected by edges, by clicking on the mesh faces.
To modify vertex position during polygon draw, drag existing vertex.
To add new vertex on the edge, click on it.
When hovering above edge, Polydraw tool shows high/ite of vertex that will be added.
To remove the vertex, move the vertex you want to delete to another vertex.
Tool will not allow creating invalid geometry. When trying to create bad polygon highlite will show in red.
To close the loop, click on the first vertex.
You can draw polygon across multiple faces, but edges need to pass thru edges or vertices on neighboring faces.
When you draw acceptable set of edges, Polydraw will change highlite to selection color.
When you activate other widget tool in this state, tool will finish without closing whole polygon. This behavior is intended for drawing edges or adding vertices.
Snapping and Polydraw
You can use snapping with Polydraw:
simply enable or disable snapping & constraint tools when drawing polygons.
Activate guideline by snapping current vertex to edge and press shift key. If you want to move in perpendicular direction, hold shift and ctrl.
Deﬁned set of general purpose array data objects for scripting:
Universal Array Data.
Int Array Data.
Number Array Data.
String Array Data.
Boolean Array Data.
All are deﬁned in Common Data package.
You can create single-dimensional as well as multidimensional arrays using these data objects.
Universal Array Data can store items of any type (primitives like int, bool, or rosetta data types), but it is slower and more memory consuming than specialized types (e.g. Int Array Data), so choose the right type carefully.
// Create simple array by adding items
a = System.CreateDO(“Common Data Package\Universal Array Data”);
// Create 2 dimensional integer array
a = System.CreateDO(“Common Data Package\Int Array Data”)
for (i = O; i < 10; i++)
for (j = 0;j<10;j++)
Adding a cube. There are 3 modes how to add a cube.
Diagonal — this is Modeler way. LClick to deﬁne ﬁrst corner, drag and rclick do deﬁne second corner.
Edges — deﬁne cube by deﬁning two edges. First click & drag deﬁnes bottom X edge. Second click&drag deﬁnes Z edge.
Corners — cube is created after adding 4 points. (you can either click or drag to use xy or z movements).
For adding torus, sphere, cylinder, cone there are 2 modes.
Diameter — deﬁne diameter for base, by ldrag, rdgar deﬁnes height
Radius – deﬁne center + radius for base, by ldrag, rdgar deﬁnes height
Adding text has only one mode; ldrag + rdrag deﬁnes orjentation of text XY plane rotation.
Primitive employs extensive snapping.
You can specify height directly by snapping to other objects during rdrag. Primitive base can be precisely aligned by constraining movement to lD and aligning with other objects like in rdrag
mode. Constraining can be done either by locking axes or locking to edges / faces.
You can specify edge endpoint (diagonal, radius…) in plane mode directly by snapping to other objects by holding ALT key.
ALT key can be used to force snapping even if cursor is in nosnap range deﬁned by added primitive and nosnap radius found in tool preferences panel.
To ﬁnish primitive tool, rclick in player view.
To access primitive preferences panel, rclick on appropriate tool button. To access primitive tool preferences panel, rclick on any primitive tool and change preferences panel aspect to default.
NOTE: not all primitives are parametric; this means that you cannot change properties for them.
NOTE: there are no magic ring widgets yet, so after adding a primitive no panel/widget is
if maya navigation is installed then need to change snap key from ALT to CTRL in the primitive widget
only cone and cylinder have ldrag and rdrag behavior
text primitive rdrag defines height not orientation
ALT key snapping only seems to snap to edges and maybe faces
base plane = screen only works with cube primitive
WindowsManager.MoveWindow name item enhanced about possibility to work with working area size or the whole window size.
WindowsManager.MoveWindow(idWindow, -1, -1, Width, Height, WorkAreaSize, -1, -1);
info panel +,-,*,/,sin/cos,arcsin,arcos,ln,log,exp,sqrt,PI
can save bvh
RsImport.ExportCollada(‘filename’, ‘list of nodes’)
can change topology after vertex morph
soft paint has a morph mode – paint one morph to another