Trait ccgeom::Geometry3 [−][src]
pub trait Geometry3<T: Scalar = f64>: Geometry<T> {}Show methods
fn dir_to_local(
pos: Self::Pos,
dir: Self::Dir
) -> <Euclidean3<T> as Geometry<T>>::Dir; fn dir_from_local(
pos: Self::Pos,
dir: <Euclidean3<T> as Geometry<T>>::Dir
) -> Self::Dir; fn dir_when_moved_at_pos(
src_pos: Self::Pos,
src_dir: Self::Dir,
dst_pos: Self::Pos
) -> Self::Dir; fn shift_x(dist: T) -> Self::Map; fn shift_y(dist: T) -> Self::Map; fn shift_z(dist: T) -> Self::Map; fn rotate_x(angle: T) -> Self::Map; fn rotate_y(angle: T) -> Self::Map; fn rotate_z(angle: T) -> Self::Map; fn look_at_pos(pos: Self::Pos) -> Self::Map; fn look_at_dir(dir: Self::Dir) -> Self::Map; fn move_at_pos(pos: Self::Pos) -> Self::Map; fn move_at_dir(dir: Self::Dir, dist: T) -> Self::Map;
Expand description
Three-dimensional geometry.
Required methods
fn dir_to_local(
pos: Self::Pos,
dir: Self::Dir
) -> <Euclidean3<T> as Geometry<T>>::Dir
[src]
pos: Self::Pos,
dir: Self::Dir
) -> <Euclidean3<T> as Geometry<T>>::Dir
fn dir_from_local(
pos: Self::Pos,
dir: <Euclidean3<T> as Geometry<T>>::Dir
) -> Self::Dir
[src]
pos: Self::Pos,
dir: <Euclidean3<T> as Geometry<T>>::Dir
) -> Self::Dir
fn dir_when_moved_at_pos(
src_pos: Self::Pos,
src_dir: Self::Dir,
dst_pos: Self::Pos
) -> Self::Dir
[src]
fn dir_when_moved_at_pos(
src_pos: Self::Pos,
src_dir: Self::Dir,
dst_pos: Self::Pos
) -> Self::Dir
[src]Returns the direction of the line at point dst_pos
when we know that the line at the point src_pos
has direction of src_dir
.
fn shift_x(dist: T) -> Self::Map
[src]
fn shift_y(dist: T) -> Self::Map
[src]
fn shift_z(dist: T) -> Self::Map
[src]
fn rotate_x(angle: T) -> Self::Map
[src]
fn rotate_y(angle: T) -> Self::Map
[src]
fn rotate_z(angle: T) -> Self::Map
[src]
fn look_at_pos(pos: Self::Pos) -> Self::Map
[src]
fn look_at_pos(pos: Self::Pos) -> Self::Map
[src]Rotatates default_dir
around the origin to make it point to pos
.
fn look_at_dir(dir: Self::Dir) -> Self::Map
[src]
fn look_at_dir(dir: Self::Dir) -> Self::Map
[src]Turns default_dir
into dir
.
fn move_at_pos(pos: Self::Pos) -> Self::Map
[src]
fn move_at_pos(pos: Self::Pos) -> Self::Map
[src]Returns maping that translates origin to pos
preserving orientation
relatively to the line that connects the origin to pos
.
fn move_at_dir(dir: Self::Dir, dist: T) -> Self::Map
[src]
Implementors
impl<T: Scalar> Geometry3<T> for Euclidean3<T>
[src]
impl<T: Scalar> Geometry3<T> for Euclidean3<T>
[src]fn dir_to_local(_pos: Self::Pos, dir: Self::Dir) -> Self::Dir
[src]
fn dir_from_local(_pos: Self::Pos, dir: Self::Dir) -> Self::Dir
[src]
fn dir_when_moved_at_pos(
_src_pos: Self::Pos,
src_dir: Self::Dir,
_dst_pos: Self::Pos
) -> Self::Dir
[src]
_src_pos: Self::Pos,
src_dir: Self::Dir,
_dst_pos: Self::Pos
) -> Self::Dir
fn shift_x(dist: T) -> Self::Map
[src]
fn shift_y(dist: T) -> Self::Map
[src]
fn shift_z(dist: T) -> Self::Map
[src]
fn rotate_x(angle: T) -> Self::Map
[src]
fn rotate_y(angle: T) -> Self::Map
[src]
fn rotate_z(angle: T) -> Self::Map
[src]
fn look_at_pos(pos: Self::Pos) -> Self::Map
[src]
fn look_at_dir(dir: Self::Dir) -> Self::Map
[src]
fn move_at_pos(pos: Self::Pos) -> Self::Map
[src]
fn move_at_dir(dir: Self::Dir, dist: T) -> Self::Map
[src]
impl<T: Scalar> Geometry3<T> for Hyperbolic3<T>
[src]
impl<T: Scalar> Geometry3<T> for Hyperbolic3<T>
[src]fn dir_when_moved_at_pos(
src_pos: Self::Pos,
src_dir: Self::Dir,
dst_pos: Self::Pos
) -> Self::Dir
[src]
fn dir_when_moved_at_pos(
src_pos: Self::Pos,
src_dir: Self::Dir,
dst_pos: Self::Pos
) -> Self::Dir
[src]Returns the direction of the line at point dst_pos
when we know that the line at the point src_pos
has direction of src_dir
.
fn dir_to_local(_pos: Self::Pos, dir: Self::Dir) -> <Eu3<T> as Geometry<T>>::Dir
[src]
fn dir_from_local(
_pos: Self::Pos,
dir: <Eu3<T> as Geometry<T>>::Dir
) -> Self::Dir
[src]
_pos: Self::Pos,
dir: <Eu3<T> as Geometry<T>>::Dir
) -> Self::Dir