Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 带Pymunk的摆动弹簧_Python_Physics_Pyglet_Pymunk_Pendulum - Fatal编程技术网

Python 带Pymunk的摆动弹簧

Python 带Pymunk的摆动弹簧,python,physics,pyglet,pymunk,pendulum,Python,Physics,Pyglet,Pymunk,Pendulum,我正试图创造一个摆,摆上摆动的弦和质量,它会摆动一段时间,然后停止。根据我写的,质量无法停止振荡。请帮帮我 import pyglet import pymunk import chipmunk from pymunk import Vec2d from pymunk.pyglet_util import DrawOptions window = pyglet.window.Window(1300,700,"Oscillation&qu

我正试图创造一个摆,摆上摆动的弦和质量,它会摆动一段时间,然后停止。根据我写的,质量无法停止振荡。请帮帮我

    import pyglet
    import pymunk
    import chipmunk
    from pymunk import Vec2d
    from pymunk.pyglet_util import DrawOptions

    window = pyglet.window.Window(1300,700,"Oscillation",resizable=False)# 
    W,H
    options=DrawOptions()

    space=pymunk.Space()
    space.gravity= 0,-100




    b0= space.static_body
    p0= 100,200


    body= pymunk.Body(mass=0.5, moment =1)
    body.position = (100,50)
    circle= pymunk.Circle(body, radius=20)

    joint= pymunk.constraint.DampedSpring(b0, body,p0, (0,0), 100, 10, 0)
    space.add(body, circle, joint)

    @window.event
    def on_draw():
    window.clear()
    space.debug_draw(options)

    def update(dt):
    space.step(dt)

    if __name__=="__main__":
    pyglet.clock.schedule_interval(update,1.0/60)
    pyglet.app.run()

您没有在调用的最后一个参数中提供阻尼:

joint= pymunk.constraint.DampedSpring(b0, body,p0, (0,0), 100, 10, 0)

所以它将永远振荡。施加一定的阻尼,它应该会减速。

谢谢。我能够为阻尼增加一些值,一段时间后它停止了。非常感谢。@TAYO cool,如果答案有帮助,请“接受”它