Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


centroid

The world space centroid (center) of the physics query shape when it intersects.
Read time 1 minuteLast updated 8 days ago

Definition

  • Type: Property
  • Namespace: UnityEngine
  • Assembly: UnityEngine.Physics2DModule
public Vector2 centroid { get; set; }

Remarks

When the RaycastHit2D result is returned from a linecast or raycast query, the
centroid
is identical to the returned _point property because a line or ray uses a very small point with no area, so its position is the same as the position it intersects a Collider2D.
However, when using other physics queries that cast shapes that do have an area such as circles, capsules or boxes, the
centroid
is the center of the respective shape used when it is in contact with the returned _point. For example, a circle will always have its
centroid
be its radius away from the returned _point.
The
centroid
helps identify the position the shape would be at for it to come into contact at the returned _point.
Additional Resources: _point, _point

Examples

using UnityEngine;public class Example : MonoBehaviour{ // A stationary planet public Transform planet; // A satellite moving around the planet public Transform satellite; void Update() { // Cast a circle with a radius of 10 in from the satellite position to the planet position. RaycastHit2D hit = Physics2D.CircleCast(satellite.position, 10.0f, planet.position); // If something was hit, draw a line from the planet to the position the satellite would be if it were to hit the planet. if (hit) Debug.DrawLine(planet.position, hit.centroid, Color.yellow); }}