### Keep up-to-date with Free tutorials!!

Sign me up to receive third-party emails from 3dtotal's partners, too!

- Latest news
- Exclusive Shop Offers
- Preview early content
- Plus much more

Not Ready to take that step? OK, Why not just Subscribe to the RSS Feed

1 | 2 | 3
Developing a Scripted Utility

By Sathish Shanmugasundaram
| 31864 Views
| 0
Software used:

## Other functions in Utility

on copyOption changed State do
(
copyState=State
)

This function will be called when copy option radio buttons are changed.

If changed then store current state to a variable copyState.

on ObjPlacer open do
(
)

This function will be called when object placer utility opened. Add About and Parameter rollout to the utility panel.

on ObjPlacer close do
(
removeRollout Abt
removeRollout Param
)

This function called when object placer utility closed.

Remove About and Parameter rollout in the utility panel.

Align function calculates the transformation value of source object from a polygon or vertex of destination object. This technique is also explained in MaxScript user reference "How do I align the UVMap modifier to the selected face?" (Fig06)

Fig. 06 - NormalCalculation

fn Align souCopy desNormal pos =
(
worldUpVector = [0,0,1]
rightVector = normalize (cross worldUpVector desNormal)
upVector = normalize ( cross rightVector desNormal)
theMatrix = matrix3 rightVector upVector desNormal Pos
souCopy.transform = theMatrix
)

Align function with three arguments. A copy of source object, destination objects normal and position.

The default value of world up vector is [0, 0, 1]

Calculate right vector from world up vector and normal value

Calculate local up vector from right vector and normal value.

Store right vector, up vector normal and position to theMatrix as a matrix3 value

Set Source object transformation to theMatrix

## Copy Option Function

The copy option function make copies of source object according to user's selection.

fn CopySource numCopies=
(
case copyState of
(
1:
souCpy = for i = 1 to numCopies collect(copy sourceObj)
2:
souCpy = for i = 1 to numCopies collect(instance sourceObj)
default:
souCpy = for i = 1 to numCopies collect(reference sourceObj)
)
return souCpy

If copy option function called

Check the state of copy option radio buttons.

According to copy type make copy of object and store it to an array souCpy .

Return souCopy.

I hope this tutorial is helpful. If u have any questions or suggestions, just mail me [email protected].

## < previous page

1 | 2 | 3
Related Tutorials

Tutorial

Christmas in Alsace - Making Of - Part 1

Keywords: Nicolas Brunet, 3ds Max

(5)
0 1181

Tutorial

Making of Post Apocalyptic Zombie Hunter

Keywords: Humam Munir, 3ds Max, ZBrush, vehicle, making of

2 12667

Tutorial

The Making of 'Space Station'

Keywords: Dmitriy Ten, 3ds Max, Photoshop, making of

1 11630

Tutorial

New and Exciting Features of V-Ray 3.2

Keywords: 3ds Max, V-Ray 3.2, Features

1 15486