BLENDER_v240REND 1SRt>m`SRanimation@?BB@HTYDATA@?n?DATA?n?@?DATA?n@?DATA@n`@?DATA`@n@@DATA@n@`@DATA@n8A@DATA8AnA@DATAAnA8AxDATAAnBAxDATABnXBADATAXBnBBxDATABnXBDATABo0C??DATA0CoxCB@?@DATAxCoC0C@?`@DATACoDxC@@DATADoPDC`@@DATAPDoDD?@DATADoDPD?8ADATADo(ED@8ADATA(EopED`@ADATApEoE(E@ADATAEoFpE@ADATAFoHFE8AADATAHFoFF@BDATAFoFHFAXBDATAFo GFBXBDATA GohGF`@BDATAhGoG GAXBDATAGoGhG8ABDATAGo@HG@BDATA@HoGXBBDATATq8T@?`@@@LHIDATAH^I333? DdCLzաDp1AXCC(BDC??DATATI`H333? /9DATA8TqKT@??8ADATAKqN8TAXBB@p==o?yyyP0OpMDATA0OYL333?l???'@g ?????%g '@?pop=ણ=o!>)9ѾZD?-A5 ?Ae '@?p==o????'@g ???-A@CV B? #<Cg ?'@DATA(L]pM0O333?lzC̽̌?zC@EE #< #<`jFzD @CVOBzC̽̌?DATATpM`L333?l/9DATANqhTKB@AXB?PC@AHMwwwxyORDATAOYR333?D?2ѕ70`U>9]z;]z?U>\m7/R??v~ʰ2ѮU>;]z?0=]zU>g=5Cz@??J37ѕ7td#?z?9]z?q?@sVU]w fOA/RAj? i@^)=J>aؾtBv֟O>Kq>|Ac(@?PC@AHM?2ѕ70`U>9]z;]z?U>\m7/R?!G?C!zQ}2p=A@CV B? #<Chi@DATATR`O333?D/9DATAhTqYN`@BXBA| m=>o?wwwxPhUPXDATAhUYPX333????t????3??t?| m=>o=:>?q=A5{@t?| m=>o????t????p=A@CV B? #<Ct??DATATPX`hU333?/9DATAYqhTXBA8AB??PףyyyZ_DATA(Z]0\333? zC̽̌?zC@GG #< #<`jFzD OBzC̽̌?DATA0\Y_Z333? ??? ???? A???PA A!O?j?}GCHB? A@CV B? #<CDATAT_`0\333? /9SRt`m>SRmodlisationHacdhPhDATAHanaDATAanaHaDATAan baDATA bnhbaDATAhbnb bhDATAbnbhbhDATAbn@cbDATA@cncbDATAcnc@cphDATAcncpDATAdo`daaDATA`doddHa bDATAdod`dHahbDATAdo8ed bbDATA8eoedhbbDATAeoe8eabDATAeofea@cDATAfoXfeb@cDATAXfoffhbcDATAfofXfbcDATAfo0gfbcDATA0goxgf@ccDATAxgog0gccDATAgohxgb@cDATAhoghbbDATAPhqHahbb b^<>o?gMgLMLxYDPiDATAPip(jOutputRender>DATA(jpkPiRenderRender@>DATAkpk(jAnimRender>DATAkplkFormatRender>DATAlpmkLink and MaterialsEditing> DATAmp`nlCameraEditing@>DATA`np8omPreviewWorld>DATA8opp`nWorldWorld@>DATAppp8oAnim settingsObject>DATAppqpDrawObjectF>DATAqprpConstraintsObject>DATArppsqPreviewTexture>DATApspHtrRadio RenderRadio>DATAHtp upsRadio ToolRadio@>DATA upuHtPreviewMaterial>DATAupv uMaterialMaterial@>DATAvpwuShadersMaterial>DATAwpxvMirror TranspMaterial>vDATAxpXywTextureMaterial>DATAXyp0zxMeshEditingF>DATA0zp{XyPreviewLamp>DATA{p{0zLampLamp@>DATA{p|{Shadow and SpotLamp>DATA|p}{Texture and InputLamp>DATA}ph~|Map ToLamp>|DATAh~p@}Mesh ToolsEditing>DATA@ph~Mesh Tools 1Editing>DATApР@ScriptlinksScript>DATAРpAnimAnim>DATApРSoundSound>DATApXListenerSound@>DATAXp0SequencerSound>DATA0pXRampsMaterial@>uDATAp0TextureTexture@>DATApMist / Stars / PhysicsWorld>DATApAmb OccWorld>DATAphTexture and InputWorld>DATAhp@Map ToWorld>DATA@phCurve and SurfaceEditingF> DATAp@Curve ToolsEditing>DATApȫCurve Tools1Editing>DATAȫpHooksObject@>pDATApxȫParticle InteractionObject>qDATAxpPTexture faceEditing>DATAPp(xUV CalculationEditing>xDATA(pPModifiersEditing> DATApذ(ShapesEditing>DATAذpSoftbodyObject>qDATApذEffectsObject>qDATA^333?PhDhCީDu\bCC(BDC??MDATAYx333?Ph???Ȃ>7??? ө?Ȃ??^<>o;2ZF,?r$BTR"E@cȂ???r$B@CV B?=CȂ>7DATATx`333?PhSave AsFONTATHC:\Creation\BlenderFiles\Pythons\Mesh2Curve\Mesh2Curve_1.3.blendlend DATAqPhbaa@c@Y@YDATAqcc@cb =!=o?qiqiq  h0aW0aW8DATApغBackgroundView3d>"DATAغpTransform PropertiesIpoE7>"UWDATApغOutputRender>DATAp`RenderRender@>DATA`p8AnimRender>DATA8p`FormatRender>DATAxd 333? ww>^`#`DATA e333?DATAY333????<,s?Y????<,@sͿY@? =!=oIν2;=+n<? A~A<,@sͿY@? =!=o????<,s?Y?? A@CV B?=C<,s?Y DATAb333?CC???DATAcx=W 333??zDzDBC  zDzD=HB DATAx=W 333??zDzD~gyBXևC  FzD #<HB DATA(]x=W333?zC̽̌?VtD)|@   #< #<`jFzD OBzC̽̌?DATAg 333?ELECT IMAGE?  n&(&#\Rfichier\Blenderfiles\text site\\DATA^ 333?DdCBDNCC(BDC??@DATA a333?q= ff?KK+KK+BA@ A@CC #<@@xDATA,xOBDATA,xOBq= @CVDATA  333?zCC1y8BC@?CFC= ADATA_333?{CA:2C?jA@@ A@FB= A DATAT`333?SAVE TEXT FILEC:\Creation\BlenderFiles\Pythons\Mesh2Curve\.37a\.blender\scripts\\RealignPathAxis.blenddlendEND  DATAqhbbcc܋=m=o?oioio phWWDATApTransform PropertiesView3dL>">,DATAY333?S?_rȫ>`>=e>\b?+>vN?S?`>>^澬=Zb?sȫ>e+>A[@ٿa@?Bpg=cZ篺<3w_< ,k;n`>=e>\b?+>vN?%??K $<UmIjA@CV B??><@==CB[?` ????DATA_333?{CA]\uo?Y0DATA0_333?,b@{CAhXDA A@FB= A DATAY0333?,b@????????8=i>o?fffAD&@??fffA@CV B? #<CDATAT`333?,b@SELECT MOVIEc:\RRFichier\BlenderFiles\nos\render\cuments\0001_0120.avi S DATAxq0H(8=H>o?aaa x8DATAx_P333?g@zCAzCA1||1 A@FB= A DATAPY8x333?g@????????8=H>o?fffA*@??fffA@CV B? #<CDATAT8`P333?g@AVE TARGA/t1.blend9DATAqxpH8=>o?___`DATA(]333?lm@B̽̌?B̽̌? #< #<`jFzD SQB̽̌?DATAY333?lm@????????8=>o?fffA@??fffA@CV B? #<CDATAT`333?lm@OAD FILE/9SCWSC1@CV`5WPD@u^%?jqt@~jqt@~jqt@~=@Udd??< ddd??_@ @????L?fff??@ A////render\//#D@XDATAOa@VDATAOP5lUDATAPOKlDATAOPDATAO@CVDATA(@N,d'=A@DATAVZ ?o: DATAxDATAUP8ddivxDATAd80 =\K,2z`H???dc:\divx.logc:\test.divxc:\mvinfo.binc:\newrc.txtCU,*8CUCurve.004pY00ؼYؼY@V` hoW(V(Vn4?I{?0?+@.x@ix@d?????L=DATA80':WDATA:W&JB>5?I>???==Pn??mr= ;?Jἁӿ6?(8@8??.?&@?N@>t??>?@Z4?i+@? ?e@TG@?j2?hi@,!O@?e.?9zc@?l?@Uv?-H????`@@?tc7k @??jɜS@D??_ȿ`@>?ٿbe@??ؿ@!@?Կ@=m@?DATAp?@@@@@@@AA A0A@APA`ApAAAAAAAAAAACU,8*CUCurve.005Y@Y@Y@V YWW@36Nݢ@WX@G?U@d?????L=DATA8'`DATA0&NIv@?:P-@?7Ɗ@?,.Ҿ @?څb??J>ʽ@?jKH?覿 \=?b_=^,b? ʥ>7]>w?=@*?/?H-X@F>T??pzD=R>Lj@?mP-Q>J@?|84= E@?W>F}>xZ@?@2/a>g@?84=9_A?0>?/A?7j>(A?x?84=^5A?DATA``?@@@@@@@AA A0A@APA`ApAAAAAACU,*# 8CUCurveCircleYP P YxYSS>>?d?????L=DATA8P '  8TDATA8T%|Z!vZ!>zZ!>;1>xZ!>>>|Z!>>3>vZ!zZ!>;xZ!CAt CACameraL>=B B@?LAHVLALamp?????A4B>??? B4B?@@???IPP`  IPCurveIpo.004  fff?zC̽̌?CUDATAT ,h CU?C*Y:DATAph %$*$*AщB?B?{ C?IPP ` IPCurveIpo.005  fff?zC̽̌?CUDATAT ,CU?C*Y:DATAp%$*$*AщB?B?{ C?WO `5WMWOWorld:h>H>?&M>C>r???A@pA A?L= TXdTXRealignPathAxis.pyHAh]Y ZgDATADHC:\Creation\BlenderFiles\Pythons\Mesh2Curve\RealignPathAxis.blend\DATAU8TDATAP BTDATAPXBYC 15DATAP$IYDATA(CQY qqqqDATA(pSUTnd)DATAp(XYYYY#DATApCYDATAH DHIqqnqDATAHXDY1)DATAHYDointDATA D@Y qqqvDATA h0F@Y)ptDATAh FyX##DATAhFSt DATA@FYDATA@ZY`Y/FREEDATA@GYADATA`8GY&qqqqDATA`؛Y8YlDATA`XYxIrsDATAXJY)==1DATAXJ8YqqqqDATAX(KpYxs):DATA0`KYP,zmDATA0xKODATAx0KPYLqqnDATAxPLT%1EEDATAPLoUqqqDATAPLmS(nd].DATAP@MxWqqqEDATA(xMY?nd].DATA(pMY=qnqDATAp(XNT@qDATApNVW8q?DATAH@O&nqDATAHxO(TA]DATAHOJV@nqqDATA hPbW>]DATA hPpmS.DATAh 8QOqqqDATAhpQ'Ct):DATA@QhTI  DATA@hR8WA DATA@RY DATAST### DATA`pSfWLp:DATA`SȎY!##DATA`HTГY :DATA8Tp4qDATA8TLI!DATA8HUXDATA UpXDATA X U(XDATAX   VXDATA  X PV YDATA 0! V@Y$DATA0!x! VXTDATAx!!0!(W/W&3DATA!"x!W8Y%DATA"P"!WY%DATAP"""0XYDATA""P"xXXY%DATA"(#"XSDATA(#p#" YXS% ADATAp##(#xYYDATA#$p#YhYDATA$H$#YXDATAH$$$0ZTDATA$$H$hZ8TDATA$ %$ZpTDATA %h%$ZTDATAh%% %([TDATA%%h%`[(TDATA%@&%[XDATA@&&%[SUDATA&&@&\PSUt[2]DATA&'&h\ X DATA'`'&\hSe()[DATA`'''\P?U)[1]DATA''`'0]pY l:"DATA'8('p]Y~DATA8((' ^PXlDATA((8(`^?U DATA()(^?UDATA)X)(^(XDATAX)))_`Xq15DATA))X)H_@WAnatiDATA)0*)_Y0natiDATA0*x*)(`W####DATAx**0*x`XDATA*+x*`@WDATA+P+*apY/DATAP+++haXDATA++P+aXDATA+(,+axXDATA(,p,+@bW DATAp,,(,bH!urveDATA,-p,b!DATA-H-,8cjXDATAH---cY0DATA--H-cY0DATA- .-XdmS)qqDATA .h.-d@kXDDATAh.. .0ekX(DATA..h.eTnnqDATA.@/.xf؟YW0:DATA@//.gWengtDATA//@/@gjSWbbb DATA/0/g0XDATA0`0/hxkSRort DATA`000h! DATA00`0hlSR 15DATA0810XiXd1DATA8110iHYDATA1181i0IYDATA121jXDATA2X21Xj8Y1DATAX222jhIY%DATA22X2kIY&DATA2032pk JYDATA03x32kкY/DATAx3303lXJY5DATA34x3plJYDATA4P43lWHDATAP4440mKY DATA44P4pmhWDATA4(54mW(DATA(5p54nhY1DATAp55(5pnWqDATA56p5nXXDATA6H65oPW+qqqqDATAH666`oWqqqqDATA66H6oWDATA6 76o8W=ct.NDATA 7h76hpW5ct.NDATAh77 7pXct.NDATA77h7q W'DATA7@87pq XDATA@887qWDATA88@8qWointDATA898@rW qqqqDATA9`98rHWqqqqDATA`999rXS qqqqDATA99`9sSDATA98:9PsY/DATA8::9sS 15DATA::8:s8S:DATA:;:@tS DATA;X;:tY1DATAX;;;t XDATA;;X;(u0Y1DATA;0<;u8 X DATA0<x<;uS DATAx<<0<vS3DATA<=x<xvxS*DATA=P=<vS*DATAP===8w XDATA==P=w XDATA=(>=w8S$DATA(>p>=xS#DATAp>>(>pxS)DATA>?p>xHS!DATA?H?>(yS!DATAH???yS'DATA??H?yXS%DATA?(@?0zS%DATA(@p@?zS'DATAp@@(@zxS#DATA@Ap@8{WDATAAHA@{SxDATAHAAA{x()DATAAAHA\Yx\Y?DATAAAP|0DATAU#!BPYDATA B qqDATADXB""" Registration info for Blender menus: <- these words are ignoredDATA$IName: 'RealignPathAxis'DATACBlender: 240op(DATASUGroup: 'Wizards'DATA$XYYTip: 'Realign path to delete knots'DATAC"""DATA D exDATAXD__author__ = '3R - R3gis'DATAY__version__ = '0.2'DATAD__url__ = ["Script's site , http://blenderfrance.free.fr/python/","Author's site , http://cybercreator.free.fr","Author's site , http://cybercreator.free.fr", "French Blender support forum, http://www.zoo-logique.org/3D.Blender/newsportal/thread.php?group=3D.Blender"]UDATA 0F__email__=["3R, r3gis@free.fr"]DATAF eDATAF###DATAF__bpydoc__ = """\DATA0ZYThis script delete knots of path in many cases.DATAGllDATA(8GSelect curve(s) and launch the script.DATAp؛YScript will realign path in order to have the Z-axis in a position where it cross the less edges as possibleREEDATAXYDATAJ"""DATAJWDATA(KWDATA`K# $$DATAK#DATAPK# --------------------------------------------------------------------------5DATA(PL# ***** BEGIN GPL LICENSE BLOCK *****DATAL#WDATA,L# Copyright (C) 2004-2005: Regis MontoyaREEDATA@M#TDATA@xM# This program is free software; you can redistribute it and/orDATA@M# modify it under the terms of the GNU General Public LicenseDATADXN# as published by the Free Software Foundation; either version 2REEDATA<N# of the License, or (at your option) any later version.REEDATA@O#TDATADxO# This program is distributed in the hope that it will be useful,DATADO# but WITHOUT ANY WARRANTY; without even the implied warranty ofREEDATA@hP# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theqDATA0P# GNU General Public License for more details.DATA8Q#DATADpQ# You should have received a copy of the GNU General Public LicenseDATALQ# along with this program; if not, write to the Free Software Foundation,vnDATADhR# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.qqDATAR#DATA$S# ***** END GPL LICENCE BLOCK *****DATAPpS# --------------------------------------------------------------------------5nDATA$S#################################qqDATA$HT# Script pour realigner l'axe #EDATAT# d'un path #DATA$T#################################DATAHU# by 3R - 18/21/2005DATAU# pour tout probleme :DATAU# r3gis@free.frDATAV#llDATAPV# ou sur le newsgroup:DATA(V# http://zoo-logique.org/3D.Blender/ DATAV#DATA((W#You can visit www.cybercreator.sup.frDATA(W##################################### DATA(W#-------------Utilisation-----------#UDATA0X# #DATA(xX#Selectionner le path a transformer #qqDATA X#Lancer avec Alt+P #qqqDATA( Y#####################################DATAxY!2DATAY DATAYimport Blender,mathDATA0Z32DATAhZ 32DATAZ 32DATA Zversion=Blender.Get('version')DATA([ 32DATA`[robDATA[def ext_Point(pt):EDATA[ try:DATA\ pt0=[pt[0],pt[1],pt[2]]EEDATA h\ except:EDATA\ try:DATA\ pt0=pt.getTriple()[1]REEDATA 0] except:DATAp] Blender.Draw.PupMenu("Error : Can't open curves points%t|Verify you are working with a good Blender version or contact me")DATA ^ return "PB"DATA `^ return pt0DATA^ 32DATA^ 32DATA_ DATADH_#Fonction de determination du plan le plus probable de projectionEDATA4_#Fonction reprise d'un de mes scripts Mesh2Curve DATA(`#Et modifiee a l'occasionEEDATAx`############## DATA `#arg : curveobject a projeternDATA0a#retourne le vecteur de projection le +probableDATAhadef PPPP(Curve):saDATAa VecteurDePPP=[0,0,0]DATAa for curveN in Curve:DATA$@b for i in range(len(curveN)-2):REEDATAb pt0=ext_Point(curveN[i])DATA b pt1=ext_Point(curveN[i+1])dDATA 8c pt2=ext_Point(curveN[i+2])DATA4c x=[pt0[0]-pt1[0],pt0[1]-pt1[1],pt0[2]-pt1[2]]REEDATA4c y=[pt2[0]-pt1[0],pt2[1]-pt1[1],pt2[2]-pt1[2]]REEDATA,Xd #x vectoriel y sans utiliser mathutilsDATAHd xvy=[x[1]*y[2]-x[2]*y[1],x[2]*y[0]-x[0]*y[2],x[0]*y[1]-x[1]*y[0]]qqqDATA,0e #test pour rajouter dans le meme sensDATAe if ((VecteurDePPP[0]+xvy[0])**2+(VecteurDePPP[1]+xvy[1])**2+(VecteurDePPP[2]+xvy[2])**2) >= ((VecteurDePPP[0]-xvy[0])**2+(VecteurDePPP[1]-xvy[1])**2+(VecteurDePPP[2]-xvy[2])**2):qnDATAXxf VecteurDePPP=[VecteurDePPP[0]+xvy[0],VecteurDePPP[1]+xvy[1],VecteurDePPP[2]+xvy[2]]DATA g else:DATAX@g VecteurDePPP=[VecteurDePPP[0]-xvy[0],VecteurDePPP[1]-xvy[1],VecteurDePPP[2]-xvy[2]]DATAg #NormalisationDATATh Norme = math.sqrt((VecteurDePPP[0])**2+(VecteurDePPP[1])**2+(VecteurDePPP[2])**2)DATAh if Norme<>0:p DATATh VecteurDePPP=[VecteurDePPP[0]/Norme,VecteurDePPP[1]/Norme,VecteurDePPP[2]/Norme]EDATAXi return VecteurDePPPDATAi 32DATAi 32DATAjdef rot(obj,vn):REEDATA4Xj v2=Blender.Mathutils.Vector([vn[0],vn[1],vn[2]])EEDATA(j v1=Blender.Mathutils.Vector([0,0,1])DATA(k v3=Blender.Mathutils.CrossVecs(v1,v2)DATApk try:DATA0k ang=Blender.Mathutils.AngleBetweenVecs(v1,v2)DATA8l RMat=Blender.Mathutils.RotationMatrix(ang,4,"r",v3)0,DATA pl except:DATALl RMat=Blender.Mathutils.Matrix([1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1])REEDATA0m return RMatr.DATApm 32DATA,mfor obj in Blender.Object.GetSelected():REEDATA4n if type(obj.getData())==Blender.Types.CurveType:EEDATApn CurveO=obj.getData()DATAn vPPP=PPPP(CurveO)DATA,o print "Vector of projection : "+str(vPPP)DATA`o RotMat=rot(obj,vPPP)DATA o #Creation d'une nvlle curveinkDATA@o path=Blender.Object.New('Curve',str(obj.name)+" realigned")rbDATA8hp curve=Blender.Curve.New(str(obj.name)+" realigned")rbDATAp path.link(curve)DATA(q Blender.Scene.GetCurrent().link(path)DATApq curve.setFlag(7)EDATAq 2DATAq #Remplissage des pointsEEDATA @r nCur=-1EEDATAr for curveN in CurveO:DATA r dCur=0DATAs for pt in curveN:DATA0Ps Vpt=Blender.Mathutils.Vector(ext_Point(pt))DATAs if version>=238:5DATAs Vpl=RotMat*VptDATA @t else:EEDATA4t Vpl=Blender.Mathutils.MatMultVec(RotMat,Vpt)EEDATAt if dCur==0:DATA4(u curve.appendNurb([Vpl[0],Vpl[1],Vpl[2],100])EEDATA u dCur=1DATA u else:DATA4v curve[nCur].append([Vpl[0],Vpl[1],Vpl[2],100])DATA,xv curve[nCur].setFlagU(curveN.getFlagU())DATA,v curve[nCur].setFlagV(curveN.getFlagV())EDATA8w curve.update()DATAw nCur=nCur+1DATA(w #Recopie des propriete de la madre1],DATA$x curve.setBevOb(CurveO.getBevOb())DATA,px curve.setBevresol(CurveO.getBevresol())EEDATA$x curve.setExt1(CurveO.getExt1())EDATA$(y curve.setExt2(CurveO.getExt2())eDATA(y curve.setPathLen(CurveO.getPathLen())DATA(y curve.setResolu(CurveO.getResolu())qqDATA(0z curve.setResolv(CurveO.getResolv())RDATA(z curve.setTaperOb(CurveO.getTaperOb())DATA$z curve.setWidth(CurveO.getWidth())DATA8{ curve.update()EDATA{ OMat=obj.getMatrix()DATA { path.setMatrix(RotMat*OMat)qqDATA@\Y else:Blender.Draw.PupMenu("This script only works on path") DATAP| OB@CVG@VOBCamera f=1Cx@???]'?ʰ2~??~ʰ2U>:]z?ƕ70:]zU>f=1Cx@??????J\%P/?92$ ?ݜ`0U?OBd??)d??>)d????OB@VGlU@CVOBCuyT@?.???ѭ?z >u??>E"O8X?ܵv<O?&uc>yT@?.?????DOBd?? #=?>=?@???OBlUG@VOBCurve.0018jq4@~????????jq4@~?????DOBd?? #=?>=?@???OBGlUOBLamp HV~?>@-@????3???i!3?h!3??h!i!3~?>@-@?????h!3i!??3g-?i!3>@A,~?DOBd?? #=?>=?@???OBGOBCurveD@u^%????#?A???:V>z?A=_F+*}<&u?7o?[O|>D@u^%??????DOBd?? #=?>=?@???GLOBr` YYDNA18d SDNANAME*next*prev*first*lastxyzwxminxmaxyminymax*newid*libname[24]usflagpadid*idblock*filedataname[160]totcurvecurblocktypeshowkeyposcurvaltypeadrcodetotelem*data*weightsname[32]vgroup[32]sliderminslidermax*refkeyelemstr[32]elemsizeblock*ipo*fromtotkeyslurph**scripts*flagactscripttotscript*line*formatlenblen*nameflagsnlineslines*curl*sellcurcselc*undo_bufundo_posundo_len*compiledsizeseekpassepartalphapad1clipstaclipendlensortho_scaledrawsizeYF_dofdistYF_apertureYF_bkhtypeYF_bkhbiasYF_bkhrotscriptlink*anim*ibuf*mipmap[10]oklastframelastqualitytpageflagtotbindxrepyreptwstatwendbindcode*repbind*packedfilelastupdatelastusedanimspeedreserved1reserved2texcomaptomaptonegblendtype*object*texprojxprojyprojzmappingofs[3]size[3]texflagcolormodelrgbkdef_varcolfacnorfacvarfacdispfacwarpfac*handle*pname*stnamesstypesvars*varstr*result*cfradata[32](*doit)()(*callback)()versionaipotypedata[16]*ima*cube[6]imat[4][4]stypenotlaycuberesdepthrecalclastsizenoisesizeturbulbrightcontrastrfacgfacbfacfiltersizemg_Hmg_lacunaritymg_octavesmg_offsetmg_gaindist_amountns_outscalevn_w1vn_w2vn_w3vn_w4vn_mexpvn_distmvn_coltypenoisedepthnoisetypenoisebasisnoisebasis2imaflagcropxmincropymincropxmaxcropymaxxrepeatyrepeatextendcheckerdistnablaframesoffsetsfrafie_ima*plugin*coba*envfradur[4][2]modetotexenergydistspotsizespotblendhaintatt1att2bufsizesampshadspotsizebiassoftray_sampray_sampyray_sampzray_samp_typearea_shapearea_sizearea_sizeyarea_sizeztexactshadhalostepYF_numphotonsYF_numsearchYF_phdepthYF_useqmcYF_bufsizeYF_padYF_causticblurYF_ltradiusYF_glowintYF_glowofsYF_pad3YF_glowtypeYF_pad2*mtex[10]layspecrspecgspecbmirrmirgmirbambrambbambgambemitangspectraray_mirroralpharefspeczoffsaddtranslucencyfresnel_mirfresnel_mir_ifresnel_trafresnel_tra_ifilterray_depthray_depth_traharseed1seed2mode2flarecstarclinecringchasizeflaresizesubsizeflarebooststrand_stastrand_endstrand_easergbselpr_typepr_backpr_lampseptexpad4pad5diff_shaderspec_shaderroughnessrefracparam[4]rmsdarkness*ramp_col*ramp_specrampin_colrampin_specrampblend_colrampblend_specramp_showpad3rampfac_colrampfac_specfrictionfhreflectfhdistxyfrictdynamodepad2YF_arYF_agYF_abYF_dscaleYF_dpwrYF_dsmpYF_presetYF_djitname[256]scale*bbi1j1k1i2j2k2selcol1selcol2quat[4]expxexpyexpzradrad2s*mat*imatelemsdisp**mattotcolloc[3]rot[3]wiresizerendersizethreshvec[3][3]alfaweighth1h2f1f2f3hidevec[4]mat_nrpntsupntsvresoluresolvorderuordervflaguflagv*knotsu*knotsv*bp*beztcharidxkernhnurb*bevobj*taperobj*textoncurve*path*keybevpathlenbevresolwidthext1ext2spacemodespacinglinedistshearfsizewordspaceulposulheightxofyoflinewidth*strfamily[24]*vfont*vfontb*vfonti*vfontbisepchartotboxactbox*tbselstartselend*strinfocurinfo*obname[128]maxrcttotrctvartypetotvertipoextraprtbitmask*driver*tpageuv[4][2]col[4]transptileunwrapeffect*mface*tface*dface*mvert*medge*dvert*mcol*msticky*texcomesh*oc*sumohandletotedgetotfacecubemapsizesmoothreshsubdivsubdivrsubsurftypev1v2v3v4edcodecreasedef_nr*dwtotweightco[3]no[3]co[2]*errormodifiersubdivTypelevelsrenderLevels*emCache*mCachestartlengthrandomizeseedaxistolerancepercentfaceCountstartxstartyheightnarrowspeeddamptimeoffslifetimedeformflagparentinv[4][4]cent[3]falloff*indexartotindexforceoperationpntswopntsuopntsvopntswtypeutypevtypewfufvfwdudvdw*defvec[8][3]dvec[3]max**obpartypepar1par2par3parsubstr[32]*pardata*parent*track*action*poseconstraintChannelsnetworkdefbasemodifiersdloc[3]orig[3]dsize[3]drot[3]dquat[4]obmat[4][4]colbitstransflagipoflagtrackflagupflagnlaflagprotectflagipowinscaflagscavisflagboundtypedupondupoffdupstadupendsfctimemassdampinginertiaformfactorsofttimerdampingsizefacdtdtxactcolpropsensorscontrollersactuatorsbbsize[3]dfrasactdefgameflaggameflag2softflaganisotropicFriction[3]constraintsnlastripshooks*pd*soft*lifelbufportfluidsimFlagshapenrshapeflag*fluidsimSettings*derivedDeform*derivedFinalmat[4][4]curindexactivedeflectforcefieldpdef_damppdef_rdamppdef_permf_strengthf_powermaxdistpdef_sbdamppdef_sbiftpdef_sbofttotpointtotspring*bpoint*bspringnodemassgravmediafrictrklimitphysics_speedgoalspringgoalfrictmingoalmaxgoaldefgoalvertgroupinspringinfrictefrainterval**keystotpointkeyshow_advancedoptionsresolutionxyzpreviewresxyzrealsizeguiDisplayModerenderDisplayModeviscosityValueviscosityModeviscosityExponentgravxgravygravzanimStartanimEndgstarmaxRefineiniVelxiniVelyiniVelz*orgMesh*meshSurface*meshBBsurfdataPath[240]bbStart[3]bbSize[3]mistypehorrhorghorbhorkzenrzengzenbzenkambkfastcolexposureexprangelinfaclogfacgravityactivityBoxRadiusskytypephysicsEnginemisimiststamistdistmisthistarrstargstarbstarkstarsizestarmindiststardiststarcolnoisedofstadofenddofmindofmaxaodistaodistfacaoenergyaobiasaomodeaosampaomixaocolor*aospherehemiresmaxiterdrawtypesubshootpsubshootenodelimmaxsublamppamapamielmaelmimaxnodeconvergenceradfacgammaselcolsxsy*lpFormat*lpParmscbFormatcbParmsfccTypefccHandlerdwKeyFrameEverydwQualitydwBytesPerSeconddwFlagsdwInterleaveEveryavicodecname[128]*cdParms*padcdSizeqtcodecname[128]mixratemainpad[3]*avicodecdata*qtcodecdatacfraimagesframaptoframelenblurfacedgeRedgeGedgeBfullscreenxplayyplayfreqplayattribrt1rt2stereomodedimensionspresetfiltertypemaximsizexschyschxaspyaspxpartsypartssafetyborderwinposplanesimtypebufflagqualityscemoderendererocresrpad[2]alphamodedogammaosafrs_secedgeintsame_mat_reduxgausspostmulpostgammapostaddpostigammaposthuepostsatdither_intensityzminfocuszgammazsigmazblurGIqualityGIcacheGImethodGIphotonsGIdirectYF_AAYFexportxmlYF_nobumpYF_clamprgbyfpad1GIdepthGIcausdepthGIpixelspersampleGIphotoncountGImixphotonsGIphotonradiusYF_numprocsYF_raydepthYF_AApassesYF_AAsamplesGIshadowqualityGIrefinementGIpowerGIindirpowerYF_gammaYF_exposureYF_raybiasYF_AApixelsizeYF_AAthresholdbackbuf[160]pic[160]ftype[160]col[3]framename[64]cornertypeeditbutflagdegrstepturnextr_offsdoublimitsegmentsringsvertices*camera*world*setbase*basact*groupcursor[3]twcent[3]twmin[3]twmax[3]selectmodeproportionalprop_modeeditbutsize*ed*radioframing*toolsettingsaudiomarkers*theDagdagisvaliddagflagszoomblendximyim*rectspacetypeblockscale*areablockhandler[8]viewmat[4][4]viewinv[4][4]persmat[4][4]persinv[4][4]winmat1[4][4]viewmat1[4][4]viewquat[4]perspview*bgpic*localvdlocalviewlayactscenelockaroundcamzoomgridgridviewpixsizenearfargridlinesviewbutgridflagmodeselectmenunrtexnrtwtypetwmodetwflagtwdrawflagtwmat[4][4]clip[4][4]*clipbbafterdrawzbufxrayverthormaskmin[2]max[2]minzoommaxzoomscrollkeeptotkeepaspectkeepzoomoldwinxoldwinyrowbutv2d*editipoipokeyactname[32]constname[32]totipopinbutofschannellockmedian[3]cursenscuractaligntabomainbmainbo*lockpointexfromshowgrouprectxrectycurymodeltypescriptblockre_alignoldkeypresstab[7]*filelisttotfiletitle[24]dir[160]file[80]ofssortmaxnamelencollums*libfiledataretvalmenuact(*returnfunc)()*menupoopsvisiflagtree*treestoreoutlinevisstoreflagdeps_flags*imageimanrcurtile*texttopviewlinesfont_idlheightleftshowlinenrstabnumbercurrtab_setshowsyntaxunused_paddpix_per_linetxtscrolltxtbar*scriptredrawstitle[28]fasesubfasemouse_move_redrawimafasemxmydirslidirsli_linesdirsli_sxdirsli_eydirsli_exdirsli_himaslifileselmenuitemimasli_sximasli_eyimasli_eximasli_hdssxdssydsexdseydesxdesydeexdeeyfssxfssyfsexfseydsdhfsdhfesxfesyfeexfeeyinfsxinfsyinfexinfeydnsxdnsydnwdnhfnsxfnsyfnwfnhfole[128]dor[128]file[128]dir[128]*firstdir*firstfiletopdirtotaldirshilitetopfiletotalfilesimage_sliderslider_heightslider_spacetopimatotalimacurimaxcurimay*first_sel_ima*hilite_imatotal_selectedima_redraw*cmap*arg1outline[4]neutral[4]action[4]setting[4]setting1[4]setting2[4]num[4]textfield[4]textfield_hi[4]popup[4]text[4]text_hi[4]menu_back[4]menu_item[4]menu_hilite[4]menu_text[4]menu_text_hi[4]but_drawtypepad1[3]back[4]header[4]panel[4]shade1[4]shade2[4]hilite[4]grid[4]wire[4]select[4]lamp[4]active[4]transform[4]vertex[4]vertex_select[4]edge[4]edge_select[4]edge_seam[4]edge_facesel[4]face[4]face_select[4]face_dot[4]normal[4]bone_solid[4]bone_pose[4]strip[4]strip_select[4]vertex_sizefacedot_sizebpad[2]syntaxl[4]syntaxn[4]syntaxb[4]syntaxv[4]syntaxc[4]tuitbutstv3dtfiletipotinfotsndtacttnlatseqtimatimaseltexttoopsttimespec[4]dupflagsavetimetempdir[160]fontdir[160]renderdir[160]textudir[160]plugtexdir[160]plugseqdir[160]pythondir[160]sounddir[160]yfexportdir[160]versionsvrmlflaggameflagswheellinescrolluiflaglanguageuserprefviewzoomconsole_bufferconsole_outmixbufsizefontsizeencodingtransoptsmenuthreshold1menuthreshold2fontname[256]themesundostepscurssizetb_leftmousetb_rightmouselight[3]tw_hotspottw_flagtw_handlesizetw_sizetextimeouttexcollectrateobcenter_diavertbaseedgebaseareabase*sceneendxendysizexsizeyscenenrscreennrfullmainwinwinakthandler[8]*newvvec*v1*v2panelname[64]tabname[64]ofsxofsycontrolold_ofsxold_ofsysortcounter*paneltab*v3*v4*fullwinmat[4][4]headrctwinrctheadwinwinheadertypebutspacetypewinxwinyhead_swaphead_equalwin_swapwin_equalheadbutlenheadbutofscursorspacedatauiblockspanels*curscreen*curscenedisplaymodefileflagsglobalfname[80]*se1*se2*se3nrdone*stripdataorxory*newseqstartofsendofsstartstillendstillmachinestartdispenddispmulhandsize*strip*curelemfacf0facf1*seq1*seq2*seq3seqbase*soundlevelpancurposstrobe*effectdata*oldbasep*parseq*seqbasepmetastackedgeWidthangleforwardwipetypefMinifClampfBoostdDistdQualitybNoCompbuttypeuserjitstaendtotpartnormfacobfacrandfactexfacrandlifeforce[3]vectsizedefvec[3]mult[4]life[4]child[4]mat[4]texmapcurmultstaticstepomattimetexspeedtexflag2flag2negvertgroup_vvgroupname[32]vgroupname_v[32]*keysminfacused*idusedelemdxdylinkotypedataold*poin*oldpoinresetdistlastval*makeyqualqual2targetName[32]toggleName[32]value[32]maxvalue[32]materialName[32]damptimerdelaypropname[32]matname[32]axisflag*fromObjectsubject[32]body[32]pulsefreqtotlinks**linksinvertfreq2axisfbuttonbuttonfhathatfprecisionstr[128]*mynewinputstotslinks**slinksvalvalotime*actblendinprioritystridelengthstrideaxisreserved3sndnrmakecopycopymadepad[1]trackvolume*melinVelocity[3]localflagforceloc[3]forcerot[3]linearvelocity[3]angularvelocity[3]addedlinearvelocity[3]anotherpad[4]butstabutendminfacvisifacslowminloc[3]maxloc[3]minrot[3]maxrot[3]distributionint_arg_1int_arg_2float_arg_1float_arg_2toPropName[32]*toObjectbodyTypefilename[64]loadaniname[64]goaccellerationmaxspeedmaxrotspeedmaxtiltspeedrotdamptiltdampspeeddamp*sample*stream*newpackedfile*snd_soundpanningattenuationpitchmin_gainmax_gaindistancestreamlenloopstartloopendchannelshighpriopad[10]gaindopplerfactordopplervelocitynumsoundsblendernumsoundsgameengine*gkeypadfokeygobjectgkey*activechildbaserollhead[3]tail[3]bone_mat[3][3]arm_head[3]arm_tail[3]arm_mat[4][4]xwidthzwidthease1ease2rad_headrad_tailboneclassbonebasechainbaseghostepghostsizeconstflagikflag*bone*childiktree*b_bone_matschan_mat[4][4]pose_mat[4][4]pose_head[3]pose_tail[3]limitmin[3]limitmax[3]stiffness[3]ikstretchchanbasestride_offset[3]actnrtimeslidename[30]enforce*tariterationsrootbonesubtarget[32]orientweightgrabtarget[3]minmaxflagstickystuckcache[3]locallockflagfollowflagoffset[3]zmaxvolmodeplaneorglengthbulgestride_axisactstartactendstridelenrepeatblendoutstridechannel[32]TYPEcharucharshortushortintlongulongfloatdoublevoidLinkListBasevec2svec2ivec2fvec2dvec3ivec3fvec3dvec4ivec4fvec4drctirctfIDLibraryFileDataIpoKeyBlockKeyScriptLinkTextLineTextPackedFileCameraImageanimImBufMTexObjectTexPluginTexCBDataColorBandEnvMapLampWaveMaterialVFontVFontDataMetaElemBoundBoxMetaBallBezTripleBPointNurbCharInfoTextBoxCurvePathIpoDriverIpoCurveTFaceMeshMFaceMVertMEdgeMDeformVertMColMStickyOcInfoMDeformWeightModifierDataSubsurfModifierDataLatticeModifierDataCurveModifierDataBuildModifierDataMirrorModifierDataDecimateModifierDataWaveModifierDataArmatureModifierDataHookModifierDataSoftbodyModifierDataBooleanModifierDataLatticebDeformGroupLBufbActionbPosePartDeflectSoftBodyLifeFluidsimSettingsDerivedMeshObHookSBVertexBodyPointBodySpringWorldRadioBaseAviCodecDataQuicktimeCodecDataAudioDataRenderDataGameFramingTimeMarkerToolSettingsSceneGroupDagForestBGpicView3DSpaceLinkScrAreaView2DSpaceInfoSpaceIpoSpaceButsSpaceSeqSpaceFiledirentryBlendHandleSpaceOopsTreeStoreSpaceImageSpaceNlaSpaceTextSpaceScriptScriptSpaceTimeSpaceImaSelImaDirOneSelectableImaThemeUIThemeSpacebThemeSolidLightUserDefbScreenScrVertScrEdgePanelFileGlobalStripElemStripPluginSeqSequencebSoundMetaStackEditingWipeVarsGlowVarsEffectBuildEffPartEffParticleWaveEffTreeStoreElemOopsbPropertybNearSensorbMouseSensorbTouchSensorbKeyboardSensorbPropertySensorbCollisionSensorbRadarSensorbRandomSensorbRaySensorbMessageSensorbSensorbControllerbJoystickSensorbExpressionContbPythonContbActuatorbAddObjectActuatorbActionActuatorbSoundActuatorbCDActuatorbEditObjectActuatorbSceneActuatorbPropertyActuatorbObjectActuatorbIpoActuatorbCameraActuatorbConstraintActuatorbGroupActuatorbRandomActuatorbMessageActuatorbGameActuatorbVisibilityActuatorFreeCamerabSamplebSoundListenerSpaceSoundGroupKeyObjectKeyGroupObjectBonebArmaturebPoseChannelbActionChannelSpaceActionbConstraintChannelbConstraintbKinematicConstraintbTrackToConstraintbRotateLikeConstraintbLocateLikeConstraintbMinMaxConstraintbActionConstraintbLockTrackConstraintbFollowPathConstraintbDistanceLimitConstraintbRotationConstraintbStretchToConstraintbActionStripTLEN  0Phtdt0XP4@l`88,T< 4DXXD<<\@4@l( 8,\T (PD$$x$(T x H8th  8 ,@0,HhH,(lDLP@< <@Lx0848l(@0pPD<,4L,,,<8,<4XSTRC                   !"#$% &'( )*+,-./012345 678 9:;<=>?@ A!BC7 "DEFGHIJKLMNO*P#$Q%R%STUVWXYZ[\]^!_`abcd&efgh'i(jklmnopqrstuvwxyz{|) }~  *stu+*,'i##FGTUE(44y*#)+,-2rstuvFG&*P.*/_rstu     ef+ +!"#$%&'()&**+,-./012345678P09:1 !_2223;<=>?@ABCDEFGHIJ4KL43; M N*/OPqQpRSTU5 VWXYZ[\]^6_WX[^777`^abcdefghij6k5lm8n`09o:63; p N'q'r's*;tu/O vQpRqwPxyz{cd49|}~0000988<'===6k5l  <> ? 3; *u/O@> ABCDE?F qQpRP@`BGXCGA`DstuEHHH"IH7  JH'i"KH'i"LHMHNHO HyPHE0'iQ H'i"RHSH'iTab06*uUUU"3FpV''_ ''*;t3;WX    N  /OQpRD      !"#P$P % & ' ( )*+,-./ 0 1 2Y3Z4[5V6V789:\;]<]=^^^'>"?@Y ABCDEFGHIJK__ZLM`NaOPQRSTUVWXYZE[\]^0__`,\abcdefghijklmnopqrs?t?u?vwxyb8rz{|}~*&Pcddd'ie  f  0ghbef]B      !"#$i%E0'jjj&'k ()*+,E-./010'l'2b3l4# 5d6m789:;<=>? @cA iBkChsgDP EnFGHEo #(jBIJKLMp5qqNOrPQRSTUVWXYZ'2o[p\]^_`aHbcdefo8ghijklmnopqr3s tuv0swxyz{|}~qqqNOrPQtqqNOrPQuqqNOrPQ0s  *+kvqqNOrPQsk lMEw qqNOrPQsI0xqqNOrPQyz {qqNOrPQs   |}qqNOrPQs#Ik~ qqNOrPQksqqNOrPQ 7k qqNOrP07kqqNOrPsQqqNOrP     0%   !"#$%$&'()*+,-./0123456789:;<=>?@ABCDEFG"HIJKLMNOPQRSTUVW_-XYZ[\]^_`abcdefghijklmnopqrs tuvwxyz{|}~E0'   l @rrrNP     %RT 4 9 }~  & 4*l$Q      4)Z,Ny| "^  "     "E0"/""0"""E' ! "#$E0" %'&' "()*+,-. /0$ 10'" %2345' W6"789:cd; <=>?<@A 5'?B"CDl'2"' EFQRGHIJ "EKL'MNOPQRST "EKLm7UVWXYZ'[ \E0!]^ / _" ' `abcdefg h!_!i j*Aklmnop7qrstuvwxyz{qqNOrPs<0]"|''*QpRD    }' ~m   "Xp/   0"wE0  QpDtX * "cW qqNOrPQsW* c 'X0'cd'c'c' 'MW6' ' 'E0p   '*W67ENDB