예제 #1
0
        // Token: 0x060003BD RID: 957 RVA: 0x00010B94 File Offset: 0x0000ED94
        public static ICollection <Vector3> IntersectionPointsWith(this Ray3 ray, Cylinder3 cylinder)
        {
            Segment3?segment = ray.IntersectionWith(cylinder);

            if (segment == null)
            {
                return(new List <Vector3>());
            }
            Segment3 value = segment.Value;

            if (value.Extent < 1E-08)
            {
                return(new List <Vector3>
                {
                    value.Origin
                });
            }
            return(new List <Vector3>
            {
                value.NegativeEnd,
                value.PositiveEnd
            });
        }
예제 #2
0
        // Token: 0x060003C9 RID: 969 RVA: 0x00010EC0 File Offset: 0x0000F0C0
        public static ICollection <Vector3> IntersectionPointsWith(this Ray3 ray, AxisAlignedBox3 axisAlignedBox)
        {
            Box3     box     = new Box3(axisAlignedBox.Center, UnitVector3.UnitX, UnitVector3.UnitY, UnitVector3.UnitZ, axisAlignedBox.ExtentX, axisAlignedBox.ExtentY, axisAlignedBox.ExtentZ);
            Segment3?segment = ray.IntersectionWith(box);

            if (segment == null)
            {
                return(new List <Vector3>());
            }
            Segment3 value = segment.Value;

            if (value.Extent < 1E-08)
            {
                return(new List <Vector3>
                {
                    value.Origin
                });
            }
            return(new List <Vector3>
            {
                value.NegativeEnd,
                value.PositiveEnd
            });
        }
예제 #3
0
 // Token: 0x06000331 RID: 817 RVA: 0x0000D15A File Offset: 0x0000B35A
 public static Segment3?IntersectionWith(this Box3 box3, Ray3 ray3)
 {
     return(ray3.IntersectionWith(box3));
 }
예제 #4
0
 // Token: 0x0600039F RID: 927 RVA: 0x0000FD49 File Offset: 0x0000DF49
 public static Vector3?IntersectionWith(this Plane3 plane, Ray3 ray)
 {
     return(ray.IntersectionWith(plane));
 }
 // Token: 0x06000315 RID: 789 RVA: 0x0000C85A File Offset: 0x0000AA5A
 public static Segment3?IntersectionWith(this AxisAlignedBox3 axisAlignedBox3, Ray3 ray3)
 {
     return(ray3.IntersectionWith(axisAlignedBox3));
 }
예제 #6
0
 // Token: 0x06000275 RID: 629 RVA: 0x0000A621 File Offset: 0x00008821
 public static Segment3?IntersectionWith(this Cylinder3 cylinder, Ray3 ray)
 {
     return(ray.IntersectionWith(cylinder));
 }
예제 #7
0
 // Token: 0x06000451 RID: 1105 RVA: 0x000139A4 File Offset: 0x00011BA4
 public static Vector3?IntersectionWith(this Triangle3 triangle, Ray3 ray)
 {
     return(ray.IntersectionWith(triangle));
 }