Struct implicit3d::Intersection [−][src]
pub struct Intersection<S: Real> { /* fields omitted */ }
Intersect objects.
Methods
impl<S: Real + Float + From<f32>> Intersection<S>
[src]
impl<S: Real + Float + From<f32>> Intersection<S>
pub fn from_vec(v: Vec<Box<Object<S>>>, r: S) -> Option<Box<Object<S>>>
[src]
pub fn from_vec(v: Vec<Box<Object<S>>>, r: S) -> Option<Box<Object<S>>>
Create an intersection of the objects in v. The intersection will be rounded, if r > 0.
pub fn difference_from_vec(
v: Vec<Box<Object<S>>>,
r: S
) -> Option<Box<Object<S>>>
[src]
pub fn difference_from_vec(
v: Vec<Box<Object<S>>>,
r: S
) -> Option<Box<Object<S>>>
Create a Difference from Vec. The resulting object is v[0] minus all the other objects. Minus is implemented as intersection with negation. The difference will be rounded, if r > 0.
Trait Implementations
impl<S: Clone + Real> Clone for Intersection<S>
[src]
impl<S: Clone + Real> Clone for Intersection<S>
fn clone(&self) -> Intersection<S>
[src]
fn clone(&self) -> Intersection<S>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl<S: Debug + Real> Debug for Intersection<S>
[src]
impl<S: Debug + Real> Debug for Intersection<S>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<S: Real + From<f32> + Float> Object<S> for Intersection<S>
[src]
impl<S: Real + From<f32> + Float> Object<S> for Intersection<S>
fn approx_value(&self, p: &Point3<S>, slack: S) -> S
[src]
fn approx_value(&self, p: &Point3<S>, slack: S) -> S
Value is 0 on object surfaces, negative inside and positive outside of objects. If positive, value is guarateed to be the minimum distance to the object surface. return some approximation (which is always larger then the proper value). Only do a proper calculation, for values smaller then slack. Read more
fn bbox(&self) -> &BoundingBox<S>
[src]
fn bbox(&self) -> &BoundingBox<S>
Get the Bounding Box of this Object.
fn set_parameters(&mut self, p: &PrimitiveParameters<S>)
[src]
fn set_parameters(&mut self, p: &PrimitiveParameters<S>)
Allows to set parameters.
fn normal(&self, p: &Point3<S>) -> Vector3<S>
[src]
fn normal(&self, p: &Point3<S>) -> Vector3<S>
Evaluate the normal of self
at the given point.
fn set_bbox(&mut self, _: &BoundingBox<S>)
[src]
fn set_bbox(&mut self, _: &BoundingBox<S>)
Explicitly set the Bounding Box.
ⓘImportant traits for Box<R>fn translate(&self, v: &Vector3<S>) -> Box<Object<S>>
[src]
fn translate(&self, v: &Vector3<S>) -> Box<Object<S>>
Return a translated version of self
.
ⓘImportant traits for Box<R>fn rotate(&self, r: &Vector3<S>) -> Box<Object<S>>
[src]
fn rotate(&self, r: &Vector3<S>) -> Box<Object<S>>
Return a rotated version of self
.
ⓘImportant traits for Box<R>fn scale(&self, s: &Vector3<S>) -> Box<Object<S>>
[src]
fn scale(&self, s: &Vector3<S>) -> Box<Object<S>>
Return a scaled version of self
.
Auto Trait Implementations
impl<S> Send for Intersection<S>
impl<S> Send for Intersection<S>
impl<S> Sync for Intersection<S>
impl<S> Sync for Intersection<S>