:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/PhysicsRayQueryParameters2D.xml. .. _class_PhysicsRayQueryParameters2D: PhysicsRayQueryParameters2D =========================== **Inherits:** :ref:`RefCounted` **<** :ref:`Object` Provides parameters for :ref:`PhysicsDirectSpaceState2D.intersect_ray`. .. rst-class:: classref-introduction-group Description ----------- By changing various properties of this object, such as the ray position, you can configure the parameters for :ref:`PhysicsDirectSpaceState2D.intersect_ray`. .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`bool` | :ref:`collide_with_areas` | ``false`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`bool` | :ref:`collide_with_bodies` | ``true`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`int` | :ref:`collision_mask` | ``4294967295`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`exclude` | ``[]`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`Vector2` | :ref:`from` | ``Vector2(0, 0)`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`bool` | :ref:`hit_from_inside` | ``false`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ | :ref:`Vector2` | :ref:`to` | ``Vector2(0, 0)`` | +----------------------------------------------------+--------------------------------------------------------------------------------------------+-------------------+ .. rst-class:: classref-reftable-group Methods ------- .. table:: :widths: auto +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PhysicsRayQueryParameters2D` | :ref:`create`\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, collision_mask\: :ref:`int` = 4294967295, exclude\: :ref:`Array`\[:ref:`RID`\] = []\ ) |static| | +-----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_PhysicsRayQueryParameters2D_property_collide_with_areas: .. rst-class:: classref-property :ref:`bool` **collide_with_areas** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_collide_with_areas**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_collide_with_areas_enabled**\ (\ ) If ``true``, the query will take :ref:`Area2D`\ s into account. .. rst-class:: classref-item-separator ---- .. _class_PhysicsRayQueryParameters2D_property_collide_with_bodies: .. rst-class:: classref-property :ref:`bool` **collide_with_bodies** = ``true`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_collide_with_bodies**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_collide_with_bodies_enabled**\ (\ ) If ``true``, the query will take :ref:`PhysicsBody2D`\ s into account. .. rst-class:: classref-item-separator ---- .. _class_PhysicsRayQueryParameters2D_property_collision_mask: .. rst-class:: classref-property :ref:`int` **collision_mask** = ``4294967295`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_collision_mask**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_collision_mask**\ (\ ) The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See `Collision layers and masks <../tutorials/physics/physics_introduction.html#collision-layers-and-masks>`__ in the documentation for more information. .. rst-class:: classref-item-separator ---- .. _class_PhysicsRayQueryParameters2D_property_exclude: .. rst-class:: classref-property :ref:`Array`\[:ref:`RID`\] **exclude** = ``[]`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_exclude**\ (\ value\: :ref:`Array`\[:ref:`RID`\]\ ) - :ref:`Array`\[:ref:`RID`\] **get_exclude**\ (\ ) The list of object :ref:`RID`\ s that will be excluded from collisions. Use :ref:`CollisionObject2D.get_rid` to get the :ref:`RID` associated with a :ref:`CollisionObject2D`-derived node. .. rst-class:: classref-item-separator ---- .. _class_PhysicsRayQueryParameters2D_property_from: .. rst-class:: classref-property :ref:`Vector2` **from** = ``Vector2(0, 0)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_from**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_from**\ (\ ) The starting point of the ray being queried for, in global coordinates. .. rst-class:: classref-item-separator ---- .. _class_PhysicsRayQueryParameters2D_property_hit_from_inside: .. rst-class:: classref-property :ref:`bool` **hit_from_inside** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_hit_from_inside**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **is_hit_from_inside_enabled**\ (\ ) If ``true``, the query will detect a hit when starting inside shapes. In this case the collision normal will be ``Vector2(0, 0)``. Does not affect concave polygon shapes. .. rst-class:: classref-item-separator ---- .. _class_PhysicsRayQueryParameters2D_property_to: .. rst-class:: classref-property :ref:`Vector2` **to** = ``Vector2(0, 0)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_to**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_to**\ (\ ) The ending point of the ray being queried for, in global coordinates. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Method Descriptions ------------------- .. _class_PhysicsRayQueryParameters2D_method_create: .. rst-class:: classref-method :ref:`PhysicsRayQueryParameters2D` **create**\ (\ from\: :ref:`Vector2`, to\: :ref:`Vector2`, collision_mask\: :ref:`int` = 4294967295, exclude\: :ref:`Array`\[:ref:`RID`\] = []\ ) |static| :ref:`🔗` Returns a new, pre-configured **PhysicsRayQueryParameters2D** object. Use it to quickly create query parameters using the most common options. :: var query = PhysicsRayQueryParameters2D.create(global_position, global_position + Vector2(0, 100)) var collision = get_world_2d().direct_space_state.intersect_ray(query) .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` .. |void| replace:: :abbr:`void (No return value.)`