2017-09-12 22:42:36 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2020-03-30 18:22:57 +02:00
<class name= "PhysicsShapeQueryParameters2D" inherits= "Reference" version= "4.0" >
2017-09-12 22:42:36 +02:00
<brief_description >
Parameters to be sent to a 2D shape physics query.
</brief_description>
<description >
2020-03-30 18:22:57 +02:00
This class contains the shape and other parameters for 2D intersection/collision queries. See also [PhysicsShapeQueryResult2D].
2017-09-12 22:42:36 +02:00
</description>
<tutorials >
</tutorials>
<methods >
</methods>
2018-01-11 23:38:35 +01:00
<members >
2019-06-29 12:38:01 +02:00
<member name= "collide_with_areas" type= "bool" setter= "set_collide_with_areas" getter= "is_collide_with_areas_enabled" default= "false" >
2019-12-09 15:16:28 +01:00
If [code]true[/code], the query will take [Area2D]s into account.
2018-08-29 22:25:11 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "collide_with_bodies" type= "bool" setter= "set_collide_with_bodies" getter= "is_collide_with_bodies_enabled" default= "true" >
2019-12-09 15:16:28 +01:00
If [code]true[/code], the query will take [PhysicsBody2D]s into account.
2018-08-29 22:25:11 +02:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "collision_layer" type= "int" setter= "set_collision_layer" getter= "get_collision_layer" default= "2147483647" >
2019-12-09 15:16:28 +01:00
The physics layer(s) the query will take into account (as a bitmask).
2018-01-11 23:38:35 +01:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "exclude" type= "Array" setter= "set_exclude" getter= "get_exclude" default= "[ ]" >
2019-12-09 15:16:28 +01:00
The list of objects or object [RID]s that will be excluded from collisions.
2018-01-11 23:38:35 +01:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "margin" type= "float" setter= "set_margin" getter= "get_margin" default= "0.0" >
2018-01-11 23:38:35 +01:00
The collision margin for the shape.
</member>
2019-06-29 12:38:01 +02:00
<member name= "motion" type= "Vector2" setter= "set_motion" getter= "get_motion" default= "Vector2( 0, 0 )" >
2018-01-11 23:38:35 +01:00
The motion of the shape being queried for.
</member>
2020-01-27 20:04:16 +01:00
<member name= "shape" type= "Resource" setter= "set_shape" getter= "get_shape" >
The [Shape2D] that will be used for collision/intersection queries. This stores the actual reference which avoids the shape to be released while being used for queries, so always prefer using this over [member shape_rid].
</member>
2018-01-11 23:38:35 +01:00
<member name= "shape_rid" type= "RID" setter= "set_shape_rid" getter= "get_shape_rid" >
2020-01-27 20:04:16 +01:00
The queried shape's [RID] that will be used for collision/intersection queries. Use this over [member shape] if you want to optimize for performance using the Servers API:
[codeblock]
var shape_rid = PhysicsServer2D.circle_shape_create()
var radius = 64
PhysicsServer2D.shape_set_data(shape_rid, radius)
var params = PhysicsShapeQueryParameters2D.new()
params.shape_rid = shape_rid
# Execute physics queries here...
# Release the shape when done with physics queries.
PhysicsServer2D.free_rid(shape_rid)
[/codeblock]
2018-01-11 23:38:35 +01:00
</member>
2019-06-29 12:38:01 +02:00
<member name= "transform" type= "Transform2D" setter= "set_transform" getter= "get_transform" default= "Transform2D( 1, 0, 0, 1, 0, 0 )" >
2019-12-09 15:16:28 +01:00
The queried shape's transform matrix.
2018-01-11 23:38:35 +01:00
</member>
</members>
2017-09-12 22:42:36 +02:00
<constants >
</constants>
</class>