<?xml version="1.0" encoding="UTF-8" ?>
<class name="Polygon2D" inherits="Node2D" category="Core" version="3.1">
	<brief_description>
		A 2D polygon.
	</brief_description>
	<description>
		A Polygon2D is defined by a set of points. Each point is connected to the next, with the final point being connected to the first, resulting in a closed polygon. Polygon2Ds can be filled with color (solid or gradient) or filled with a given texture.
	</description>
	<tutorials>
	</tutorials>
	<demos>
	</demos>
	<methods>
		<method name="add_bone">
			<return type="void">
			</return>
			<argument index="0" name="path" type="NodePath">
			</argument>
			<argument index="1" name="weights" type="PoolRealArray">
			</argument>
			<description>
			</description>
		</method>
		<method name="clear_bones">
			<return type="void">
			</return>
			<description>
			</description>
		</method>
		<method name="erase_bone">
			<return type="void">
			</return>
			<argument index="0" name="index" type="int">
			</argument>
			<description>
			</description>
		</method>
		<method name="get_bone_count" qualifiers="const">
			<return type="int">
			</return>
			<description>
			</description>
		</method>
		<method name="get_bone_path" qualifiers="const">
			<return type="NodePath">
			</return>
			<argument index="0" name="index" type="int">
			</argument>
			<description>
			</description>
		</method>
		<method name="get_bone_weights" qualifiers="const">
			<return type="PoolRealArray">
			</return>
			<argument index="0" name="index" type="int">
			</argument>
			<description>
			</description>
		</method>
		<method name="set_bone_path">
			<return type="void">
			</return>
			<argument index="0" name="index" type="int">
			</argument>
			<argument index="1" name="path" type="NodePath">
			</argument>
			<description>
			</description>
		</method>
		<method name="set_bone_weights">
			<return type="void">
			</return>
			<argument index="0" name="index" type="int">
			</argument>
			<argument index="1" name="weights" type="PoolRealArray">
			</argument>
			<description>
			</description>
		</method>
	</methods>
	<members>
		<member name="antialiased" type="bool" setter="set_antialiased" getter="get_antialiased">
			If [code]true[/code] polygon edges will be anti-aliased. Default value: [code]false[/code].
		</member>
		<member name="bones" type="Array" setter="_set_bones" getter="_get_bones">
		</member>
		<member name="color" type="Color" setter="set_color" getter="get_color">
			The polygon's fill color. If [code]texture[/code] is defined, it will be multiplied by this color. It will also be the default color for vertices not set in [code]vertex_colors[/code].
		</member>
		<member name="invert_border" type="float" setter="set_invert_border" getter="get_invert_border">
			Added padding applied to the bounding box when using [code]invert[/code]. Setting this value too small may result in a "Bad Polygon" error. Default value: [code]100[/code].
		</member>
		<member name="invert_enable" type="bool" setter="set_invert" getter="get_invert">
			If [code]true[/code] polygon will be inverted, containing the area outside the defined points and extending to the [code]invert_border[/code]. Default value: [code]false[/code].
		</member>
		<member name="offset" type="Vector2" setter="set_offset" getter="get_offset">
			The offset applied to each vertex.
		</member>
		<member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon">
			The polygon's list of vertices. The final point will be connected to the first.
		</member>
		<member name="skeleton" type="NodePath" setter="set_skeleton" getter="get_skeleton">
		</member>
		<member name="splits" type="PoolIntArray" setter="set_splits" getter="get_splits">
		</member>
		<member name="texture" type="Texture" setter="set_texture" getter="get_texture">
			The polygon's fill texture. Use [code]uv[/code] to set texture coordinates.
		</member>
		<member name="texture_offset" type="Vector2" setter="set_texture_offset" getter="get_texture_offset">
			Amount to offset the polygon's [code]texture[/code]. If [code](0, 0)[/code] the texture's origin (its top-left corner) will be placed at the polygon's [code]position[/code].
		</member>
		<member name="texture_rotation" type="float" setter="set_texture_rotation_degrees" getter="get_texture_rotation_degrees">
			The texture's rotation in radians.
		</member>
		<member name="texture_rotation_degrees" type="float" setter="set_texture_rotation_degrees" getter="get_texture_rotation_degrees">
			The texture's rotation in degrees.
		</member>
		<member name="texture_scale" type="Vector2" setter="set_texture_scale" getter="get_texture_scale">
			Amount to multiply the [code]uv[/code] coordinates when using a [code]texture[/code]. Larger values make the texture smaller, and vice versa.
		</member>
		<member name="uv" type="PoolVector2Array" setter="set_uv" getter="get_uv">
			Texture coordinates for each vertex of the polygon. There should be one [code]uv[/code] per polygon vertex. If there are fewer, undefined vertices will use [code](0, 0)[/code].
		</member>
		<member name="vertex_colors" type="PoolColorArray" setter="set_vertex_colors" getter="get_vertex_colors">
			Color for each vertex. Colors are interpolated between vertices, resulting in smooth gradients. There should be one per polygon vertex. If there are fewer, undefined vertices will use [code]color[/code].
		</member>
	</members>
	<constants>
	</constants>
</class>
