diff --git a/build/preprocess.sh b/build/preprocess.sh index 3dd3e8b5..9fe48778 100755 --- a/build/preprocess.sh +++ b/build/preprocess.sh @@ -24,7 +24,7 @@ # commented Preprocessed, still formated and commented # stripped Preprocessed, formated but without comments -VERSION=0.8 +VERSION=0.8.0 DATE=$(git log -1 --pretty=format:%ad) COMMAND="./prepro.js -d '{ \"version\": $VERSION, \"date\": \"$DATE\", \"parser\": \"acorn\", \"svg\": true }' $3 $2" diff --git a/package.json b/package.json index c8628d62..31146aaa 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "paper", - "description": "Vector graphics scripting framework", - "version": "0.2.2", + "version": "0.8.0", + "description": "The Swiss Army Knife of Vector Graphics Scripting", "contributors": [{ "name" : "Jürg Lehni", "url" : "http://lehni.org" @@ -10,7 +10,7 @@ "url" : "http://jonathanpuckey.com" }], "homepage": "http://paperjs.org", - "keywords": ["canvas", "graphic", "graphics", "vector", "paper.js"], + "keywords": ["canvas", "vector", "graphic", "graphics", "bezier", "paper.js"], "repository": "git://github.com/paperjs/paper.js/", "dependencies": { "canvas": ">= 0.7.0" diff --git a/src/path/PathItem.Boolean.js b/src/path/PathItem.Boolean.js index 4082f6b4..f77961b1 100644 --- a/src/path/PathItem.Boolean.js +++ b/src/path/PathItem.Boolean.js @@ -138,8 +138,9 @@ PathItem.inject(new function() { && (clockwise === path2Clockwise || !testOnCurve(path2, midPoint)); if (operator(path === path1, insidePath1, insidePath2)) { - // Mark as invalid, but do not remove yet, so the graph - // structure is preserved. + // The segment is to be discarded. Don't add it to segments, + // and mark it as invalid since it might still be found + // through curves / intersections, see below. segment._invalid = true; } else { segments.push(segment); @@ -155,7 +156,8 @@ PathItem.inject(new function() { loc = segment._intersection, intersection = loc && loc.getSegment(true); if (segment.getPrevious()._invalid) - segment.setHandleIn(intersection ? intersection._handleIn + segment.setHandleIn(intersection + ? intersection._handleIn : Point.create(0, 0)); do { segment._visited = true;