Как сказано в заголовке, как я могу соединить/связать 2 тела/формы пиманка, чтобы они не действовали как один объект??
Например, в этом случае у меня есть крикетная бита, состоящая из 2 отдельные тела и полигоны.
Я хочу соединить "ручку" летучей мыши с "лезвием" моей летучей мыши, чтобы получить объект, похожий на летучую мышь.
Мой код:
### BAT n Co. ###
# body format: [vertices, offset, position, mass]
bat_bodies_v = [
# bat
[[[0, 34], [4, 34], [4, 0], [0, 0]],(-2,-20),(103,190),20], # handle
[[[6, 90] , [0, 32] , [0, 17], [6, 0] , [10, 0], [10, 90]],(-5,-20),(100,100),1100] # blade
]
bat_bodies = []
for vertices, offset, pos, mass in bat_bodies_v:
moment = pm.moment_for_poly(mass,vertices,offset)
b = pm.Body(mass,moment)
b.position = pos
poly = pm.Poly(b, vertices,offset)
poly.friction = 0.9
bat_bodies.append(poly)
space.add(b,poly)
# the closest I got.
j1 = pm.constraint.PinJoint(bat_bodies[0].body,bat_bodies[1].body)
j2 = pm.constraint.RotaryLimitJoint(bat_bodies[0].body,bat_bodies[1].body,0,0)
space.add(j1,j2)
Это ============= становится ================> Это
У меня есть функция, рисующая зеленые круги в местах расположения тела