Files
OmniLottie/lottie/parsers/sif/ast_impl/__pycache__/nodes.cpython-310.pyc
T

89 lines
8.9 KiB
Plaintext
Raw Normal View History

2026-03-01 21:36:54 +08:00
o
çË£i$!ã@sLddlmZddlZddlmZddlmZmZmZddl m
Z
ddl m Z m
Z
mZddlmZmZmZddlmZdd lmZmZGd
d d eed ZGd
ddeƒZGdddeƒZGdddeƒZGdddeƒZGdddeƒZGdddeƒZGdddeƒZGdddej ƒZ!GdddƒZ"Gdd „d eƒZ#Gd!d"„d"eƒZ$Gd#d$„d$eƒZ%Gd%d&„d&eƒZ&Gd'd(„d(eƒZ'Gd)d*„d*eƒZ(Gd+d,„d,e(ƒZ)Gd-d.„d.eƒZ*Gd/d0„d0eƒZ+Gd1d2„d2eƒZ,Gd3d4„d4eƒZ-Gd5d6„d6eƒZ.Gd7d8„d8eƒZ/Gd9d:„d:eƒZ0Gd;d<„d<eƒZ1Gd=d>„d>eƒZ2Gd?d@„d@eƒZ3GdAdB„dBeƒZ4dS)Cé)ÚminidomN)ÚNVector)Ú
SifAstNodeÚTypeDescriptorÚObjectRegistry)Ú
XmlAnimatable)ÚXmlBoneReferenceÚ
XmlSifElementÚXmlList)ÚSegmentÚWeightedVectorÚBline)ÚSmooth)Ú SifNodeMetaÚ FrameTimec@sdeZdZgZddZedejdede fddƒZ
edejdede fdd „ƒZ d
ej defd d Z
d
S)Ú
SifAstComplexcKs|jD]}| ||¡qdS©N)Ú_nodesÚinitialize_object)ÚselfÚkwÚnode©rú>/data/cref/Lottie-kaiyuan/lottie/parsers/sif/ast_impl/nodes.pyÚ__init__s
ÿzSifAstComplex.__init__ÚxmlÚparamÚregistrycCs2| |||¡}|ƒ}|jD] }| |||¡q
|Sr)Úget_class_from_domrÚfrom_xml)ÚclsrrrZoutclsÚinstancerrrrÚfrom_doms

zSifAstComplex.from_domcCs|Srr)r rrrrrrrsz SifAstComplex.get_class_from_domÚdomcCs,| ||¡}|jD]
}| ||||¡q |Sr)Ú_prepare_to_domrÚto_xml)rr#rÚelementrrrrÚto_dom s 
zSifAstComplex.to_domN)Ú__name__Ú
__module__Ú __qualname__rrÚ classmethodrÚElementrrr"rÚDocumentr'rrrrr
sr)Ú metaclassc
@s\eZdZdZedƒeddeddƒƒedddƒed ddƒed
ddƒed ddƒed ddƒgZd
S)ÚSifAstBoneLinkÚ bone_linkÚboneÚ
base_valueÚvectorrÚ translateÚboolTÚrotateÚskewÚscale_xÚscale_yN)r(r)r*Ú_tagrrrrrrrrr/'s




ùr/c@s$eZdZdZeddeddƒƒgZdS)ÚSifAstBoneInfluenceZ
boneinfluenceÚlinkr3rr(r)r*r:rrrrrrrr;5sþr;c@ó&eZdZdZedeƒedddƒgZdS)ÚSifSegCalcTangentZsegcalctangentÚsegmentÚamountÚrealçà?N©r(r)r*r:r r rrrrrrr?>ó

þr?c@r>)ÚSifSegCalcVertexZ
segcalcvertexr@rArBrCNrDrrrrrFGrErFc@s2eZdZdZeeddƒgZdejde fddZ
dS) ÚWeightedAverageZweighted_averageÚvectorsÚentryr#rcCs| |j¡}| dd¡|S)typeÚweighted_vector)Ú
createElementr:Ú setAttribute©rr#rr&rrrr$Ws  zWeightedAverage._prepare_to_domN) r(r)r*r:r
r rrr-rr$rrrrrGPs

