#[repr(C)]pub struct CGRect {
pub origin: CGPoint,
pub size: CGSize,
}
Available on crate feature
CFCGTypes
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.
Fields§
§origin: CGPoint
The coordinates of the rectangle’s origin.
size: CGSize
The dimensions of the rectangle.
Implementations§
Source§impl 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_core_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
Available on crate feature std
only.
pub fn standardize(self) -> Self
std
only.Returns a rectangle with a positive width and height.
§Examples
use objc2_core_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_core_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§
Source§impl RefEncode for CGRect
Available on crate feature objc2
only.
impl RefEncode for CGRect
Available on crate feature
objc2
only.Source§const 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 Freeze for CGRect
impl RefUnwindSafe for CGRect
impl Send for CGRect
impl Sync for CGRect
impl Unpin for CGRect
impl UnwindSafe for CGRect
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> EncodeArgument for Twhere
T: Encode,
impl<T> EncodeArgument for Twhere
T: Encode,
Source§const ENCODING_ARGUMENT: Encoding = T::ENCODING
const ENCODING_ARGUMENT: Encoding = T::ENCODING
The Objective-C type-encoding for this type.
Source§impl<T> EncodeReturn for Twhere
T: Encode,
impl<T> EncodeReturn for Twhere
T: Encode,
Source§const ENCODING_RETURN: Encoding = T::ENCODING
const ENCODING_RETURN: Encoding = T::ENCODING
The Objective-C type-encoding for this type.