<?xml version="1.0" encoding="UTF-8" ?>
<class name="PinJoint2D" inherits="Joint2D" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		A physics joint that attaches two 2D physics bodies at a single point, allowing them to freely rotate.
	</brief_description>
	<description>
		A physics joint that attaches two 2D physics bodies at a single point, allowing them to freely rotate. For example, a [RigidBody2D] can be attached to a [StaticBody2D] to create a pendulum or a seesaw.
	</description>
	<tutorials>
	</tutorials>
	<members>
		<member name="angular_limit_enabled" type="bool" setter="set_angular_limit_enabled" getter="is_angular_limit_enabled" default="false">
			If [code]true[/code], the pin maximum and minimum rotation, defined by [member angular_limit_lower] and [member angular_limit_upper] are applied.
		</member>
		<member name="angular_limit_lower" type="float" setter="set_angular_limit_lower" getter="get_angular_limit_lower" default="0.0">
			The minimum rotation. Only active if [member angular_limit_enabled] is [code]true[/code].
		</member>
		<member name="angular_limit_upper" type="float" setter="set_angular_limit_upper" getter="get_angular_limit_upper" default="0.0">
			The maximum rotation. Only active if [member angular_limit_enabled] is [code]true[/code].
		</member>
		<member name="motor_enabled" type="bool" setter="set_motor_enabled" getter="is_motor_enabled" default="false">
			When activated, a motor turns the pin.
		</member>
		<member name="motor_target_velocity" type="float" setter="set_motor_target_velocity" getter="get_motor_target_velocity" default="0.0">
			Target speed for the motor. In radians per second.
		</member>
		<member name="softness" type="float" setter="set_softness" getter="get_softness" default="0.0">
			The higher this value, the more the bond to the pinned partner can flex.
		</member>
	</members>
</class>
