Struct riscan_pro::Point
[−]
[src]
pub struct Point<C: CoordinateReferenceSystem> { /* fields omitted */ }
A three-dimensional point.
Methods
impl Point<Glcs>
[src]
fn glcs<T: Into<f64>>(x: T, y: T, z: T) -> Point<Glcs>
[src]
Returns a point in the global coordinate system.
Examples
use riscan_pro::Point; let glcs = Point::glcs(1., 2., 3.);
fn to_prcs(&self, pop: Projective3<f64>) -> Point<Prcs>
[src]
Converts this glcs point to prcs.
Examples
use riscan_pro::{Point, Project}; let project = Project::from_path("data/project.RiSCAN").unwrap(); let prcs = Point::glcs(1., 2., 3.).to_prcs(project.pop);
impl Point<Prcs>
[src]
fn prcs<T: Into<f64>>(x: T, y: T, z: T) -> Point<Prcs>
[src]
Returns a point in the project's coordinate system.
Examples
use riscan_pro::Point; let prcs = Point::prcs(1., 2., 3.);
fn to_glcs(&self, pop: Projective3<f64>) -> Point<Glcs>
[src]
Converts this point to the global coordinate system.
Examples
use riscan_pro::{Point, Project}; let project = Project::from_path("data/project.RiSCAN").unwrap(); let glcs = Point::prcs(1., 2., 3.).to_glcs(project.pop);
fn to_socs(&self, sop: Projective3<f64>) -> Point<Socs>
[src]
Converts this prcs point to socs.
Examples
use riscan_pro::{Point, Project}; let scan_position = Project::from_path("data/project.RiSCAN") .unwrap() .scan_positions .get("SP01") .unwrap() .clone(); let socs = Point::prcs(1., 2., 3.).to_socs(scan_position.sop);
impl Point<Socs>
[src]
fn socs<T: Into<f64>>(x: T, y: T, z: T) -> Point<Socs>
[src]
Returns a point in the scanner's own coordinate system.
Examples
use riscan_pro::Point; let socs = Point::socs(1., 2., 3.);
fn to_prcs(&self, sop: Projective3<f64>) -> Point<Prcs>
[src]
Converts this socs point to the project coordinate system.
Examples
use riscan_pro::{Point, Project}; let scan_position = Project::from_path("data/project.RiSCAN") .unwrap() .scan_positions .get("SP01") .unwrap() .clone(); let prcs = Point::socs(1., 2., 3.).to_prcs(scan_position.sop);
fn to_cmcs(
&self,
cop: Projective3<f64>,
mount_calibration: &MountCalibration
) -> Point<Cmcs>
[src]
&self,
cop: Projective3<f64>,
mount_calibration: &MountCalibration
) -> Point<Cmcs>
Converts this socs point to cmcs.
Examples
use riscan_pro::{Point, Project}; let project = Project::from_path("data/project.RiSCAN").unwrap(); let image = project.scan_positions .get("SP01") .unwrap() .images .get("SP01 - Image001") .unwrap(); let mount_calibration = image.mount_calibration(&project).unwrap(); let cmcs = Point::socs(1., 2., 3.).to_cmcs(image.cop, &mount_calibration);
impl Point<Cmcs>
[src]
fn cmcs<T: Into<f64>>(x: T, y: T, z: T) -> Point<Cmcs>
[src]
Returns a point in the camera's coordinate system.
Examples
use riscan_pro::Point; let cmcs = Point::cmcs(1., 2., 3.);
fn to_socs(
&self,
cop: Projective3<f64>,
mount_calibration: &MountCalibration
) -> Point<Socs>
[src]
&self,
cop: Projective3<f64>,
mount_calibration: &MountCalibration
) -> Point<Socs>
Converts this cmcs point to socs.
Examples
use riscan_pro::{Point, Project}; let project = Project::from_path("data/project.RiSCAN").unwrap(); let image = project.scan_positions .get("SP01") .unwrap() .images .get("SP01 - Image001") .unwrap(); let mount_calibration = image.mount_calibration(&project).unwrap(); let socs = Point::cmcs(1., 2., 3.).to_socs(image.cop, &mount_calibration);
fn is_behind_camera(&self) -> bool
[src]
Is this point behind the camera?
Examples
use riscan_pro::Point; assert!(!Point::cmcs(1., 2., 3.).is_behind_camera()); assert!(Point::cmcs(1., 2., -3.).is_behind_camera());
fn tan_horz(&self) -> f64
[src]
Returns the horizontal tangent of this point.
The horizontal tangent is the tangent of the angle of the point, as projected to the yz
plane, to the z axis, i.e. y / z
.
Examples
use riscan_pro::Point; assert_eq!(2., Point::cmcs(3., 2., 1.).tan_horz());
fn tan_vert(&self) -> f64
[src]
Returns the vertical tangent of this point.
The vertical tangent is the tangent of the angle of the point, as projected to the xz
plane, to the z axis, i.e. x / z
.
Examples
use riscan_pro::Point; assert_eq!(3., Point::cmcs(3., 2., 1.).tan_vert());
Trait Implementations
impl<C: Clone + CoordinateReferenceSystem> Clone for Point<C>
[src]
fn clone(&self) -> Point<C>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<C: Copy + CoordinateReferenceSystem> Copy for Point<C>
[src]
impl<C: Debug + CoordinateReferenceSystem> Debug for Point<C>
[src]
impl<C: CoordinateReferenceSystem> From<Point3<f64>> for Point<C>
[src]
impl<C: CoordinateReferenceSystem> Deref for Point<C>
[src]
type Target = Point3<f64>
The resulting type after dereferencing.
fn deref(&self) -> &Point3<f64>
[src]
Dereferences the value.