Files
ray-tracing-fsharp/RayTracing/Ray.fsi
2021-04-18 23:11:45 +01:00

25 lines
609 B
FSharp

namespace RayTracing
type Ray =
{
/// For performance reasons, this is public, but please don't use it
Origin : Point
/// For performance reasons, this is public, but please don't use it
Vector : UnitVector
}
[<RequireQualifiedAccess>]
module Ray =
val make' : Point -> Vector -> Ray option
val make : Point -> UnitVector -> Ray
val walkAlong : Ray -> float -> Point
val parallelTo : Point -> Ray -> Ray
val liesOn : Point -> Ray -> bool
val inline vector : Ray -> UnitVector
val inline origin : Ray -> Point
val flip : Ray -> Ray