Struct objc2::foundation::CGRect
source · [−]foundation
only.Expand description
The location and dimensions of a rectangle.
In the default Core Graphics coordinate space (macOS), the origin is located in the lower-left corner of the rectangle and the rectangle extends towards the upper-right corner.
If the context has a flipped coordinate space (iOS, tvOS, watchOS) the origin is in the upper-left corner and the rectangle extends towards the lower-right corner.
This technically belongs to the CoreGraphics
framework, but we define it
here for convenience.
Fields
origin: CGPoint
The coordinates of the rectangle’s origin.
size: CGSize
The dimensions of the rectangle.
Implementations
sourceimpl CGRect
impl CGRect
sourcepub const fn new(origin: CGPoint, size: CGSize) -> Self
pub const fn new(origin: CGPoint, size: CGSize) -> Self
Create a new rectangle with the given origin and dimensions.
Examples
use objc2::foundation::{CGPoint, CGRect, CGSize};
let origin = CGPoint::new(10.0, -2.3);
let size = CGSize::new(5.0, 0.0);
let rect = CGRect::new(origin, size);
sourcepub fn standardize(self) -> Self
pub fn standardize(self) -> Self
Returns a rectangle with a positive width and height.
This is often useful
Examples
use objc2::foundation::{CGPoint, CGRect, CGSize};
let origin = CGPoint::new(1.0, 1.0);
let size = CGSize::new(-5.0, -2.0);
let rect = CGRect::new(origin, size);
assert_eq!(rect.standardize().size, CGSize::new(5.0, 2.0));
sourcepub fn is_empty(self) -> bool
pub fn is_empty(self) -> bool
Returns whether a rectangle has zero width or height.
Examples
use objc2::foundation::{CGPoint, CGRect, CGSize};
assert!(CGRect::ZERO.is_empty());
let point = CGPoint::new(1.0, 2.0);
assert!(CGRect::new(point, CGSize::ZERO).is_empty());
assert!(!CGRect::new(point, CGSize::new(1.0, 1.0)).is_empty());
Trait Implementations
sourceimpl PartialEq<CGRect> for CGRect
impl PartialEq<CGRect> for CGRect
sourceimpl RefEncode for CGRect
impl RefEncode for CGRect
sourceconst ENCODING_REF: Encoding = _
const ENCODING_REF: Encoding = _
The Objective-C type-encoding for a reference of this type. Read more
impl Copy for CGRect
impl StructuralPartialEq for CGRect
Auto Trait Implementations
impl RefUnwindSafe for CGRect
impl Send for CGRect
impl Sync for CGRect
impl Unpin for CGRect
impl UnwindSafe for CGRect
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more