Ray3d
References[StructLayout(LayoutKind.Sequential, Pack = 8, Size = 48)]
[DebuggerDisplay("Pt({m_P.X},{m_P.Y},{m_P.Z}) Dir({m_V.X},{m_V.Y},{m_V.Z})")]
[Serializable]
public struct Ray3d : ISerializable, IEquatable<Ray3d>, IEpsilonComparable<Ray3d>
Represents an immutable ray in three dimensions, using position and direction.
Constructors
Properties
Methods
Check that all values in other are within epsilon of the values in this
Implements: EpsilonEquals
Equals
#Determines whether the specified System.Object is a Ray3d and has the same values as the present ray.
Parameters:
| obj (object) | The specified object. |
Returns: true if obj is a Ray3d and has the same position and direction as this; otherwise false.
Overrides: ValueType.Equals
Determines whether the specified Ray3d has the same value as the present ray.
Parameters:
| ray (Ray3d) | The specified ray. |
Returns: true if ray has the same position and direction as this; otherwise false.
GetHashCode
#Computes a hashing number that represents the current ray.
Returns: A signed integer that represents both position and direction, but is not unique.
Overrides: ValueType.GetHashCode
Evaluates a point along the ray.
Parameters:
| t (double) | The t parameter. |
Returns: A point at (Direction*t + Position).
[SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
Parameters:
| info (SerializationInfo) | |
| context (StreamingContext) |