Struct three_d::renderer::geometry::BoundingBox
source · pub struct BoundingBox { /* private fields */ }
Expand description
A bounding box geometry used for visualising an AxisAlignedBoundingBox.
Implementations§
source§impl BoundingBox
impl BoundingBox
sourcepub fn new(context: &Context, aabb: AxisAlignedBoundingBox) -> Self
pub fn new(context: &Context, aabb: AxisAlignedBoundingBox) -> Self
Creates a bounding box geometry from an axis aligned bounding box.
sourcepub fn new_with_thickness(
context: &Context,
aabb: AxisAlignedBoundingBox,
thickness: f32
) -> Self
pub fn new_with_thickness( context: &Context, aabb: AxisAlignedBoundingBox, thickness: f32 ) -> Self
Creates a bounding box object from an axis aligned bounding box with a specified line thickness.
Methods from Deref<Target = InstancedMesh>§
sourcepub fn transformation(&self) -> Mat4
pub fn transformation(&self) -> Mat4
Returns the local to world transformation applied to all instances.
sourcepub fn set_transformation(&mut self, transformation: Mat4)
pub fn set_transformation(&mut self, transformation: Mat4)
Set the local to world transformation applied to all instances. This is applied before the transform for each instance.
sourcepub fn set_animation(
&mut self,
animation: impl Fn(f32) -> Mat4 + Send + Sync + 'static
)
pub fn set_animation( &mut self, animation: impl Fn(f32) -> Mat4 + Send + Sync + 'static )
Specifies a function which takes a time parameter as input and returns a transformation that should be applied to this mesh at the given time. To actually animate this instanced mesh, call Geometry::animate at each frame which in turn evaluates the animation function defined by this method. This transformation is applied first, then the local to world transformation defined by Self::set_transformation.
sourcepub fn instance_count(&self) -> u32
pub fn instance_count(&self) -> u32
Returns the number of instances that is rendered.
sourcepub fn set_instances(&mut self, instances: &Instances)
pub fn set_instances(&mut self, instances: &Instances)
Update the instances.
Trait Implementations§
source§impl Deref for BoundingBox
impl Deref for BoundingBox
source§impl DerefMut for BoundingBox
impl DerefMut for BoundingBox
source§impl Geometry for BoundingBox
impl Geometry for BoundingBox
source§fn draw(
&self,
camera: &Camera,
program: &Program,
render_states: RenderStates,
attributes: FragmentAttributes
)
fn draw( &self, camera: &Camera, program: &Program, render_states: RenderStates, attributes: FragmentAttributes )
source§fn vertex_shader_source(
&self,
required_attributes: FragmentAttributes
) -> String
fn vertex_shader_source( &self, required_attributes: FragmentAttributes ) -> String
source§fn id(&self, required_attributes: FragmentAttributes) -> u16
fn id(&self, required_attributes: FragmentAttributes) -> u16
Geometry::vertex_shader_source
. Read moresource§fn render_with_material(
&self,
material: &dyn Material,
camera: &Camera,
lights: &[&dyn Light]
)
fn render_with_material( &self, material: &dyn Material, camera: &Camera, lights: &[&dyn Light] )
lights
argument, if the material does not require lights to be rendered.source§fn render_with_effect(
&self,
material: &dyn Effect,
camera: &Camera,
lights: &[&dyn Light],
color_texture: Option<ColorTexture<'_>>,
depth_texture: Option<DepthTexture<'_>>
)
fn render_with_effect( &self, material: &dyn Effect, camera: &Camera, lights: &[&dyn Light], color_texture: Option<ColorTexture<'_>>, depth_texture: Option<DepthTexture<'_>> )
lights
argument, if the material does not require lights to be rendered.