C and Objective C math and geometry helpers http://purl.mro.name/ios/MROGeometry

Marcus Rohrmoser 04aabb9f9e code domain 6 سال پیش
MROGeometry cc2aca17a4 copyright year, author 10 سال پیش
MROGeometry.xcodeproj 95b0b9b052 podspec++, CoreGraphics dependency added. 10 سال پیش
MROGeometryTests cc2aca17a4 copyright year, author 10 سال پیش
tools cc2aca17a4 copyright year, author 10 سال پیش
.gitignore 03bcc11112 README, gitignore 11 سال پیش
.travis.yml 859f8710a7 xctool has issues. 7 سال پیش
CHANGELOG.md 166ab74298 start a cocoapod. refs #4 10 سال پیش
Common.xcconfig cc2aca17a4 copyright year, author 10 سال پیش
Debug.xcconfig cc2aca17a4 copyright year, author 10 سال پیش
LICENSE cc2aca17a4 copyright year, author 10 سال پیش
MROGeometry.podspec 95b0b9b052 podspec++, CoreGraphics dependency added. 10 سال پیش
Makefile cc2aca17a4 copyright year, author 10 سال پیش
README.md 862f5b76c0 flattr—- 7 سال پیش
Rakefile 166ab74298 start a cocoapod. refs #4 10 سال پیش
Release.xcconfig cc2aca17a4 copyright year, author 10 سال پیش
VERSION 82667bb3eb Release 0.1.1 10 سال پیش
doap.rdf 04aabb9f9e code domain 6 سال پیش

README.md

Build Status Version License Platform

MROGeometry

Some C / Objective-C helpers related to

CGPathReader.h

Parse a SVG path and return a retained CGPathRef.

See PathParser.h

CGPathWriter.h

Write a very simple, non-optimized form of SVG path.

MROCGPointMath.h

Simple CGPoint math:

  • add,
  • subtract,
  • scale (multiply x and y with a number),
  • dot product,
  • distance square and distance.

NSCoder_MROCGPath.h

Persist a CGPathRef using the SVG path format as ASCII/C String.

PathParser.h

Parse a SVG path and return a retained CGPathRef.

Uses the Ragel-generate state machine PathParser.rl directly based on the W3C BNF path grammar for parsing.

TrafoParser.h

Parse a SVG transform attribute and return a CGAffineTransform.

Uses the Ragel-generate state machine TrafoParser.rl directly based on the W3C grammar for parsing.

Global Macros

There are some macros I use all over the place. Instead including the same header in every source file I put them into MROGeometry-Prefix.pch as usual.

Makefile

Generate C state machines and pdf docs from Ragel sources.

Design Goals

Quality very good good normal irrelevant
Functionality ×
Reliability ×
Usability ×
Efficiency ×
Changeability ×
Portability ×