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

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

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 ×