geo

Geometry

UIView and CGRect extension that adds properties to manipulate them efficiently

Showing:

Popularity

Downloads/wk

0

GitHub Stars

89

Maintenance

Last Commit

5yrs ago

Contributors

4

Package

Dependencies

0

License

MIT

Categories

Readme

Geometry

Build Status CocoaPods Compatible Carthage Compatible License Platform Twitter

Geometry is a UIView and CGRect extension that lets you work with view and rect geometry easier. It adds the following properties to UIView:

  • top
  • left
  • bottom
  • right
  • width
  • height
  • centerX
  • centerY

And it lets you define CGRectangles and CGPoints as strings.

Requirements

  • iOS 7.0 / watchOS 2.0 / Mac OS X 10.9
  • Swift 3.0

Installation

To use Signals with a project targeting iOS 7, copy Geometry.swift into your project.

CocoaPods

To integrate Geometry into your project add the following to your Podfile:

platform :ios, '8.0'
use_frameworks!

pod 'Geometry', '~> 3.0'

Carthage

To integrate Geometry into your project using Carthage add the following to your Cartfile:

github "artman/Geometry" ~> 3.0

Quick start

myView.frame = CGRect(x: 10, y: 10, width: 20, height: 20)
myView.left = 20 // Frame is now {{20, 10}, {20, 20}}
myView.width = 100 // Frame is now {{20, 10}, {100, 20}}
myView.right = 150 // Frame is now {{50, 10}, {100, 20}}

This extension also provides StringLiteralConverters for both CGRect and CGPoint, so you can use Strings to initialize a CGRect:

myView.frame = "10, 10, 20, 20"
myView.center = "50, 50"
var rect: CGRect = "20, 25, 100, 100"

Contribute

To contribute, just fork, branch & send a pull request. To get in touch, hit me up on Twitter @artman

License

Geometry is released under an MIT license. See the LICENSE file for more information

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial