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. 11 лет назад
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 11 лет назад
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. 11 лет назад
Makefile cc2aca17a4 copyright year, author 10 лет назад
README.md 862f5b76c0 flattr—- 7 лет назад
Rakefile 166ab74298 start a cocoapod. refs #4 11 лет назад
Release.xcconfig cc2aca17a4 copyright year, author 10 лет назад
VERSION 82667bb3eb Release 0.1.1 11 лет назад
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 ×