拉一个小球

直接以来都对物理功用有神秘感,完全不亮堂怎么落到实处的.直到看到了周银辉在老早前写的一篇博客:http://www.cnblogs.com/zhouyinhui/archive/2007/06/23/793724.html 终于精晓是怎么落到实处的了.

CompositionTarget类的Rendering事件.在每一帧成功渲染时触发.那样就能够在相当短的时辰内对目的进行更周详的操作,以高达预期效果.

唯独博客里并不曾介绍得出结果公式的进度,导致自个儿的确一只雾水了,所以决定再度写一下,分享给感兴趣的人.

先上效果图:

图片 1

大约是那般个现象,一个橡皮筋拉着三个小球在三个充满介质的空中里活动,橡皮筋越长,拉力就越大,介质能够是空气,水,油等其他液体或气体物质,取决于他们的粘性周详.

公式

Newton的公式

世家都很熟练了:(大概吧,反正小编是不熟谙,那都以本身百度查的)

a=(v2-v1)/t

F=F拉-F阻=ma

s=vt+1/2at^2

当中a是加快度,v是速度,t是时间,F是受到的力,s是移动的离开

圆球品质公式

m=4/3 * π * r^3 * ρ

里面m是品质,r是球半径,ρ是密度

粘滞阻力

没学过这种高等的大要,完全不晓得,也是在百度查的

在争鸣力学中所说的”与实体速度三次方成正比的障碍”指的正是粘滞阻力
在空气中移动速度不异常的快的实体 受到的绊脚石首倘诺粘滞阻力

Stokes公式 球形物体 F=6πηvr=3πηvd η为流体的粘性全面 r为球形物体的半径
d为球形物体的直径

 

公式都有了,供给做的便是寻觅在上次帧渲染和本次帧渲染这段时光在伊哈洛和阻碍的效果与利益下的移动距离.

功效力和进程都看作是X轴和Y轴多个样子的.

此地取的是把wpf里一个单位的相距,就当做是1Newton的力.粘性周到和球的密度作为参数设置.有了那几个,就能够依据公式推导出活动距离.(进程略…正是套公式…源码里有注释…最后会附着源码)

 

然后,好不轻易推出来了,运转程序意识小球不动.才发觉自家犯了个大错误,便是力和质量差的太悬殊,打个如若仿佛一个人拿橡皮筋去拉上海塔,肯定是拉不动.

所以本人加了个周详小球直径的三遍方在其间,打个例如大约能够领略成,拉的事物多大,小编的劲头就多大,跟被拉的东西南开学小非亲非故.小编去拉北京塔的时候,笔者早就和上海塔同样高了.

 

附上源码:拉小球物理效果.zip