# Uses of Class
org.sunflow.core.Ray

Packages that use Ray
Package
Description
org.sunflow.core
org.sunflow.core.accel
org.sunflow.core.camera
org.sunflow.core.light
org.sunflow.core.primitive

## Uses of Ray in org.sunflow.core

Methods in org.sunflow.core that return Ray
Modifier and Type
Method
Description
`Ray`
Camera.`getRay(float x, float y, int imageWidth, int imageHeight, double lensX, double lensY, float time)`
Generate a ray passing though the specified point on the image plane.
`Ray`
CameraLens.`getRay(float x, float y, int imageWidth, int imageHeight, double lensX, double lensY, double time)`
Create a new `ray`to be cast through pixel (x,y) on the image plane.
`final Ray`
ShadingState.`getRay()`
Gets the ray that is associated with this state.
`Ray`
LightSample.`getShadowRay()`
Get the sample's shadow ray.
`Ray`
Ray.`transform(Matrix4 m)`
Create a new ray by transforming the supplied one by the given matrix.
Methods in org.sunflow.core with parameters of type Ray
Modifier and Type
Method
Description
`void`
AccelerationStructure.`intersect(Ray r, IntersectionState istate)`
Intersect the specified ray with the geometry in local space.
`void`
PrimitiveList.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
Intersect the specified primitive in local space.
`void`
LightSample.`setShadowRay(Ray shadowRay)`
Set the current shadow ray.
`final void`
ShadingState.`traceDiffusePhoton(Ray r, Color power)`
Trace a new photon from the current location.
`final ShadingState`
ShadingState.`traceFinalGather(Ray r, int i)`
Trace a final gather ray and return the intersection result as a new render state
`final Color`
ShadingState.`traceGlossy(Ray r, int i)`
Returns the color obtained by recursively tracing the specified ray.
`final Color`
ShadingState.`traceReflection(Ray r, int i)`
Returns the color obtained by recursively tracing the specified ray.
`final void`
ShadingState.`traceReflectionPhoton(Ray r, Color power)`
Trace a new photon from the current location.
`final Color`
ShadingState.`traceRefraction(Ray r, int i)`
Returns the color obtained by recursively tracing the specified ray.
`final void`
ShadingState.`traceRefractionPhoton(Ray r, Color power)`
Trace a new photon from the current location.
`final Color`
ShadingState.`traceShadow(Ray r)`
Trace a shadow ray against the scene, and computes the accumulated opacity along the ray.

## Uses of Ray in org.sunflow.core.accel

Methods in org.sunflow.core.accel with parameters of type Ray
Modifier and Type
Method
Description
`void`
BoundingIntervalHierarchy.`intersect(Ray r, IntersectionState state)`
`void`
KDTree.`intersect(Ray r, IntersectionState state)`
`void`
NullAccelerator.`intersect(Ray r, IntersectionState state)`
`void`
UniformGrid.`intersect(Ray r, IntersectionState state)`

## Uses of Ray in org.sunflow.core.camera

Methods in org.sunflow.core.camera that return Ray
Modifier and Type
Method
Description
`Ray`
FisheyeLens.`getRay(float x, float y, int imageWidth, int imageHeight, double lensX, double lensY, double time)`
`Ray`
PinholeLens.`getRay(float x, float y, int imageWidth, int imageHeight, double lensX, double lensY, double time)`
`Ray`
SphericalLens.`getRay(float x, float y, int imageWidth, int imageHeight, double lensX, double lensY, double time)`
`Ray`
ThinLens.`getRay(float x, float y, int imageWidth, int imageHeight, double lensX, double lensY, double time)`

## Uses of Ray in org.sunflow.core.light

Methods in org.sunflow.core.light with parameters of type Ray
Modifier and Type
Method
Description
`void`
ImageBasedLight.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
SunSkyLight.`intersectPrimitive(Ray r, int primID, IntersectionState state)`

## Uses of Ray in org.sunflow.core.primitive

Methods in org.sunflow.core.primitive with parameters of type Ray
Modifier and Type
Method
Description
`void`
Background.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
BanchoffSurface.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
Box.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
CornellBox.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
CubeGrid.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
Cylinder.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
Hair.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
JuliaFractal.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
ParticleSurface.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
Plane.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
QuadMesh.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
Sphere.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
SphereFlake.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
Torus.`intersectPrimitive(Ray r, int primID, IntersectionState state)`
`void`
TriangleMesh.`intersectPrimitive(Ray r, int primID, IntersectionState state)`