Struct trackball::Orbit[][src]

pub struct Orbit<N: Copy + RealField> { /* fields omitted */ }
Expand description

Orbit induced by displacement on screen.

Implements Default and can be created with Orbit::default().

Both its methods must be invoked on matching events fired by your 3D graphics library of choice.

Implementations

Computes rotation between previous and current cursor/finger position.

Normalization of previous position is cached and has to be discarded on button/finger release via Self::discard(). Current position pos is clamped between origin and maximum position max as screen’s width and height.

Screen space with origin in top left corner:

  • x-axis from left to right,
  • y-axis from top to bottom.

Camera space with origin at its target, the trackball’s center:

  • x-axis from left to right,
  • y-axis from bottom to top,
  • z-axis from far to near.

Returns None:

  • on first invocation and after Self::discard() as there is no previous position yet,
  • in the unlikely case that a position event fires twice resulting in zero displacements.

Discards cached normalization of previous cursor/finger position on button/finger release.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Should always be Self

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

Checks if self is actually part of its subset T (and can be converted to it).

Use with care! Same as self.to_subset but without any property checks. Always succeeds.

The inclusion map: converts self to the equivalent element of its superset.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.