[Closed] Ffd control points
I’m looking for a way to iterate through all control points on a FFD Lattice. Imagine you want to place objects for each control point where the number of control points is unknown.
Why does
$.theModifier[6]
return ‘Master’ but
$.theModifier.master
is undefined?
Thanks,
Khye
Created a Box.
Added FFD 4x4x4
Pressed [Animate All] button to assign controllers to all points.
The Master controller can be accessed by index or by name – in the 4x4x4 FFD, it is the 3rd subanim and not the 6th, so using the name is better.
theMaster = $.modifiers[1][#master]
SubAnim:Master
theCount = theMaster.numsubs
64
for i = 1 to theCount do print theMaster[i]
SubAnim:Control_Point_1
SubAnim:Control_Point_2
SubAnim:Control_Point_3
SubAnim:Control_Point_4
SubAnim:Control_Point_5
SubAnim:Control_Point_6
SubAnim:Control_Point_7
SubAnim:Control_Point_8
SubAnim:Control_Point_9
SubAnim:Control_Point_10
SubAnim:Control_Point_11
SubAnim:Control_Point_12
SubAnim:Control_Point_13
SubAnim:Control_Point_14
SubAnim:Control_Point_15
SubAnim:Control_Point_16
SubAnim:Control_Point_17
SubAnim:Control_Point_18
SubAnim:Control_Point_19
SubAnim:Control_Point_20
SubAnim:Control_Point_21
SubAnim:Control_Point_22
SubAnim:Control_Point_23
SubAnim:Control_Point_24
SubAnim:Control_Point_25
SubAnim:Control_Point_26
SubAnim:Control_Point_27
SubAnim:Control_Point_28
SubAnim:Control_Point_29
SubAnim:Control_Point_30
SubAnim:Control_Point_31
SubAnim:Control_Point_32
SubAnim:Control_Point_33
SubAnim:Control_Point_34
SubAnim:Control_Point_35
SubAnim:Control_Point_36
SubAnim:Control_Point_37
SubAnim:Control_Point_38
SubAnim:Control_Point_39
SubAnim:Control_Point_40
SubAnim:Control_Point_41
SubAnim:Control_Point_42
SubAnim:Control_Point_43
SubAnim:Control_Point_44
SubAnim:Control_Point_45
SubAnim:Control_Point_46
SubAnim:Control_Point_47
SubAnim:Control_Point_48
SubAnim:Control_Point_49
SubAnim:Control_Point_50
SubAnim:Control_Point_51
SubAnim:Control_Point_52
SubAnim:Control_Point_53
SubAnim:Control_Point_54
SubAnim:Control_Point_55
SubAnim:Control_Point_56
SubAnim:Control_Point_57
SubAnim:Control_Point_58
SubAnim:Control_Point_59
SubAnim:Control_Point_60
SubAnim:Control_Point_61
SubAnim:Control_Point_62
SubAnim:Control_Point_63
SubAnim:Control_Point_64
for i = 1 to theCount do print theMaster[i].value
[0,0,0]
[0,0,0.333333]
[0,0,0.666667]
[0,0,1]
[0,0.333333,0]
[0,0.333333,0.333333]
[0,0.333333,0.666667]
[0,0.333333,1]
[0,0.666667,0]
[0,0.666667,0.333333]
[0,0.666667,0.666667]
[0,0.666667,1]
[0,1,0]
[0,1,0.333333]
[0,1,0.666667]
[0,1,1]
[0.333333,0,0]
[0.333333,0,0.333333]
[0.333333,0,0.666667]
[0.333333,0,1]
[0.333333,0.333333,0]
[0.333333,0.333333,0.333333]
[0.333333,0.333333,0.666667]
[0.333333,0.333333,1]
[0.333333,0.666667,0]
[0.333333,0.666667,0.333333]
[0.333333,0.666667,0.666667]
[0.333333,0.666667,1]
[0.333333,1,0]
[0.333333,1,0.333333]
[0.333333,1,0.666667]
[0.333333,1,1]
[0.666667,0,0]
[0.666667,0,0.333333]
[0.666667,0,0.666667]
[0.666667,0,1]
[0.666667,0.333333,0]
[0.666667,0.333333,0.333333]
[0.666667,0.333333,0.666667]
[0.666667,0.333333,1]
[0.666667,0.666667,0]
[0.666667,0.666667,0.333333]
[0.666667,0.666667,0.666667]
[0.666667,0.666667,1]
[0.666667,1,0]
[0.666667,1,0.333333]
[0.666667,1,0.666667]
[0.666667,1,1]
[1,0,0]
[1,0,0.333333]
[1,0,0.666667]
[1,0,1]
[1,0.333333,0]
[1,0.333333,0.333333]
[1,0.333333,0.666667]
[1,0.333333,1]
[1,0.666667,0]
[1,0.666667,0.333333]
[1,0.666667,0.666667]
[1,0.666667,1]
[1,1,0]
[1,1,0.333333]
[1,1,0.666667]
[1,1,1]