CGOperators

by JohnSundell

JohnSundell / CGOperators

Easily manipulate CGPoints, CGSizes and CGVectors using math operators

126 Stars 7 Forks Last release: over 3 years ago (1.0.0) MIT License 7 Commits 1 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

CGOperators

CocoaPods Carthage Swift Package Manager Marathon Twitter: @johnsundell

Welcome to

CGOperators
, a small Swift framework that enables you to easily manipulate Core Graphics' vector types (
CGPoint
,
CGSize
and
CGVector
) using math operators. It can help you write compact, yet highly readable code when dealing with things like image sizes and frame-based layouts.

Examples

Add two vectors

let point = view.frame.origin + CGPoint(x: 10, y: 20)
let size = image.size + view.frame.size
let vector = physicsWorld.gravity + player.size

Subtract two vectors

let point = view.frame.origin - CGPoint(x: 10, y: 20)
let size = image.size - view.frame.size
let vector = physicsWorld.gravity - player.size

Multiply a vector with a constant

view.frame.size = image.size * 4
button.frame.origin = superview.bounds.size * 2
physicsWorld.gravity = player.position * 10

Divide a vector by a constant

view.frame.size = image.size / 4
button.frame.origin = superview.bounds.size / 2
physicsWorld.gravity = player.position / 10

Installation

Using CocoaPods

Add

pod CGOperators
to your
Podfile

Using Carthage

Add

git "JohnSundell/CGOperators"
to your
Cartfile

Using the Swift Package Manager

Add

Package(url: "https://github.com/JohnSundell/CGOperators.git", majorVersion: 1)
to your
Package.swift
file.

Using Marathon

Run

marathon add https://github.com/JohnSundell/CGOperators.git
on the command line.

Help, feedback or suggestions?

  • Open an issue if you need help, if you found a bug, or if you want to discuss a feature request.
  • Open a PR if you want to make some change to
    CGOperators
    .
  • Contact @johnsundell on Twitter for discussions, news & announcements about
    CGOperators
    and other open source projects.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.