Commit graph

3116 commits

Author SHA1 Message Date
Jürg Lehni
00898908d3 Write documentation for PathItem#getIntersections(). 2012-12-27 19:26:40 +01:00
Jürg Lehni
68ad4bb5ba Implement PathItem#getIntersections(path) and Curve#getIntersections(curve) using divide-and-conquer approach, and new Curve.getBounds(). 2012-12-27 19:23:03 +01:00
Jürg Lehni
fdb4bab479 Improve arguments reading in Line constructors.
Avoid parameter overriding.
2012-12-27 19:12:30 +01:00
Jürg Lehni
03b5d58e79 Merge branch 'refs/heads/master' into intersection 2012-12-27 18:43:43 +01:00
Jürg Lehni
75596e1d03 Move a part of Path.getBounds() code into Curve._addBounds(), and use it to also define Curve.getBounds(). 2012-12-27 18:38:55 +01:00
Jürg Lehni
57a9f4fc91 Use constant substitution for Numerical constants as well. 2012-12-27 18:36:59 +01:00
Jürg Lehni
050ca1dcb1 Further clean up Path.getBounds() code. 2012-12-27 17:43:21 +01:00
Jürg Lehni
3a1f2eec3f Restructure Path#getBounds() code so Curve bounds calculations can be moved to Curve. 2012-12-27 15:19:42 +01:00
Jürg Lehni
2673991620 Have Path#_serializeFields inherit from Item#_serializeFields. 2012-12-27 13:04:38 +01:00
Jürg Lehni
8c33e5be88 Fix null exception in Matrix#equals(). 2012-12-27 13:04:21 +01:00
Jürg Lehni
f45c04a359 Remove overridden Path#matrix getters and setters, since we now control behavior through #applyMatrix. 2012-12-27 13:04:07 +01:00
Jürg Lehni
4f83e0eee6 Commit first version of serialization / deserialization mechanism.
It appears to work fine already for Paths and Groups.
2012-12-27 12:45:55 +01:00
Jürg Lehni
ae4e5d4be5 Rename Item#setProperties() to hidden #_setProperties() and add public Item#set() to use same functionality from outside. 2012-12-27 00:52:09 +01:00
Jürg Lehni
0fb89bd3e0 Rename Color#_colorType to #_type, to prepare for serialization mechanism. 2012-12-27 00:48:56 +01:00
Jürg Lehni
10385267f9 Remove Base.iterator() functionality, since we don't need it in Paper.js 2012-12-26 14:12:42 +01:00
Jürg Lehni
3b88bffff1 Document #setProperties() method. 2012-12-26 13:29:40 +01:00
Jürg Lehni
3ac039bd66 Implement properties object literal initialization for all Item constructors. 2012-12-25 22:12:25 +01:00
Jürg Lehni
6b0b6911b4 Clean up code a bit. 2012-12-25 18:09:42 +01:00
Jürg Lehni
ded73142a9 Simplify pointOrMatrix parameters and only allow points. Also remove internal _point cache from PointText and directly link #point to #matrix. 2012-12-25 17:57:04 +01:00
Jürg Lehni
623bed4c4a Also clone the applyMatrix property. 2012-12-25 17:08:17 +01:00
Jürg Lehni
e2eb92583d Update JSDoc. 2012-12-25 16:59:18 +01:00
Jürg Lehni
947afe85f0 Simplify Path#initialize() code. 2012-12-25 16:59:05 +01:00
Jürg Lehni
8f093f6dd7 Remove all PORT comments, since we won't port back features to Scriptographer. 2012-12-25 16:07:48 +01:00
Jürg Lehni
b54bdadaff Rename Item#transformContent to #applyMatrix. 2012-12-24 17:39:24 +01:00
Jürg Lehni
9d47bfcf0b Suppress weird JSdoc warnings. 2012-12-24 17:20:00 +01:00
Jürg Lehni
4731a8909d Update copyright / library information. 2012-12-24 16:50:10 +01:00
Jürg Lehni
347d02bfa1 Fix issue in item bounds test.
Translating a Group does not change the bounds of its children.
2012-12-24 16:45:02 +01:00
Jürg Lehni
110cbbb73d Streamline build scripts and include minified version in dist. 2012-12-24 16:44:13 +01:00
Jürg Lehni
89b8864b13 Fix PhyllotaxisRaster example. 2012-12-24 01:13:18 +01:00
Jürg Lehni
1e283fe113 Implement Raster#source and clean up #initialize() 2012-12-24 01:12:41 +01:00
Jürg Lehni
d6fceb928f Implement Item#transformContent property, which controls wether Item#transform() directly applies transformations to contents, or simply stores them in Item#matrix. 2012-12-24 00:39:42 +01:00
Jürg Lehni
e21ea457a7 Remove Item#apply() and clean up #applyMatrix() and simplify handling. 2012-12-24 00:29:09 +01:00
Jürg Lehni
81b8a57a7c Improve Base.isObject() to only return true for real "vanilla" JS objects. 2012-12-23 16:21:18 +01:00
Jürg Lehni
1046e440e8 Improve documentation. 2012-12-23 16:01:53 +01:00
Jürg Lehni
734cc1cc61 Undo commit 4445376c0204cb5a2e408c64b77a5b6fa09305ba since it clashes with magnification. 2012-12-21 16:41:57 +01:00
Jürg Lehni
1509a934b0 Merge branch 'refs/heads/master' into uglifyjs2
Conflicts:
	build/preprocess.sh
2012-12-21 16:15:00 +01:00
Jürg Lehni
c025c41ec0 Start implementing PathItem#getIntersections(). 2012-12-21 16:13:38 +01:00
Jürg Lehni
e3741f5708 Do not drop unreferenced functions and variables when minifying.
It seems to take ages, and parameter list is meaningful in Boostrap.js even when parameters are not used.
2012-12-21 16:13:10 +01:00
Jürg Lehni
d43cc28aac Optimise Curve constructors that construct from 4 arguments (points) and 8 (coordinate values). 2012-12-20 18:03:11 +01:00
Jürg Lehni
e10ef4dba3 Fix comment. 2012-12-19 03:22:57 +01:00
Jürg Lehni
22ddd7a37e Implement CompoundPath#curves. 2012-12-18 14:53:38 +01:00
Jürg Lehni
29a2bc781b Implement the various bounds getter on Curve too, using caching and the new static Path.get*Bounds methods. 2012-12-18 14:35:21 +01:00
Jürg Lehni
4de5f30f72 Improve documentation. 2012-12-18 14:19:22 +01:00
Jürg Lehni
c63e2c8f79 Clean up bounds scope indentation. 2012-12-18 14:19:13 +01:00
Jürg Lehni
9a8dddd7df Move Item#isEmpty() out of bounds scope and define documentation for it. 2012-12-18 14:18:53 +01:00
Jürg Lehni
7622493d2e Update libraries to versions minified with UglifyJS2. 2012-12-18 14:03:41 +01:00
Jürg Lehni
05ab8910ea Optimise GradientStop constructor for better minification. 2012-12-18 13:49:29 +01:00
Jürg Lehni
15824e7aaf Fix isEmpty for TextItems.
Closes #133.
2012-12-18 05:29:03 +01:00
Jürg Lehni
9022bb232b Simplify getGlobalMatrix(). 2012-12-18 00:22:39 +01:00
Jürg Lehni
87393d130d Make sure converting #saturation getter uses HSB, not HSL.
Fixes #111.
2012-12-17 23:03:02 +01:00