miauu's Mini Transform Type-In
Script for 3dsMax 2009+ that changes the default Transform Type-In dialog to mini TTI. The miniTTI is placed over the title bar of the default TTI. The script file can be placed in maxroot/scripts/startup folder so when you run 3dsMax the default TTI will be automatically transformed to mini TTI and will be placed at the last used position of the TTI(default and mini).
In the video you can see how to use the script.
Special thanks to Denis Trofimov for his help.
Attachment | Size |
---|---|
miauuminitti_startup_10.ms | 6.44 KB |
macro_miauuminitti_secondruncloseui.mcr | 6.71 KB |
macro_miauuminitti_secondruncloseui_chinise.ms | 6.68 KB |
miauuminitti_startup_chinise_10.ms | 6.42 KB |
miauuminitti_12.mcr | 6.63 KB |
Comments
Error after use
Hello
Error after use
.
The scripts are updated and uploaded. Please, test them. If there are any problems just open the scripts in MaxScriptEditor and replace the "Move Transform Type-In" with "变换输入", save and reinstall the scripts.
Tools and Scripts for Autodesk 3dsMax
The language of the need to support
Chinese simplified
变换输入
.
This is the regular Transform Type In dialog in 3ds Max. Only the spinners are rearanged and the size of the rollout is smaller. How it works is not affected by my script.
Which langauge do you want to be supported?
Tools and Scripts for Autodesk 3dsMax
Consult
Hello, thank you. But there are two small questions to ask:
After selecting the object and executing the command, it will automatically jump to the mobile transformation mode.
Can you keep the current mode, whether it's a command execution or a post execution command?
In addition, can it only be used in the English version? If it is other language version, it will be wrong.
.
Tested on 3ds Max 2014 and there are no errors at all.
Tools and Scripts for Autodesk 3dsMax
error
hwnd = dotnetobject "IntPtr" hwndMove[1]
max2014 error!!
thanks
hi Miauu,
thank you so so so much.
you are my superstar
thanks
.
Tools and Scripts for Autodesk 3dsMax
close the dialogue box with the same shortcut key
hi miauu
thanks for the newer version
Could you Please do this for this script
thanks for your time again
this is the script
(
--FUNCTIONS
fn createAssembly =
(
str="using System;\n"
str+="using System.Runtime.InteropServices;\n"
str+="namespace Win32Helper\n"
str+="{\n"
str+=" class Win32HelperClass\n"
str+=" {\n"
str+=" [DllImport(\"user32.dll\")]\n"
str+=" [return: MarshalAs(UnmanagedType.Bool)]\n"
str+=" public static extern bool SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags);\n"
str+=" [DllImport(\"user32.dll\")]\n"
str+=" public static extern IntPtr SetFocus(IntPtr hWnd);\n"
str+=" }\n"
str+="}\n"
local csharpProvider = dotnetobject "Microsoft.CSharp.CSharpCodeProvider"
local compilerParams = dotnetobject "System.CodeDom.Compiler.CompilerParameters"
compilerParams.ReferencedAssemblies.addRange #("System.dll")
compilerParams.GenerateInMemory = on
local compilerResults = csharpProvider.CompileAssemblyFromSource compilerParams #(str)
for er = 0 to compilerResults.errors.count-1 do print (compilerResults.errors.item[er].tostring())
return compilerResults.CompiledAssembly.createInstance "Win32Helper.Win32HelperClass"
)
local win32Helper = createAssembly()
fn verifyTransformCommandMode =
(
local validCommandModes = #(#move, #Rotate, #scale, #nuscale, #uscale, #squash)
if findItem validCommandModes toolmode.commandMode == 0 do
(
toolMode.commandMode = #move
)
)
fn getInputString =
(
/*case toolMode.commandMode of
(
#Rotate: (str += "{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}")
default: (str += "{TAB}{TAB}{TAB}{TAB}")
)*/
local tabs = case toolMode.axisConstraints of
(
#x:4
#y:5
#z:6
#xy:4
#yz:5
#zx:4
)
local str = ""
for i = 1 to tabs do str += "{TAB}"
str
)
fn showTTI =
(
max tti
local hWnd = (for w in windows.GetChildrenHwnd 0 parent:#max where w[4] == "#32770" and \
matchPattern w[5] pattern:"*ransform Type-In" collect w[1])[1]
local hWndIntPtr = dotNetObject "System.IntPtr" hWnd
local pos = mouse.screenPos
win32Helper.setWindowPos hWndIntPtr 0 pos[1] pos[2] 0 0 1
win32Helper.SetFocus hWndIntPtr
(dotnetClass "SendKeys").sendWait (getInputString())
)
on execute do
(
verifyTransformCommandMode()
showTTI()
)
)