ÿrGc@ó.eZdZdZeddƒeddƒedddƒgZdS) ÚSifAddÚaddÚlhsÚ_recurseÚrhsÚscalarrBçð?N©r(r)r*r:rrrrrrrP]ó 
ýrPc@óeZdZdZeddƒgZdS)ÚSifAnimatedFileZ
animated_fileÚfilenameÚstringNrWrrrrrZgóÿrZc@seZdZdZdZdZdZdS)ÚAccuracyréééN)r(r)r*ZRoughÚNormalÚFineZExtremerrrrr^os
r^c@seZdZdZdZdS)ÚDerivativeOrderrr_N)r(r)r*ÚFirstDerivativeZSecondDerivativerrrrrdvsrdc@sBeZdZdZeddƒedddƒeddejeƒed dejeƒgZ d
S) Ú
SifDerivativeÚ
derivativer<rSÚintervalrBg{®Gáz„?ÚaccuracyÚintegerÚorderN)
r(r)r*r:rr^rbrdrerrrrrrf{s
ürfc@eZdZdZeddeddƒƒeddeddƒƒeddeddƒƒeddd ƒed
dd ƒed dd ƒed
ddƒedddƒedddƒedddƒedddƒedddƒedddƒg
ZdS)Ú
SifDynamicÚdynamicZ
tip_staticr3rÚoriginÚforceZtorquerBçZdampinggš™™™™™Ù?ZfrictionZspringg>@ZtorsionÚmassg333333Ó?ZinertiaZ spring_rigidr5FZ
torsion_rigidZorigin_drags_tipTNr=rrrrrls 









órlc@rY)Ú SifGreyedZgreyedr<rSNrWrrrrrršr]rrc@s4eZdZdZeddeddƒƒeddeddƒƒgZdS)Ú SifLinearÚlinearÚsloper3rÚoffsetNr=rrrrrs¢s
þrsc@s(eZdZdZedddƒedddƒgZdS)ÚSifRadialCompositeZradial_compositeÚradiusrBrpÚthetaÚangleNrWrrrrrw«ó


þrwc@s@eZdZdZedejdedefddƒZ dej
defdd „Z d
S) Ú SifCompositeÚ compositerrrcCs| d¡}|dkr tSdS)NrJr3)Ú getAttributeÚSifVectorComposite)r rrrrJrrrr·s
zSifComposite.get_class_from_domr#cCs| d¡}| d|j¡|S)Nr}rJ)rLrMÚtypenamerNrrrr$¾s
zSifComposite._prepare_to_domN) r(r)r*r:r+rr,rrrr-r$rrrrr|´s
r|c@s(eZdZdZedddƒedddƒgZdS)rr3ÚxrBrpÚyN)r(r)r*Ú_typerrrrrrrÄr{rc @sReZdZdZeddƒedddƒeddd ƒed
dd ƒed dejeƒed
ddƒgZdS)Ú SifRandomÚrandomr<rSrxrBrpÚseedrjrÚspeedrVÚsmoothÚloopN)r(r)r*r:rrÚCubicrrrrrr„Ís



úr„c@rY)Ú SifReferencer<Ú referencerSNrWrrrrrÚr]rc@s&eZdZdZeddƒedddƒgZdS)ÚSifScaleÚscaler<rSrUrBrVNrWrrrrrârErc@sNeZdZdZeddƒeddedejjƒƒeddedejjƒƒed d
d ƒgZd S)
ÚSifStepÚstepr<rSÚdurationÚtimer_Ú
start_timerÚ intersectionrBrCN© r(r)r*r:rrÚUnitÚSecondsrrrrrrës
ürc@rO) Ú SifSubtractÚsubtractrRrSrTrUrBrVNrWrrrrr˜örXr˜c@s.eZdZdZeddƒeddƒedddƒgZdS)Ú SifSwitchÚswitchZlink_offrSZlink_onr5FNrWrrrrrXc @sLeZdZdZeddƒeddƒeddedejjƒƒeddedejjƒƒgZdS) Ú SifTimedSwapZ
timed_swapÚbeforerSÚafterrrÚlengthNr•rrrr
sürœc @sXeZdZdZeddƒeddedejjƒƒeddedejjƒƒeddedejjƒƒgZd S)
Ú SifTimeLoopÚtimeloopr<rSÚ link_timerrÚ
local_timerNr•rrrrr sür c@s<eZdZdZedddƒedddƒedddƒedddƒgZd S)