Module nannou::prelude[][src]

Expand description

A collection of commonly used items that we recommend importing for ease of use.

Re-exports

pub use crate::app;
pub use crate::app::App;
pub use crate::app::LoopMode;
pub use crate::draw::Draw;
pub use crate::event::WindowEvent::*;
pub use crate::event::AxisMotion;
pub use crate::event::Event;
pub use crate::event::TouchEvent;
pub use crate::event::TouchpadPressure;
pub use crate::event::Update;
pub use crate::event::WindowEvent;
pub use crate::frame::Frame;
pub use crate::frame::RawFrame;
pub use crate::io::load_from_json;
pub use crate::io::load_from_toml;
pub use crate::io::safe_file_save;
pub use crate::io::save_to_json;
pub use crate::io::save_to_toml;
pub use crate::text;
pub use crate::text::text;
pub use crate::time::DurationF64;
pub use crate::ui;
pub use crate::wgpu;
pub use crate::wgpu::blend::ADD as BLEND_ADD;
pub use crate::wgpu::blend::DARKEST as BLEND_DARKEST;
pub use crate::wgpu::blend::LIGHTEST as BLEND_LIGHTEST;
pub use crate::wgpu::blend::NORMAL as BLEND_NORMAL;
pub use crate::wgpu::blend::REVERSE_SUBTRACT as BLEND_REVERSE_SUBTRACT;
pub use crate::wgpu::blend::SUBTRACT as BLEND_SUBTRACT;
pub use crate::window;
pub use crate::window::Window;

Modules

bounds
cast
float
geom

Types, functions and other items related to geometry. This module is the source of all graphics and lazer primitives and aids work in 2D and 3D space.

identities
int
ops
pow
real
rgb

RGB types, spaces and standards.

sign

Structs

Affine2

A 2D affine transform, which can represent translation, rotation, scaling and shear.

Affine3A

A 3D affine transform, which can represent translation, rotation, scaling and shear.

BVec2

A 2-dimensional boolean vector.

BVec3

A 3-dimensional boolean vector.

BVec4

A 4-dimensional boolean vector.

BufferInitDescriptor

Describes a Buffer when allocating.

Cuboid

A light-weight Cuboid type with many helper and utility methods.

DAffine2

A 2D affine transform, which can represent translation, rotation, scaling and shear.

DAffine3

A 3D affine transform, which can represent translation, rotation, scaling and shear.

DMat2

A 2x2 column major matrix.

DMat3

A 3x3 column major matrix.

DMat4

A 4x4 column major matrix.

DQuat

A quaternion representing an orientation.

DVec2

A 2-dimensional vector.

DVec3

A 3-dimensional vector.

DVec4

A 4-dimensional vector.

Hsl

Linear HSL color space.

Hsv

Linear HSV color space.

IVec2

A 2-dimensional vector.

IVec3

A 3-dimensional vector.

IVec4

A 4-dimensional vector.

Mat2

A 2x2 column major matrix.

Mat3

A 3x3 column major matrix.

Mat3A

A 3x3 column major matrix.

Mat4

A 4x4 column major matrix.

ParseFloatError
Quat

A quaternion representing an orientation.

Rect

Defines a Rectangle’s bounds across the x and y axes.

UVec2

A 2-dimensional vector.

UVec3

A 3-dimensional vector.

UVec4

A 4-dimensional vector.

Vec2

A 2-dimensional vector.

Vec3

A 3-dimensional vector without SIMD support.

Vec3A

A 3-dimensional vector with SIMD support.

Vec4

A 4-dimensional vector.

WindowId

Identifier of a window. Unique for each window.

Enums

FloatErrorKind
Fullscreen

Fullscreen modes.

Key

Symbolic name for a keyboard key.

MouseButton

Describes a button of a mouse controller.

MouseScrollDelta

Describes a difference in the mouse scroll wheel state.

TouchPhase

Describes touch-screen input state.

Constants

