gH]kDwP$Rosetta Beta 7.61[VS_O93YJClinton Reese, Clintons 3D Creations`d8pM*#ͺO2PNG  IHDR@@% IDATxُ]וÙ\YUdLjEInm +F$@$O~_txl$(DR*|V{ϸ@e5٦vq}ƍoo9MRv73 D՛oIuמyz㝋oO'Ӽ,VwwmnX\ʲ j%Y+4u}ww{[\\xm]`ƫHuJk`U43ñ$ϹQʟ5kz1`w߹x믽l֍Q`o_>3g\򲎣h?kڽ)-Fe$QGJ Dd "֫zt$*kEM#DXCv l{~)b)BV23 "" >`  d(iMxw?_\ZW2Y<㓢;k)jLΛ94T"bT(MUr+3!_w#"& &pi ~vБq!C+KDr`jE5Y@MS8 tDVK< >/ [ RHMtW.@, (msɬ+H2V9v!`$N fDF} qQL8q$PDD;@D`6^uU$T2GJG_RB/\JI0n4E,xSRRt,JӘ>P`]R $y v.kW9\{gBp"%@BJGQe R<瞹JHF D(E^8?}WWPR88NRj@`,|PHHL{(umۜNr"T"/K%4{DR@Iq8M=02GJGQ9 3 `:wܙف>$^zO@a_΃=ꏂ1Vˆy $gyk ᜣf;\aLU@k3;3K_t{_?bNt0;Gfgg]m+So?nGR3m:@$ieQ2@}&e_~koǕ+R򩲪"%Sb=>:\X]]}x</--f.nC+KQ# $0J@[|:yB"JڑcGD%U]*ғ;:~p8ŭ57FQܛQ~(jT_zg}͛e4nomn+936&uρYC!{}DB8MpX;rĝՏ[}+?~ݭvUk_uB!x2YX?ѧb| 0L0#37u (E&J*^J6@X?\COl^\Xw;OmÞ)>kPnzGRÇ;3yɫǏlo Xbzkuʓ++ `vнrh~ocgkwv0c}u烊Bؘ;8ËgduwYs#+)mmL:O85-&,`os?ï9wv{{s<>RJ""(jg{78888wtvov1,KQ o.MH%JHJ眎#"_WnɭQ1|`vowXZ;ٴq2>V&LQLO_:-8Ļy_t婫W=19w-G fB`ݾP$B*@@U] A'0{f@彃êtf?9mDvƵ{d09܁Ψv[[= o{e5\xpm%gdʘ"n۸uV+ŒNy{ʣyQĭ#I7HmM3\Ǻ*\~xgo:ћ1DuC:U_GC7WօVB`D9;8:ϧyయe1`SׯJǎt(kTii_޻~wMitـDN5;P^^MFyqh:98::" $(Sԭ}`po۬Yju9$J  NPP׾^yg7nLN&?lwEG+ '##o7M7WS'GSb|hǁA)e3ޝGU] 0 C(A+ٲ,bb N$wv_+5NWw_֍tBe<5M@ {o?)]v'qQz"&|4HƐT+_}t'2EɁ )BIa/KO]/XG)Yo_xwo^VWyzQt U;Q։N'-j{W.J/éj/.,[`eqGY(0 t$i4px`yy%Mu}l~.8gϟɫbt8/|s)88M$RJDcau\8:tfaqӗN.?۷N[o%#罐 Lc==`&vuŏR+ҝS`TUӬ>ޝ݋wa:g4NS -!0֢ےbjOW/_xB.|w*({&Fm|` Xqnn{F:ZS~X:[3+ F*˻"vgNi!ePG2(gVN_?__RD-^Zg(jLDJVi! ,JE{!0#Uu 3Ky x|4uNGRJm@SOç:y$NTlON uOά|G^UU>ZF)cj!&Ӊ*y"PJ@c)AR30sf=Gɥ,ͦImLEՔ!: xzJ͝rѝnUm۲N| VuQjRJ23 |R#29됁XDT(}D@@y:cB =J}ȔMmRF}MpToܾ+)Rp?37"3 K%tDVOTRB9HB8? Yb'R{S U`<+,,~hwf"!ToNU($K)bD<64UDGY#FȰgdJ "~'SF'Z#,OARD,Bg=إn!XiEq@(4&P`4RH9P>Eiєi+inw>=rkFQֽAOhc}#sQ'q W9c}N cm~=3ΗSIxRc (2xRQ<7;R ^+)Um!}ft*n !|rzR:/,8 CD)!;[["Nqs4AFc=oE`:e$)T QJRx)LDYTC]{ODNxk1z{{^fƙA9d86&Zk-'E:w‹Q~Zg1`.Ѿ5u 6VODR:.EJZYUkS(UUy88rb䣏9{XY[ke]9wQJn (CP$ibwD\j-~QvPT)@ .QGёcOBx@(/Q=ԇ{̠dt4_L3_W>ևO?Nӟ޼yʕg}w/_{擪 "}IENDB`/tfѭ8Lwb"q4܂dKu=| :install nearClipping control h .;]kI 忞@.;]kI 忞@"SubObject*Encapsulated objects"h ! ! x!  4W}@O{4W}@O{$ Owner4Owner of the Encapsulator$(XFҦV(XFҦV"LE2Data$LE2 Data for node >g'JNjn*p" zFAa| zFAa|DhelpText\vRm)EC!avRm)EC!aD leftClickScript\1V {E!Y1V {E!YD name\!K0}q!K0}qD"rightClickScript\-1OSM n-1OSM n"LayoutLayout 럆L<_ї"՞'fA5-_՞'fA5-_D3DEYED3DEYE =xNT{1V {E!YsayHello!K0}q2System.Alert("goodbye");(XFҦV>g'JNjn*pFuDr@q@ DB?՞'fA5-_ =xNT{N$?7{Ay[bA~A $?vRm)EC!a<System.Alert("hello there!"); zFAa|say hello-1OSM n 럆L<_їPDefaultOˁ CRih[  }}LActivity.Run('%THIS_NAME%' + "/doIt")8install buttons and scriptsZ`Ez]UO GFʠN= P}}Loads buttons to control the near clipping plane of the perspective view. Also controls to speed of the Maya navigation widget if it is installed.Z`Ez]UO GFʠN=P pg}}FPerspective view icon that maintains the near clipping plane distance.Z`Ez]UO GFʠN=p W}}6Right click to reset the near clipping plane distance.Z`Ez]UO GFʠN= r}}QClipping plane control: Left click to increase the near clipping plane distance.Z`Ez]UO GFʠN= Z}}9Right click to decrease the near clipping plane distance.Z`Ez]UO GFʠN= q}}PThe Maya style navigation speed increases with the near clipping plane distance.Z`Ez]UO GFʠN= ,}} version 1.5Z`Ez]UO}}n. % % `._E#ބ6 CustomFrame( .;]kI 忞@"x! h 4W}@O{$*O΢C}*O΢C} WinIDWindow IDh -pϗO 0)t-pϗO 0)PositionShelf Position mz!OHwc  >-MD'zZt>-MD'zZRectangle"Screen Rectangle THj6F 2s*h RÒGbDeC tRÒGbDeC  WidthWindow width x! [FB%n*jt[FB%n*jHeightWindow height  [GDJM [GDJMMin Width$Min. Window width%]GJ7ψ%]GJ7ψMin Height&Min. Window height^^Dy^^DyMax Width$Max. Window widthv43N tv43N tMax Height&Max. Window height~൱D@ j#^c~൱D@ j#^cMaximized(Window Is Maximized 9@'s9@'sRootNodeRootNode{Q !aOt {Q !aOt  TitleTitle Text6*Mv46*Mv4View Index$View window indexf$I `7f$I `7Frame TypeFrame Typej^G@!,j^G@!,"ViewersViewers array 2bOdA)f "I)LL !I)LL ! Def1D Default 1D GUID8M0cry8M0cry Def2D Default 2D GUIDF L$3F L$3 Def3D Default 3D GUIDobFFJL}obFFJL}SnappedTo$Snapped To WindowBXPjKɸtEBXPjKɸtE SnappedToTarget@Snapped To Window Target CornerkJHx(V@WkJHx(V@W SnappedToSource@Snapped To Window Source CornerKTLA7~fKTLA7~f"SnappedToOffsetX6Snapped To Window Offset XK8Y8O#=gtMK8Y8O#=gtM"SnappedToOffsetY6Snapped To Window Offset Ymk~_Lb.mk~_Lb.SnappedToWidth0Snapped To Window Width|7EId |7EId  SnappedToHeight2Snapped To Window HeightKXtO LKXtO L,StartSnappedToOffsetXBStart Snapped To Window Offset XVG))jHETVG))jHET,StartSnappedToOffsetYBStart Snapped To Window Offset Y?V{N7l?V{N7lSnappedToRatio,Snapped To Ratio Mode 86*n^HD9t 86*n^HD9t OwnedByOwned By|_ D|_ DTabsAsButtons Tabs As Buttons _N>G1_N>G1HiddenHidden Flag \q^2FII3w\q^2FII3wPreference,View Preference Panel >=жaMpT>=жaMpT&HideDockedTitlebarJHide Title bar when window is docked N'D)L-N'D)L-MinimizedBHJWindow Is Minimized into Blue Handle ϕ`&FSx9wϕ`&FSx9wSizeLockPrevent horizontal and/or vertical size change. 0x01 - horizontal, 0x02 - vertical˽OS˽OSDispTitleText,Display Titlebar Text Ī8mݧC>!7Ī8mݧC>!7SmallerTabs*Display smaller Tabs (XFҦV"&BXPjKɸtEkJHx(V@W|_ D8M0cryN{485B725E-A69D-4AD5-A876-B3BBA72D2C0A}mk~_Lb.[FB%n*jRÒGbDeC 1 [GDJM6*Mv4K8Y8O#=gtM\q^2FII3w{Q !aOt f$I `7v43N t I)LL !obFFJL}Ī8mݧC>!7^^Dy(XFҦV>g'JNjn*pFBCX@1@?*O΢C}N{5FDDFE6E-518F-464A-B4B9-8D24B556E36C}9@'s_N>G1-pϗO 0)mz!OHwc ˽OSF L$3>=жaMpTϕ`&FSx9w>-MD'zZ%]GJ7ψj^G@!,2bOdA)f 6^r[HJv-, ^r[HJv-, KXtO LVG))jHET?V{N7l ~൱D@ j#^cKTLA7~f|7EId 86*n^HD9t N'D)L-^r[HJv-, D Toolbar.;]kI 忞@"x! 4W}@O{$n_<&KES Qn_<&KES Q NameItem nameo(K ]p do(K ]p dHelpTextHelp text8Cechg8Cechg RowsToolbar RowsNL {NL {$Dimension$Toolbar dimension$Z_IFL!OSZ_IFL!OSHorizontal Horizontal Flag .S)A2UЍc.S)A2UЍcIsSubToolbar$IsSubToolbar Flag =JM@hM Q3=JM@hM Q3IsImportant2IsImportant Toolbar Flag .UuwO e.UuwO eIDToolbar ID'0#ԪC'X/9}'0#ԪC'X/9}$ IndexItem Index$_N>G1JdWJc~JdWJc~PrototypePrototype name<9BH@b\<9BH@b\IsMinimizedPTrue/False flag if toolbar is minimized m O1Wwm O1Ww$IsAspectT(Aspect Toolbar Flag $(XFҦV".UuwO e'0#ԪC'X/9}=JM@hM Q3 m O1Ww(XFҦV>g'JNjn*pFBCb@ f@?NL {Z_IFL!OS _N>G18CechgJdWJc~n_<&KES Q.S)A2UЍc o(K ]p d<9BH@b\ R/$ķKniaW nearClipping'0#ԪC'X/9}]8teO?s]8teO?s"MaxItemTxtHeight.Maximal item text size% sH?DC sH?DCTagTag%IlfāA>ˁwIlfāA>ˁwTagAliasTag Alias%/ru|GF0/ru|GF0AgentIDUpdate agentID(XFҦVLE2Data, 1"-1OSM n".;]kI 忞@"! 4W}@O{$n_<&KES Qo(K ]p dQm6l3Ll/V^Qm6l3Ll/V^CommandAction commandN="QEj%:N="QEj%:RClickCommand,RClick Action Command$ܿORE bi$ܿORE biPreview2D8Item preview 2D resource id*S]?G[~x;*S]?G[~x;Preview3D8Item preview 3D resource idSr)B8Sr)B8Package"Package class idDNOQsP'ѭDNOQsP'ѭBitmap.Item preview 3D bitmap eSBgciDsL[wiDsL[wRadio Group(Radio buttons group4E*4E*ControlID2D&User Control ID 2Dh>ǑJ]@<h>ǑJ]@<ControlID3D&User Control ID 3D+fyOA7XC+fyOA7XC MaxItemBmpWidth2Maximal item bitmap sizeTl@fC.^&GZTl@fC.^&GZ"MaxItemBmpHeight2Maximal item bitmap sizeh0OY~ C h0OY~ C  MaxItemTxtWidth.Maximal item text size%?Aυ D)7t?Aυ D)7tGrayPercentxGray icon about specified percents if it is not highlighted][D+Iv(][D+Iv( MenuAct As Menu 8{Nm(!8{Nm(!IsMenuButtonIs Menu Button ko6AA8R1!x(8/~ {7ϳ䇃(E> gQ 2r#ԙ+H/A %k7\ bFa,v(I7,#oyw7f*N87/`l^?u2vŮy-qQ~@iP,矎Cy^G9yoAs~DqUZݣ'Bt(3r6Y WuTFh>~B{s=J( 6qT<aՆKbQF(o gRn?b:BL9I@_cZC,@]@]ݠxuKqRĩ] 4[YhKd̓1˨O!Gn1 G1 Lֵȁ~>v&JYd]Y^nV5{д !f ub!aU6=U8^AkT*h$<69j"##6fC);0v T>j Z^FC^ KW?ȡ@RBt䝧4T*Ej7s<s'B#NiJ&e.t A8AKiqOBN "/Lpy:5@ҁƜ(o\c/G>#!mC]=Şk%B0=~2I] K5:(n2O_`4 KTg8FrEPu]>"m>An2Of'x^ҍR iKwٕ.[8n\##i:Fև,Q|IDQ:C+B}sK~O)rg'JNjn*pceZU@䑧rceZU@䑧r$_scriptData*Internal Script data [җJs@ %! 4W}@O{$(XFҦVLE2Data, 1#J@#QLJ@#QLLE2Data$LE2 Data for node >g'JNjn*pLE2Data, 3MT^RwL~YYTMT^RwL~YYTޢLE2Data$LE2 Data for node >g'JNjn*pLE2Data, 22|=Bynj2|=Bynj Control OutTransitionOutz@Hoz@Ho Control InTransitionIn 2|=Bynj2AEHM'>g'JNjn*pnBC`@0@2|=Bynj|?z@Hoۙ>?ceZU@䑧r[җJs@ jNewCommand// Execute // Called to execute the command function Execute(params) { // TODO: put your action code here owner = System.ThisOwner(); // if(Node.Exists("/Project/Windows Manager Space/CustomFrame/Toolbar/Perspective")) { replaceLeft = System.Question("Perspective button already exists in the toolbar. Would you like to replace it?"); if(replaceLeft) Node.Delete("/Project/Windows Manager Space/CustomFrame/Toolbar/Perspective"); else return; } // if(Node.Exists("/Project/Windows Manager Space/CustomFrame/Toolbar/nearClipping")) { replaceLeft = System.Question("nearClipping button already exists in the toolbar. Would you like to replace it?"); if(replaceLeft) Node.Delete("/Project/Windows Manager Space/CustomFrame/Toolbar/nearClipping"); else return; } //check for and create customframe if(!Node.Exists("/Project/Windows Manager Space/CustomFrame")) Node.Copy(owner + "/CustomFrame","/Project/Windows Manager Space"); //copy buttons to custom frame oldButt = Node.Copy(owner + "/nearClipping","/Project/Windows Manager Space/CustomFrame/Toolbar"); //copy script to custom commands //create CustomCommands if(!Node.Exists("/Scripts/CustomCommands")) { temp = Node.Create("Kernel Package/Object","/Scripts"); custcom = Node.Rename(temp,"CustomCommands"); } if(Node.Exists("/Scripts/CustomCommands/viewSpeedControl")) { replaceLeft = System.Question("viewSpeedControl script already exists. Would you like to replace it?"); if(replaceLeft) Node.Delete("/Scripts/CustomCommands/viewSpeedControl"); else return; } Node.Copy(owner + "/viewSpeedControl","/Scripts/CustomCommands"); //activate it WindowsManager.Activate(); WindowsManager.UpdateWindowsStructure(); //reset the toolbar //1D Aspect WindowsManager.SetWindowAspect('/Project/Windows Manager Space/CustomFrame', 1); //2D Aspect WindowsManager.SetWindowAspect('/Project/Windows Manager Space/CustomFrame', 2); } NScript Object Package/jScript language@4W}@O{(XFҦV>g'JNjn*pn7C`b@H@2|=Bynj|?z@Hoۙ>?J@#QL>g'JNjn*pnBB`@T@2|=Bynj|?z@Hoۙ>?-1OSM n 럆L<_їjControlOˁ CRih[ Ca8Activity.Run('%THIS_NAME%') StartZ`Ez]UOOˁ CRih[ 0 Ca:Activity.Stop('%THIS_NAME%') StopZ`Ez]UOMT^RwL~YYT>g'JNjn*pnCB`@0@2|=Bynj|?z@Hoۙ>?z@Ho48@J g'JNjn*pnBC`@0@2|=Bynj|?z@Hoۙ>?ceZU@䑧r[җJs@ NewCommand\// viewSpeedControl // near clipping plane and maya style background navigation speed control // Dec 5 2010 // version 1.5 // //recursive search for scene cameras //update true => update the camera clipping near value //update false => search scene for lowest clipping near value function ExploreNode(thePath, update) { //declare local variables for recusrsive calls var curIndex; var curnumObj; var childPath, MyObj; if(Node.IsCamera(thePath)) { //System.Trace(thePath); //System.Trace(update); if(update) { //System.Trace("update scene camera"); Node.Value(thePath + "/Camera","ClippingNear") = clipnear; } else { //clipnear 0.1 to 4.0 slope = (4.0 - 0.1)/(10 - 1); clipConst = -0.333; clipnear = slope * curViewFactor + clipConst; if(Node.Value(thePath + "/Camera","ClippingNear") < clipnear ) { curViewFactor = Math.round((Node.Value(thePath + "/Camera","ClippingNear") - clipConst)/slope); } } return; } //get first child curIndex = 0; curnumObj = Node.SubObjectCount(thePath); if(curnumObj > 0) { MyObj = Node.SubObject(thePath,0); childPath = thePath + "/" + MyObj; } //recursion runs here - get the next child while(curnumObj > 0) { ExploreNode(childPath, update); curIndex = curIndex + 1; if(curIndex < curnumObj) { MyObj = Node.SubObject(thePath, curIndex); childPath = thePath + "/" + MyObj; } else curnumObj = 0; } } // Execute // Called to execute the command function Execute(params) { // numviewnodes = Node.SubObjectCount("D3DView"); //find the minimum ClippingNear value inside D3DView node curViewFactor = 10;//range 1 to 10 for(i=0;i<numviewnodes;i++) { thenode = "D3DView/" + Node.SubObject("D3DView",i); if(Node.Value(thenode,"Perspective")==true) { //clipnear 0.1 to 4.0 slope = (4.0 - 0.1)/(10 - 1); clipConst = -0.333; clipnear = slope * curViewFactor + clipConst; if(Node.Value(thenode,"ClippingNear") < clipnear ) { curViewFactor = Math.round((Node.Value(thenode,"ClippingNear") - clipConst)/slope); } } } //find the minimum ClippingNear value including scene cameras scene = Space.CurrentScene(); //recursively search the scene for cameras ExploreNode(scene, false); if(curViewFactor>9) curViewFactor = 0; newViewFactor = curViewFactor + 1.0; if(Node.Exists("Status Line")) { if(Node.ConExists("Status Line","Model")) { Node.Value("Status Line","Model") = "view factor " + newViewFactor; } else System.Trace("view factor " + newViewFactor); } //viewFactor 1 to 10 //zoom move -0.001 to -0.08 slope = (0.08 - 0.001)/(10 - 1); zoommoveConst = -0.0076; zoomSpeed = slope * newViewFactor + zoommoveConst; //pan -0.001 to -0.1 slope = (0.1 - 0.001)/(10 - 1); panConst = -0.01; panSpeed = slope * newViewFactor + panConst; //clipnear 0.1 to 4.0 slope = (4.0 - 0.1)/(10 - 1); clipConst = -0.333; clipnear = slope * newViewFactor + clipConst; System.Trace(clipnear); //set near clipping distance for perspective view //sel = Node.SubObject("D3DView",0); //Node.Value("D3DView/" + sel,"ClippingNear") = clipnear; for(i=0;i<numviewnodes;i++) { thenode = "D3DView/" + Node.SubObject("D3DView",i); if(Node.Value(thenode,"Perspective")==true) { Node.Value(thenode,"ClippingNear") = clipnear; } } //recursively search the scene for cameras and update clipping near ExploreNode(scene, true); //set maya nav pan values encaps = "/Widgets/Tools/Background"; if(!Node.Exists(encaps + "/mayaPerspective")) return; theNode = encaps + "/mayaPerspective/mayaPan/Linear move action"; Node.Value(theNode,"SpeedX") = -panSpeed; Node.Value(theNode,"SpeedY") = -panSpeed; theNode = encaps + "/mayaPerspective/mayaZoom/Linear move action"; Node.Value(theNode,"SpeedX") = -zoomSpeed; Node.Value(theNode,"SpeedY") = -zoomSpeed; } NScript Object Package/jScript language~൱Do#^c4W}@O{(XFҦV>g'JNjn*pn_CB`@@P@2|=Bynj|?z@Hoۙ>?J@#QL>g'JNjn*pnBB`@T@2|=Bynj|?z@Hoۙ>?-1OSM n 럆L<_їjControlOˁ CRih[ a8Activity.Run('%THIS_NAME%') StartZ`Ez]UOOˁ CRih[ 0a:Activity.Stop('%THIS_NAME%') StopZ`Ez]UOMT^RwL~YYT>g'JNjn*pnCB`@0@2|=Bynj|?z@Hoۙ>?z@Ho8ʯȥJH|o7 gH]kDwP}pa`d8pM*#ͺO2/tfѭ8Lwb"q4