Max拷贝动画——CopyPasteKeys

这个小工具在Max里拷贝动画用的,对动画师来说再使用不过了。


(

--for f in getFiles ((GetDir #export+ @"\")+"*.bps") do deleteFile f

global stime           = animationrange.start
global etime           = animationrange.end
global start_frame     = animationrange.start
global end_frame       = animationrange.end
global selectundefined = 0

global name_lag             
global removeFromList_lag  
global rloading_lag         
global rb_sel_a_lag        
global rb_sel_b_lag         
global ac_lag              
global addToList_lag       
global pastepose_lag        
global ABbutton_lag        
global  obj_r_lag          
global  obj_xyz_lag        
global  obj_tcb_lag        
global  paste_offset_lag    
global paste_offset_b_lag   
global lnk1_lag             
global wayneCheckBox_lag    
global ac_tooltip_a_lag     
global ac_tooltip_b_lag    
global ABbutton_tooltip_a_lag 
global ABbutton_tooltip_b_lag
global messagebox_a_lag   
global messagebox_b_lag    
global messagebox_c_lag     
global messagebox_d_lag     
global messagebox_e_lag     
global messagebox_f_lag     
global messagebox_a_title_lag
global format_a_lag         
global format_b_lag       
global format_c_lag        
global Accuracy_offset_lag 
global Accuracy_offset_b_lag 
global obj_r_b_lag           
global wcb_lag            
global rfl_lag             
global language_a_lag     
global language_b_lag      

--global frame_options   = false

fn english = (
	 name_lag             = "CopyPasteKey V1.19" 
	 removeFromList_lag   = "Delete the selection sets: click to delete the current selection in the list of collection"
	 rloading_lag         = "Update list: update to the latest list"
	 rb_sel_a_lag         = "Pose"
	 rb_sel_b_lag         = "Animation"
	 ac_lag               = "Range of frames: start to finish"
	 addToList_lag        = "Copy"
	 pastepose_lag        = "Paste" 
	 ABbutton_lag         = "Frame by frame copy: in this mode copy frame will copy operation on the basis of frame by frame"
	  obj_r_lag           = "Reset to reset the transformation: the transformation XYZ properties, after the reset will not be able to retain the original animation information"
	  obj_xyz_lag         = "Convert XYZ: convert a selection object to XYZ properties"
	  obj_tcb_lag         = "Convert TCB: convert a selection object to TCB properties"
	  paste_offset_lag    = "Offset " 
	 paste_offset_b_lag   = "Offset paste: input frames, paste the frame will be (start frames + offset frames) to paste action"
	 lnk1_lag             = "" 
	 wayneCheckBox_lag    = "Keep a copy: check the, the next time will keep the copy of gestures and movements"
	 ac_tooltip_a_lag     = "Range of frames: start to end"
	 ac_tooltip_b_lag     = "Range of frames: custom start end"
	 ABbutton_tooltip_a_lag ="key by key copy: in this mode will copy the frame to select all objects in the time of the frame position for copy operation"
	 ABbutton_tooltip_b_lag ="Frame by frame copy: in this mode copy frame will copy operation on the basis of frame by frame" 
	 messagebox_a_lag     = "Please select at least one object"
	 messagebox_b_lag     = "Time range error"
	 messagebox_c_lag     = "Choose the Pose is not found, please update the list"
	 messagebox_d_lag     = "Choose the Animation is not found, please update the list"
	 messagebox_e_lag     = "Concentration in attitude no object in the scene"
	 messagebox_f_lag     = "Choose some have not been recorded in posture"
	 messagebox_a_title_lag = "Prompt"
	 format_a_lag         = "cancel\n"
	 format_b_lag         = "finish\n"
	 format_c_lag         = "Schedule"
	 Accuracy_offset_lag  = " Acc "
	 Accuracy_offset_b_lag  = "Accuracy: through repeated precision numerical paste in order to achieve the most accurate results (the larger the value when the long)"
	 obj_r_b_lag          = "Res"
	 wcb_lag              = "Save Settings"
	 rfl_lag              = "X"
	 language_a_lag       = "En"
	 language_b_lag       = "Language: the current is in English"
)


(
makeDir  ((GetDir #export)+ "\\cptools_data\\")
tempdata = ((GetDir #export)+"\\cptools_data\\"+"temp.ini")
testPath = doesFileExist tempdata
english()
)

rollout cptools name_lag 
(
	Group "Main" 
		(
		dropdownlist testList items:#() tooltip:"select pose"  across: 3 width:135 enabled:true visible:true
		button removeFromList ""  height:20 width:20 offset:[59,0] toolTip:removeFromList_lag
		button rloading       " R" height:20 width:20 offset:[22,0] toolTip:rloading_lag
		radioButtons rb_sel "" width:88 height:15 labels:#(rb_sel_a_lag ,rb_sel_b_lag ) offset:[-45,0] 
		button ac "A" width:18 height:16 offset:[18,-20] enabled:false toolTip:ac_lag
		spinner Accuracy_offset "         " range:[1,10, 1] type:#integer  width:40 offset:[40,-19]  toolTip: Accuracy_offset_b_lag enabled:true
		spinner spn_start  "" range:[-99999,99999, stime]     fieldwidth:37 across: 2 offset:[-40,0] type:#integer  enabled:false
		spinner spn_end "To " range:[-99999,99999, etime]  fieldwidth:37	 offset:[-60,0] type:#integer  enabled:false
		button addToList "" width:92 offset:[-19,0]
		button pastepose "" width:58 height:42 offset:[61,-47]
		button ABbutton   "S" width:20   offset:[-77,-26] toolTip:ABbutton_lag  enabled:false
	
		)
	Group "Setting" 
		(
		button obj_r   ""    width:32 height:18 offset:[-4,0] across:4  toolTip:obj_r_lag
		button obj_xyz "XYZ"  width:32 height:18 offset:[-9,0]   toolTip:obj_xyz_lag
		button obj_tcb "TCB"  width:32 height:18 offset:[-21,0] toolTip:obj_tcb_lag
		spinner paste_offset  "Offset" range:[-99999,99999, 0] type:#integer  width:90 offset:[-18,1]  toolTip:paste_offset_b_lag  enabled:false align:#center
		)	

	HyperLink lnk1 "Address" align:#center color:(color 150 150 150) hovercolor:(color 100 100 100) visitedcolor:(color 150 150 150) address:"http://www.cgwayne.com/" 
	dropdownlist testListAni items:#() tooltip:"select pose" width:135 enabled:true visible:false offset:[0,-171] 
	checkbox wayneCheckBox "" offset:[24,120] toolTip:wayneCheckBox_lag
	button language_btn "" offset:[85,-18] width:20 height:15 toolTip:language_b_lag
	progressbar doit_prog  offset:[-9,0] width:190 height:8 color:red

	on language_btn pressed  do 
	(
		if language_btn.text =="En"  then 
		(
			english()
			language_btn.text = language_a_lag
	        hold_CB = wayneCheckBox.checked
			hold_RB = rb_sel.state
			hold_ST = spn_start.value
			hold_ED = spn_end.value
			hold_AC = ac.text
			hold_AO = Accuracy_offset.value
			hold_AB = ABbutton.text
			hold_PO = paste_offset.value
			hold_SE = spn_start.enabled    
			hold_EE = spn_end.enabled       	
			hold_AE = ac.enabled
			hold_BE = ABbutton.enabled
			hold_PA = paste_offset.enabled
			hold_TP = testList.visible
			hold_TA = testListAni.visible 
			
			wayneCheckBox.checked = true
			postest = getDialogpos cptools
		    destroyDialog cptools
	        createDialog cptools  200 210 pos:postest
			-----------------------------------------------»Ö¸´×´Ì¬		
			wayneCheckBox.checked  = hold_CB
			rb_sel.state           = hold_RB
			spn_start.value        = hold_ST
			spn_end.value          = hold_ED
			ac.text                = hold_AC
			Accuracy_offset.value  = hold_AO 
			ABbutton.text          = hold_AB
			paste_offset.value	   = hold_PO
	        spn_start.enabled      = hold_SE 
	        spn_end.enabled        = hold_EE
	        ac.enabled 		       = hold_AE
	        ABbutton.enabled   	   = hold_BE
			paste_offset.enabled   = hold_PA 
			testList.visible       = hold_TP
	        testListAni.visible    = hold_TA 
			
		)else(
			english()
			language_btn.text = language_a_lag
			---------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值