ALICEBLUE
ANTIQUEWHITE
AQUA
AQUAMARINE
AZURE
BEIGE
BISQUE
BLACK
BLANCHEDALMOND
BLUE
BLUEVIOLET
BROWN
BURLYWOOD
CADETBLUE
CHARTREUSE
CHOCOLATE
CORAL
CORNFLOWERBLUE
CORNSILK
CRIMSON
CYAN
DARKBLUE
DARKCYAN
DARKGOLDENROD
DARKGRAY
DARKGREEN
DARKGREY
DARKKHAKI
DARKMAGENTA
DARKOLIVEGREEN
DARKORANGE
DARKORCHID
DARKRED
DARKSALMON
DARKSEAGREEN
DARKSLATEBLUE
DARKSLATEGRAY
DARKSLATEGREY
DARKTURQUOISE
DARKVIOLET
DEEPPINK
DEEPSKYBLUE
DIMGRAY
DIMGREY
DODGERBLUE
FIREBRICK
FLORALWHITE
FORESTGREEN
FUCHSIA
GAINSBORO
GHOSTWHITE
GOLD
GOLDENROD
GRAY
GREEN
GREENYELLOW
GREY
HONEYDEW
HOTPINK
INDIANRED
INDIGO
IVORY
KHAKI
LAVENDER
LAVENDERBLUSH
LAWNGREEN
LEMONCHIFFON
LIGHTBLUE
LIGHTCORAL
LIGHTCYAN
LIGHTGOLDENRODYELLOW
LIGHTGRAY
LIGHTGREEN
LIGHTGREY
LIGHTPINK
LIGHTSALMON
LIGHTSEAGREEN
LIGHTSKYBLUE
LIGHTSLATEGRAY
LIGHTSLATEGREY
LIGHTSTEELBLUE
LIGHTYELLOW
LIME
LIMEGREEN
LINEN
MAGENTA
MAROON
MEDIUMAQUAMARINE
MEDIUMBLUE
MEDIUMORCHID
MEDIUMPURPLE
MEDIUMSEAGREEN
MEDIUMSLATEBLUE
MEDIUMSPRINGGREEN
MEDIUMTURQUOISE
MEDIUMVIOLETRED
MIDNIGHTBLUE
MINTCREAM
MISTYROSE
MOCCASIN
NAVAJOWHITE
NAVY
OLDLACE
OLIVE
OLIVEDRAB
ORANGE
ORANGERED
ORCHID
PALEGOLDENROD
PALEGREEN
PALETURQUOISE
PALEVIOLETRED
PAPAYAWHIP
PEACHPUFF
PERU
PI

Archimedes’ constant (π)

PINK
PI_F64

Archimedes’ constant (π)

PLUM
POWDERBLUE
PURPLE
REBECCAPURPLE
RED
ROSYBROWN
ROYALBLUE
SADDLEBROWN
SALMON
SANDYBROWN
SEAGREEN
SEASHELL
SIENNA
SILVER
SKYBLUE
SLATEBLUE
SLATEGRAY
SLATEGREY
SNOW
SPRINGGREEN
STEELBLUE
TAN
TAU

The full circle constant (τ)

TAU_F64

The full circle constant (τ)

TEAL
THISTLE
TOMATO
TURQUOISE
VIOLET
WHEAT
WHITE
WHITESMOKE
YELLOW
YELLOWGREEN

Traits

AsPrimitive

A generic interface for casting between machine scalars with the as operator, which admits narrowing and precision loss. Implementers of this trait AsPrimitive should behave like a primitive numeric type (e.g. a newtype around another primitive), and the intended conversion must never fail.

Bounded

Numbers which have upper and lower bounds

CheckedAdd

Performs addition that returns None instead of wrapping around on overflow.

CheckedDiv

Performs division that returns None instead of panicking on division by zero and instead of wrapping around on underflow and overflow.

CheckedMul

Performs multiplication that returns None instead of wrapping around on underflow or overflow.

CheckedNeg

Performs negation that returns None if the result can’t be represented.

CheckedRem

Performs an integral remainder that returns None instead of panicking on division by zero and instead of wrapping around on underflow and overflow.

CheckedShl

Performs a left shift that returns None on shifts larger than the type width.

CheckedShr

Performs a right shift that returns None on shifts larger than the type width.

CheckedSub

Performs subtraction that returns None instead of wrapping around on underflow.

DeviceExt

Utility methods not meant to be in the main API.

Float

Generic trait for floating point numbers

FloatConst
FromPrimitive

A generic trait for converting a number to a value.

Inv

Unary operator for retrieving the multiplicative inverse, or reciprocal, of a value.

Mat4LookTo

Create a transformation matrix that will cause a vector to point at dir using up for orientation.

MulAdd

Fused multiply-add. Computes (self * a) + b with only one rounding error, yielding a more accurate result than an unfused multiply-add.

MulAddAssign

The fused multiply-add assignment operation.

Num

The base trait for numeric types, covering 0 and 1 values, comparisons, basic numeric operations, and string conversion.

NumAssign

The trait for Num types which also implement assignment operators.

NumAssignOps

The trait for types implementing numeric assignment operators (like +=).

NumAssignRef

The trait for NumAssign types which also implement assignment operations taking the second operand by reference.

NumCast

An interface for casting between machine scalars.

NumOps

The trait for types implementing basic numeric operations

NumRef

The trait for Num types which also implement numeric operations taking the second operand by reference.

One

Defines a multiplicative identity element for Self.

Pow

Binary operator for raising a value to a power.

PrimInt

Generic trait for primitive integers.

RefNum

The trait for references which implement numeric operations, taking the second operand either by value or by reference.

Saturating

Saturating math operations. Deprecated, use SaturatingAdd, SaturatingSub and SaturatingMul instead.

SaturatingAdd

Performs addition that saturates at the numeric bounds instead of overflowing.

SaturatingMul

Performs multiplication that saturates at the numeric bounds instead of overflowing.

SaturatingSub

Performs subtraction that saturates at the numeric bounds instead of overflowing.

Signed

Useful functions for signed numbers (i.e. numbers that can be negative).

ToPrimitive

A generic trait for converting a value to a number.

Unsigned

A trait for values which cannot be negative

Vec2Angle

