Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Bounds.IntersectRay

IntersectRay(ray: Ray): bool;
bool IntersectRay(Ray ray);
def IntersectRay(ray as Ray) as bool

Description

Does ray intersect this bounding box?

	// Creates a ray that points from the origin to the infinity among the z Axis.
	// And prints if the transform touched the ray.

var ra : Ray = new Ray (Vector3.zero, Vector3.forward);;

function Update () { // Color ra in the scene editor. Debug.DrawRay (Vector3.zero, Vector3.forward * 999, Color.green); var bounds : Bounds = transform.collider.bounds; if (bounds.IntersectRay (ra)) Debug.Log("Touched the ray"); }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public Ray ra = new Ray(Vector3.zero, Vector3.forward);
    void Update() {
        Debug.DrawRay(Vector3.zero, Vector3.forward * 999, Color.green);
        Bounds bounds = transform.collider.bounds;
        if (bounds.IntersectRay(ra))
            Debug.Log("Touched the ray");
        
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	public ra as Ray = Ray(Vector3.zero, Vector3.forward)

	def Update() as void:
		Debug.DrawRay(Vector3.zero, (Vector3.forward * 999), Color.green)
		bounds as Bounds = transform.collider.bounds
		if bounds.IntersectRay(ra):
			Debug.Log('Touched the ray')

IntersectRay(ray: Ray, distance: float): bool;
bool IntersectRay(Ray ray, float distance);
def IntersectRay(ray as Ray, distance as float) as bool

Description

Does ray intersect this bounding box?

When IntersectRay returns true distance will be the distance to the ray's origin.

	// Creates a ray that points from the origin to 10 units among the z Axis.
	// And prints if the transform touched the ray.

var ra : Ray = new Ray (Vector3.zero, Vector3.forward);; var t : float = 10.0;

function Update () { // Color ra in the scene editor. Debug.DrawRay (Vector3.zero, Vector3.forward * 10, Color.green); var bounds : Bounds = transform.collider.bounds; if (bounds.IntersectRay (ra, t)) Debug.Log("Touched the ray"); }

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public Ray ra = new Ray(Vector3.zero, Vector3.forward);
    public float t = 10.0F;
    void Update() {
        Debug.DrawRay(Vector3.zero, Vector3.forward * 10, Color.green);
        Bounds bounds = transform.collider.bounds;
        if (bounds.IntersectRay(ra, out t))
            Debug.Log("Touched the ray");
        
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	public ra as Ray = Ray(Vector3.zero, Vector3.forward)

	public t as float = 10.0F

	def Update() as void:
		Debug.DrawRay(Vector3.zero, (Vector3.forward * 10), Color.green)
		bounds as Bounds = transform.collider.bounds
		if bounds.IntersectRay(ra, ):
			Debug.Log('Touched the ray')