Skip to main content

Revolved

Struct Revolved 

Source
pub struct Revolved {
    pub frame: Frame,
    pub profile: Profile,
    pub on_axis: f64,
}
Expand description

A surface swept by a profile turning about the z of frame: the profile lies in the half plane of frame.x at angle 0.

Fields§

§frame: Frame§profile: Profile§on_axis: f64

How close to the axis a point is on it, and has no angle: the file’s uncertainty.

Implementations§

Source§

impl Revolved

Source

pub fn chart(&self, p: P3) -> (Option<f64>, f64)

The angle of p about the axis, and its profile parameter where the profile is analytic — None for the angle of a point on the axis, which has none.

Source

pub fn iso_line(&self, shape: &Shape, uncertainty: f64) -> bool

Whether a curve of shape lying on this surface runs along a line of one parameter of its patches, to within uncertainty, the file’s statement of which places are one: a circle about its axis is a parallel, at one profile parameter, and a line in a plane through its axis a meridian, at one angle. On a patch its pcurve is then straight.

Source

pub fn past_axis(&self, p: P3) -> Option<f64>

For a circle crossing the axis, how much nearer p lies to the sheet its arc past the axis turns into than to the one its arc on this side does: positive where p is on the sheet past the axis.

Source

pub fn mirrored(&self) -> Revolved

The sheet the arc of a circle crossing the axis past it turns into, as a surface of its own: the circle mirrored in the axis, turned on this side. Its profile parameter runs the other way round the circle, so its normal is the other way round to the file’s.

Source

pub fn v_is_angle(&self) -> bool

Whether the profile’s parameter v goes once round, as a torus’ does: then it is an angle too.

Source

pub fn poles(&self) -> Vec<f64>

Where the profile meets the axis, by its parameter: the poles of the surface.

Source

pub fn profile_point(&self, v: f64) -> P3

The profile’s point at v, in the half plane at angle 0.

Source

pub fn profile_curve(&self, v0: f64, v1: f64) -> GeopResult<NurbCurve3D>

The profile from v0 to v1 as a curve, in the half plane at angle 0 — the whole curve, for a profile that is one.

Source

pub fn parallel(&self, v: f64, from: f64, to: f64) -> GeopResult<NurbCurve3D>

The parallel at the profile parameter v — the circle about the axis the profile’s point there turns along — from the angle from counter-clockwise about the axis to to: all the way round where they are one.

Source

pub fn axis(&self) -> GeopResult<Axis>

Source

pub fn patch( &self, from: f64, to: f64, v0: f64, v1: f64, ) -> GeopResult<NurbSurface3D>

The surface between the angles from and to and, where the profile is analytic, the profile parameters v0 and v1.

Source

pub fn iso(&self) -> Shape

What a parallel or a meridian of it is, as an edge’s Shape.

Source

pub fn turn(&self, angle: f64) -> GeopResult<Pose>

The motion turning by angle radians about the axis.

Trait Implementations§

Source§

impl Clone for Revolved

Source§

fn clone(&self) -> Revolved

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Revolved

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.