Short-hand for retrieving the angle of the vector in radians.

Vec2Rotate
WrappingAdd

Performs addition that wraps around on overflow.

WrappingMul

Performs multiplication that wraps around on overflow.

WrappingNeg

Performs a negation that does not panic.

WrappingShl

Performs a left shift that does not panic.

WrappingShr

Performs a right shift that does not panic.

WrappingSub

Performs subtraction that wraps around on overflow.

Zero

Defines an additive identity element for Self.

Functions

abs

Computes the absolute value.

abs_sub

The positive difference of two numbers.

cast

Cast from one machine scalar to another.

checked_pow

Raises a value to the power of exp, returning None if an overflow occurred.

clamp

Clamp a value between some range.

clamp_max

A value bounded by a maximum value

clamp_min

A value bounded by a minimum value

deg_to_rad

Convert the given angle in degrees to the same angle in radians.

dmat2

Creates a 2x2 matrix from two column vectors.

dmat3

Creates a 3x3 matrix from three column vectors.

dmat4

Creates a 4x4 matrix from four column vectors.

dquat

Creates a quaternion from x, y, z and w values.

dvec2

Creates a 2-dimensional vector.

dvec3

Creates a 3-dimensional vector.

dvec4

Creates a 4-dimensional vector.

fmod

Models the C++ fmod function.

gray

A short-hand constructor for Gray::new.

hsl

A short-hand constructor for Hsl::new(RgbHue::from_degrees(h * 360.0), s, l).

hsla

A short-hand constructor for Hsla::new(RgbHue::from_degrees(h * 360.0), s, l, a).

hsv

A short-hand constructor for Hsv::new(RgbHue::from_degrees(h * 360.0), s, v).

hsva

A short-hand constructor for Hsva::new(RgbHue::from_degrees(h * 360.0), s, v, a).

ivec2

Creates a 2-dimensional vector.

ivec3

Creates a 3-dimensional vector.

ivec4

Creates a 4-dimensional vector.

lin_srgb

A short-hand constructor for LinSrgb::new.

lin_srgba

A short-hand constructor for LinSrgba::new.

map_range

Maps a value from an input range to an output range.

mat2

Creates a 2x2 matrix from two column vectors.

mat3

Creates a 3x3 matrix from three column vectors.

mat3a

Creates a 3x3 matrix from three column vectors.

mat4

Creates a 4x4 matrix from four column vectors.

one

Returns the multiplicative identity, 1.

partial_max

The max between two partially ordered values.

partial_min

The min between two partially ordered values.

pow

Raises a value to the power of exp, using exponentiation by squaring.

pt2

Construct a 2-dimensional point.

pt3

Construct a 3-dimensional point.

quat

Creates a quaternion from x, y, z and w values.

rad_to_deg

Convert the given angle in radians to the same angle in degrees.

rad_to_turns

Convert the given value in radians to the equivalent value as a number of turns.

random

Generates a random value using the thread-local random number generator.

random_ascii

Generates and returns a random ascii character.

random_f32

A wrapper function around the random function that avoids the need for specifying a type in the case that it cannot be inferred. The primary purpose for this is to simplify the random API for new rust users.

random_f64

A wrapper function around the random function that avoids the need for specifying a type in the case that it cannot be inferred. The primary purpose for this is to simplify the random API for new rust users.

random_range

A function for generating a random value within the given range.

rgb

A short-hand constructor for Rgb::new.

rgb8

A short-hand constructor for Rgb::<u8>::new .

rgba

A short-hand constructor for Rgba::new.

rgba8

A short-hand constructor for Rgba<u8>::new.

signum

Returns the sign of the number.

srgb

A short-hand constructor for Srgb::new.

srgb8

A short-hand constructor for Srgb<u8>::new.

srgba

A short-hand constructor for Srgba::new.

srgba8

A short-hand constructor for Srgba<u8>::new.

turns_to_rad

Convert the given value as a number of “turns” into the equivalent angle in radians.

vec2

Creates a 2-dimensional vector.

vec3

Creates a 3-dimensional vector.

vec3a

Creates a 3-dimensional vector.

vec4

Creates a 4-dimensional vector.

zero

Returns the additive identity, 0.

Type Definitions

Gray

A color represented as gray intensity.

Hsla

Linear HSL with an alpha component. See the Hsla implementation in Alpha.

Hsva

Linear HSV with an alpha component. See the Hsva implementation in Alpha.

LinSrgb

Linear sRGB.

LinSrgba

Linear sRGB with an alpha component.

Point2

A 2-dimensional point type.

Point3

A 3-dimensional point type.

Rgb

A color represented as red, green and blue intensities.

Rgb8

The same as Rgb, but with u8’s.

Rgba

The same as Rgb, but with an alpha value representing opacity.

Rgba8

The same as Rgba, but with u8’s.

Srgb

Nonlinear sRGB.

Srgba

Nonlinear sRGB with an alpha component.

Vector2Deprecated

A common alias for the glam::Vec2 type.

Vector3Deprecated

A common alias for the glam::Vec3 type.

Vector4Deprecated

A common alias for the glam::Vec4 type.