[][src]Struct rand_distr::UnitCircle

pub struct UnitCircle;

Samples uniformly from the edge of the unit circle in two dimensions.

Implemented via a method by von Neumann1.

Example

use rand_distr::{UnitCircle, Distribution};

let v: [f64; 2] = UnitCircle.sample(&mut rand::thread_rng());
println!("{:?} is from the unit circle.", v)

  1. von Neumann, J. (1951) Various Techniques Used in Connection with Random Digits. NBS Appl. Math. Ser., No. 12. Washington, DC: U.S. Government Printing Office, pp. 36-38. 

Trait Implementations

impl Copy for UnitCircle[src]

impl Clone for UnitCircle[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for UnitCircle[src]

impl<N: Float + SampleUniform> Distribution<[N; 2]> for UnitCircle[src]

Important traits for DistIter<D, R, T>
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
    R: Rng
[src]

Create an iterator that generates random values of T, using rng as the source of randomness. Read more

Auto Trait Implementations

impl Send for UnitCircle

impl Sync for UnitCircle

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,