- Рейтинг
- 14
есть вот такой скрипт
macroScript SetPivotBySelection
category: "-China-"
buttonText: "Set Pivot by Selection"
tooltip: "Sets pivot of the selected object(s) based on the selection type"
(
on isEnabled return selection.count != 0
on execute do
(
if selection.count == 0 then return
local sel = selection as array
if classOf sel[1] == Editable_Poly do
(
local vertSel = polyOp.getVertSelection sel[1]
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].verts
polyOp.setPivot sel[1] verts
)
else if classOf sel[1] == PolyMeshObject do
(
local vertSel = polyOp.getVertSelection sel[1].baseObject
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].baseObject.verts[vertSel]
polyOp.setPivot sel[1] verts
)
else if classOf sel[1] == Editable_Mesh do
(
local vertSel = meshOp.getVertSelection sel[1]
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].verts
polyOp.setPivot sel[1] verts
)
else
(
local subObjLevel = sel[1].currentSubObjectLevel
case subObjLevel of
(
1:
(
local vertSel = polyOp.getVertSelection sel[1]
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].verts
polyOp.setPivot sel[1] verts
)
2:
(
local edgeSel = polyOp.getEdgeSelection sel[1]
local edges = for i = 1 to edgeSel.count where edgeSel collect sel[1].edges
polyOp.setPivot sel[1] edges
)
3:
(
local faceSel = polyOp.getFaceSelection sel[1]
local faces = for i = 1 to faceSel.count where faceSel collect sel[1].faces
polyOp.setPivot sel[1] faces
)
)
)
)
)
global myCustomRollout
if doesFileExist (getDir #userScripts + "\\myCustomRollout.rol") do
(
myCustomRollout = loadRolloutFile (getDir #userScripts + "\\myCustomRollout.rol")
destroyDialog myCustomRollout
)
myCustomRollout = newRolloutFloater "Custom Rollout" 150 200
addRollout myCustomRollout (SetPivotBySelection.create())
и вроде все верно....но он не пашет...хоть убей
macroScript SetPivotBySelection
category: "-China-"
buttonText: "Set Pivot by Selection"
tooltip: "Sets pivot of the selected object(s) based on the selection type"
(
on isEnabled return selection.count != 0
on execute do
(
if selection.count == 0 then return
local sel = selection as array
if classOf sel[1] == Editable_Poly do
(
local vertSel = polyOp.getVertSelection sel[1]
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].verts
polyOp.setPivot sel[1] verts
)
else if classOf sel[1] == PolyMeshObject do
(
local vertSel = polyOp.getVertSelection sel[1].baseObject
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].baseObject.verts[vertSel]
polyOp.setPivot sel[1] verts
)
else if classOf sel[1] == Editable_Mesh do
(
local vertSel = meshOp.getVertSelection sel[1]
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].verts
polyOp.setPivot sel[1] verts
)
else
(
local subObjLevel = sel[1].currentSubObjectLevel
case subObjLevel of
(
1:
(
local vertSel = polyOp.getVertSelection sel[1]
local verts = for i = 1 to vertSel.count where vertSel collect sel[1].verts
polyOp.setPivot sel[1] verts
)
2:
(
local edgeSel = polyOp.getEdgeSelection sel[1]
local edges = for i = 1 to edgeSel.count where edgeSel collect sel[1].edges
polyOp.setPivot sel[1] edges
)
3:
(
local faceSel = polyOp.getFaceSelection sel[1]
local faces = for i = 1 to faceSel.count where faceSel collect sel[1].faces
polyOp.setPivot sel[1] faces
)
)
)
)
)
global myCustomRollout
if doesFileExist (getDir #userScripts + "\\myCustomRollout.rol") do
(
myCustomRollout = loadRolloutFile (getDir #userScripts + "\\myCustomRollout.rol")
destroyDialog myCustomRollout
)
myCustomRollout = newRolloutFloater "Custom Rollout" 150 200
addRollout myCustomRollout (SetPivotBySelection.create())
и вроде все верно....но он не пашет...хоть убей