# Uses of Class
org.bukkit.util.RayTraceResult

Packages that use RayTraceResult
Package
Description
org.bukkit
The root package of the Bukkit API, contains generalized API classes.
org.bukkit.block
Classes used to manipulate the voxels in a `world`, including special states.
org.bukkit.entity
Interfaces for non-voxel objects that can exist in a `world`, including all players, monsters, projectiles, etc.
org.bukkit.util
Multi and single purpose classes to facilitate various programmatic concepts.

## Uses of RayTraceResult in org.bukkit

Methods in org.bukkit that return RayTraceResult
Modifier and Type
Method
Description
`@Nullable RayTraceResult`
World.`rayTrace(@NotNull Location start, @NotNull Vector direction, double maxDistance, @NotNull FluidCollisionMode fluidCollisionMode, boolean ignorePassableBlocks, double raySize, @Nullable Predicate<Entity> filter)`
Performs a ray trace that checks for both block and entity collisions.
`@Nullable RayTraceResult`
World.`rayTraceBlocks(@NotNull Location start, @NotNull Vector direction, double maxDistance)`
Performs a ray trace that checks for block collisions using the blocks' precise collision shapes.
`@Nullable RayTraceResult`
World.`rayTraceBlocks(@NotNull Location start, @NotNull Vector direction, double maxDistance, @NotNull FluidCollisionMode fluidCollisionMode)`
Performs a ray trace that checks for block collisions using the blocks' precise collision shapes.
`@Nullable RayTraceResult`
World.`rayTraceBlocks(@NotNull Location start, @NotNull Vector direction, double maxDistance, @NotNull FluidCollisionMode fluidCollisionMode, boolean ignorePassableBlocks)`
Performs a ray trace that checks for block collisions using the blocks' precise collision shapes.
`@Nullable RayTraceResult`
World.`rayTraceEntities(@NotNull Location start, @NotNull Vector direction, double maxDistance)`
Performs a ray trace that checks for entity collisions.
`@Nullable RayTraceResult`
World.`rayTraceEntities(@NotNull Location start, @NotNull Vector direction, double maxDistance, double raySize)`
Performs a ray trace that checks for entity collisions.
`@Nullable RayTraceResult`
World.`rayTraceEntities(@NotNull Location start, @NotNull Vector direction, double maxDistance, double raySize, @Nullable Predicate<Entity> filter)`
Performs a ray trace that checks for entity collisions.
`@Nullable RayTraceResult`
World.`rayTraceEntities(@NotNull Location start, @NotNull Vector direction, double maxDistance, @Nullable Predicate<Entity> filter)`
Performs a ray trace that checks for entity collisions.

## Uses of RayTraceResult in org.bukkit.block

Methods in org.bukkit.block that return RayTraceResult
Modifier and Type
Method
Description
`@Nullable RayTraceResult`
Block.`rayTrace(@NotNull Location start, @NotNull Vector direction, double maxDistance, @NotNull FluidCollisionMode fluidCollisionMode)`
Performs a ray trace that checks for collision with this specific block in its current state using its precise collision shape.

## Uses of RayTraceResult in org.bukkit.entity

Methods in org.bukkit.entity that return RayTraceResult
Modifier and Type
Method
Description
`@Nullable RayTraceResult`
LivingEntity.`rayTraceBlocks(double maxDistance)`
Performs a ray trace that provides information on the targeted block.
`@Nullable RayTraceResult`
LivingEntity.`rayTraceBlocks(double maxDistance, @NotNull FluidCollisionMode fluidCollisionMode)`
Performs a ray trace that provides information on the targeted block.

## Uses of RayTraceResult in org.bukkit.util

Methods in org.bukkit.util that return RayTraceResult
Modifier and Type
Method
Description
`@Nullable RayTraceResult`
BoundingBox.`rayTrace(@NotNull Vector start, @NotNull Vector direction, double maxDistance)`
Calculates the intersection of this bounding box with the specified line segment.