Jürg Lehni
|
121ec5a93f
|
Allow #removeSegments() to be called without arguments, in which case all segments are removed.
|
2011-04-28 19:02:34 +01:00 |
|
Jürg Lehni
|
ea510c2403
|
Separate Path#remove(), #remove(index) & #remove(from, to) into #removeSegment(index) and #removeSegments(from, to).
|
2011-04-28 15:42:16 +01:00 |
|
Jürg Lehni
|
5211e86e3a
|
Rename Point#isParallel() to #isColinear(), reimplement it using #cross() and add #isOrthogonal() as well, using #dot().
|
2011-04-28 15:12:58 +01:00 |
|
Jonathan Puckey
|
4b4e092f90
|
Undo previous compressing of Rectangle functions.
|
2011-04-28 15:44:05 +02:00 |
|
Jürg Lehni
|
3916db4eb8
|
Fix location of browser related files in load.js.
|
2011-04-28 13:25:34 +01:00 |
|
Jürg Lehni
|
037adc074d
|
Merge remote-tracking branch 'origin/master'
|
2011-04-28 13:23:27 +01:00 |
|
Jürg Lehni
|
4d999d57e2
|
Replace all type converting string compares with ===, !==.
|
2011-04-28 13:23:17 +01:00 |
|
Jonathan Puckey
|
dd2b546914
|
Merge remote branch 'origin/master'
|
2011-04-28 14:22:44 +02:00 |
|
Jonathan Puckey
|
8f2bc422dd
|
Point: compress round, ceil, floor and abs functions.
|
2011-04-28 14:22:25 +02:00 |
|
Jonathan Puckey
|
b4ee975cfb
|
Rectangle: minor changes.
|
2011-04-28 14:15:12 +02:00 |
|
Jürg Lehni
|
115ef45464
|
Remove unnecessary .0 since numbers are all the same in JavaScript.
|
2011-04-28 13:13:33 +01:00 |
|
Jürg Lehni
|
0d697403b5
|
Clean up Path#curveTo() code.
|
2011-04-28 13:12:21 +01:00 |
|
Jürg Lehni
|
7dce6f3a6c
|
Merge remote-tracking branch 'origin/master'
|
2011-04-28 13:11:58 +01:00 |
|
Jürg Lehni
|
f69153844b
|
Make #setContextStyles() a 'protected' function.
|
2011-04-28 13:04:12 +01:00 |
|
Jonathan Puckey
|
e0b5dbad21
|
Rectangle: compress unite, intersect and include.
|
2011-04-28 13:45:55 +02:00 |
|
Jonathan Puckey
|
ad8dfe91c7
|
Implement Raster#getStrokeBounds().
|
2011-04-28 12:56:08 +02:00 |
|
Jonathan Puckey
|
e1f5d4952d
|
Minor cleanups and fixes in Item.
|
2011-04-28 12:50:53 +02:00 |
|
Jonathan Puckey
|
861812f3ad
|
Fix bug in previous commit.
|
2011-04-28 12:39:55 +02:00 |
|
Jonathan Puckey
|
1666a36210
|
Have Item#_getBounds return a normal rectangle when called with includeStroke flag, since Item#getStrokeBounds is read only.
|
2011-04-28 12:38:57 +02:00 |
|
Jonathan Puckey
|
eed054af17
|
Item: implement getStrokeBounds, move getBounds functionality into _getBounds with an includeStroke flag. Also simplify the _getBounds code.
|
2011-04-28 12:33:03 +02:00 |
|
Jonathan Puckey
|
32f04f6162
|
Document: implement selectAll() and deselectAll().
|
2011-04-28 11:54:26 +02:00 |
|
Jürg Lehni
|
d71450c0b1
|
Make sure selected argument is always a boolean.
|
2011-04-28 10:05:43 +01:00 |
|
Jürg Lehni
|
a9ea10ca7f
|
Move version of #getBounds() that handles children to Item, to eliminate duplicated code.
|
2011-04-28 10:04:36 +01:00 |
|
Jürg Lehni
|
6468732d96
|
Some changes to Key code, rename alt to option to go with Scriptographer, and check for paper.toolt to exist since it caused errors when reloading a page.
|
2011-04-28 08:49:56 +01:00 |
|
Jürg Lehni
|
26111da357
|
Use CanvasProvider in Document to produce canvas.
|
2011-04-28 08:49:05 +01:00 |
|
Jürg Lehni
|
81461764a5
|
Add conditional code to CanvasProvider, with a TODO for implementing functionality for the server.
|
2011-04-28 08:48:50 +01:00 |
|
Jürg Lehni
|
cf79080682
|
Move browser related code to browser folder and use conditionals to not include them when producing paper.js for server.
|
2011-04-28 08:48:28 +01:00 |
|
Jürg Lehni
|
6a483fa8be
|
Rename CurveLocation related functions to *At(offset), and add optional isParameter argument that defines whether offset is a length or a description of curve index / curve parameter.
|
2011-04-27 21:40:52 +01:00 |
|
Jürg Lehni
|
ea6cf24aae
|
Rename length parameter to more appropriate offset, to reflect recent name changes.
|
2011-04-27 21:23:57 +01:00 |
|
Jürg Lehni
|
3501e14c51
|
Remove comment about pending port that has been backported to Scriptographer.
|
2011-04-27 21:13:32 +01:00 |
|
Jürg Lehni
|
c2fbcbcaa8
|
Use Curve#getLength(from, to) rather than cloning and dividing.
|
2011-04-27 20:52:24 +01:00 |
|
Jürg Lehni
|
346493fb7c
|
Replace calls to getters with their internal property in all cases where getter does not perform additional magic.
|
2011-04-27 20:48:41 +01:00 |
|
Jürg Lehni
|
016f4c15aa
|
Rename CurveLocation#getLength() and #getCurveLength() to #getOffset() and #getCurveOffset(), and seperate Path#getLength([location]) into #getLength() and #_getOffset().
|
2011-04-27 20:08:57 +01:00 |
|
Jürg Lehni
|
b0a1f4b1a9
|
Add missing Path#getPoint(length).
|
2011-04-27 19:28:39 +01:00 |
|
Jürg Lehni
|
c836012d3d
|
Add CurveLocation#getTangent() and #getNormal() and use them in Path's versions.
|
2011-04-27 19:26:03 +01:00 |
|
Jürg Lehni
|
bf0bc81892
|
Fix various minor bugs in CurveLocation: We cannot rely on most of its field to always be set and need to call getters instead.
|
2011-04-27 19:24:40 +01:00 |
|
Jürg Lehni
|
cc06a6f128
|
Remove CurveLocation#getPath() again as its functionality is provided by #getItem() already.
|
2011-04-27 19:22:57 +01:00 |
|
Jürg Lehni
|
ebc9bc88c4
|
Use 0 instead of null for empty bit flag fields.
|
2011-04-27 19:11:22 +01:00 |
|
Jürg Lehni
|
c6d96784ba
|
Further simplify and compress code.
|
2011-04-27 18:16:32 +01:00 |
|
Jürg Lehni
|
f71967f3d3
|
Further simplify and compress code.
|
2011-04-27 17:57:56 +01:00 |
|
Jürg Lehni
|
6b6f27cb6e
|
Add TODOs about not returning -1 for undefined.
|
2011-04-27 17:53:59 +01:00 |
|
Jürg Lehni
|
4bfc56bb6d
|
Simplify and compress code a bit.
|
2011-04-27 17:53:23 +01:00 |
|
Jonathan Puckey
|
0700c51a85
|
Simplifications in Item#isDescendant & Item#isAncestor.
|
2011-04-27 16:16:05 +02:00 |
|
Jonathan Puckey
|
55fc2bc99c
|
Some minor changes to Item.
|
2011-04-27 16:10:23 +02:00 |
|
Jonathan Puckey
|
81a15379e5
|
Have Path#reverse also reverse the segment handles.
|
2011-04-27 15:49:06 +02:00 |
|
Jürg Lehni
|
ccbdb2abe3
|
Make preventDefault() work on IE too.
|
2011-04-27 12:41:52 +01:00 |
|
Jürg Lehni
|
ae3ec6f2d7
|
Remove comment about pending port that has been backported to Scriptographer.
|
2011-04-27 12:36:04 +01:00 |
|
Jürg Lehni
|
9671ac6dbc
|
Remove comment about pending port that has been backported to Scriptographer.
|
2011-04-27 12:30:17 +01:00 |
|
Jürg Lehni
|
e6a0f48256
|
Further clean-up code, as we only need previous / next references inside one sub-condition.
|
2011-04-27 12:26:10 +01:00 |
|
Jürg Lehni
|
138ec7d93c
|
No need to perform cyclic looping here now, since #getNext/Previous() does that for us.
|
2011-04-27 12:24:04 +01:00 |
|
Jürg Lehni
|
a251a24347
|
Add some TODOs to check.
|
2011-04-27 12:21:47 +01:00 |
|
Jürg Lehni
|
0e89466a11
|
Add cyclic looping to Segment#previous/next for closed paths.
|
2011-04-27 12:21:31 +01:00 |
|
Jürg Lehni
|
92369bf14f
|
Seperate the private Segment#is/setSelected(point) methods from the newly added getter / setter.
|
2011-04-27 12:15:51 +01:00 |
|
Jürg Lehni
|
6204eef643
|
Remove comment about pending port that has been backported to Scriptographer.
|
2011-04-27 12:08:13 +01:00 |
|
Jürg Lehni
|
776edda51d
|
Cleaned-up Segment#is/setSelected() code a bit.
|
2011-04-27 12:06:44 +01:00 |
|
Jürg Lehni
|
cd2347aa9b
|
Remove comment about pending port that has been backported to Scriptographer.
|
2011-04-27 11:24:13 +01:00 |
|
Jürg Lehni
|
41eb09f15f
|
Add forgotten brackets in Curve#isSelected() and remove comments about backporting as it is ported now.
|
2011-04-27 10:52:56 +01:00 |
|
Jürg Lehni
|
1c9cd9ace4
|
Clean up code in #setContextStyles().
|
2011-04-27 09:53:53 +01:00 |
|
Jürg Lehni
|
b7a4277143
|
Add comment about _x / _y properties and clean up code a bit.
|
2011-04-26 17:57:12 +01:00 |
|
Jürg Lehni
|
ead1600afe
|
Clean-up CurveLocation code and switch from returning -1 to null for #getIndex().
|
2011-04-26 17:49:54 +01:00 |
|
Jürg Lehni
|
c4ede92e81
|
Fix error in Path#getLastCurve().
|
2011-04-26 17:48:36 +01:00 |
|
Jürg Lehni
|
77ad25ffba
|
Clean up port comments.
|
2011-04-26 17:47:30 +01:00 |
|
Jürg Lehni
|
ac5dca4fc0
|
Update various comments about TODOs.
|
2011-04-26 17:04:15 +01:00 |
|
Jürg Lehni
|
84d321bd56
|
Clean up comments.
|
2011-04-26 15:56:06 +01:00 |
|
Jürg Lehni
|
9ed0254cde
|
Make sure global paper point works during bootstraping of library already.
|
2011-04-26 15:53:19 +01:00 |
|
Jürg Lehni
|
bdfe35d93a
|
Consistently name local context variables 'ctx', to save line size and acknowledge the fact that Canvas contexts have a funny API design.
|
2011-04-26 15:39:16 +01:00 |
|
Jürg Lehni
|
189182b77c
|
Rename loop function to frame.
|
2011-04-26 15:16:05 +01:00 |
|
Jürg Lehni
|
a20f988511
|
Minor code cleanup.
|
2011-04-26 12:55:20 +01:00 |
|
Jürg Lehni
|
ba0c6dafea
|
Add paper.debug switch, set it to true by default when loading code through load.js and use it to ignore focus / blur events in Event.requestAnimationFrame() during development.
|
2011-04-26 12:48:46 +01:00 |
|
Jürg Lehni
|
9d2459d799
|
Rename '// Todo' to '// TODO', which is the convention.
|
2011-04-26 12:39:48 +01:00 |
|
Jürg Lehni
|
f431dcab5c
|
Add test code for dirty rectangle performance, deactivated by a boolean switch.
|
2011-04-26 12:37:37 +01:00 |
|
Jürg Lehni
|
e8a2a786e0
|
Fix Curve#getParameter() for straight lines.
|
2011-04-26 12:30:58 +01:00 |
|
Jürg Lehni
|
6609dc2307
|
Implement new root finding algorithm, combining Newton-Raphson Method with Bisection, and update Curve#getParameter() to use it.
|
2011-04-26 12:23:09 +01:00 |
|
Jürg Lehni
|
7868bc1bdc
|
Remove obsolete comma.
|
2011-04-26 11:30:29 +01:00 |
|
Jonathan Puckey
|
e52ed9ae36
|
Key handlers: allow the user to prevent the default behaviour of key events.
|
2011-04-25 18:11:01 +02:00 |
|
Jonathan Puckey
|
1efb69e46f
|
Key: small change to a todo comment.
|
2011-04-25 17:42:37 +02:00 |
|
Jonathan Puckey
|
778997ec18
|
Simplify Key further and fix ToolEvent#getModifiers.
|
2011-04-25 17:38:40 +02:00 |
|
Jonathan Puckey
|
404bbac3a5
|
Key: remove logging statement.
|
2011-04-25 17:30:24 +02:00 |
|
Jonathan Puckey
|
5d15c3dfef
|
Simplify ToolEvent#getModifiers() & small cleanup in Key.
|
2011-04-25 17:26:58 +02:00 |
|
Jonathan Puckey
|
a96bb326f4
|
Some more simplifications in Key.
|
2011-04-25 17:16:45 +02:00 |
|
Jonathan Puckey
|
95bfebf64b
|
Simplify Key a bit.
|
2011-04-25 17:08:08 +02:00 |
|
Jonathan Puckey
|
2e43fb0997
|
Key: add type to the key event.
|
2011-04-25 14:57:06 +02:00 |
|
Jonathan Puckey
|
05a138bc7b
|
Implement onKeyDown / onKeyUp & Key#isDown(key).
|
2011-04-25 14:52:45 +02:00 |
|
Jonathan Puckey
|
1e4ae9afb4
|
Simplify ToolEvent#modifiers.
|
2011-04-25 12:05:18 +02:00 |
|
Jonathan Puckey
|
22bc08501e
|
Implement ToolEvent#modifiers.
|
2011-04-25 11:52:52 +02:00 |
|
Jonathan Puckey
|
5e6630a1f3
|
Speed up drawHandle function.
|
2011-04-23 15:56:27 +02:00 |
|
Jonathan Puckey
|
f261da3279
|
Document#getSelectedItems: add todo.
|
2011-04-23 14:32:21 +02:00 |
|
Jürg Lehni
|
092c893d38
|
Merge remote-tracking branch 'origin/master'
|
2011-04-22 16:32:32 +01:00 |
|
Jürg Lehni
|
28c9254695
|
Rename onFrameLoop to onFrame.
|
2011-04-22 16:31:46 +01:00 |
|
Jonathan Puckey
|
538f360a6b
|
Fix Document#getSelectedItems & Path#setSegments.
|
2011-04-22 12:30:38 +02:00 |
|
Jonathan Puckey
|
4d89d6c235
|
Path#setSegments: reset _selectedSegmentCount when setting a new segment list.
|
2011-04-22 11:39:12 +02:00 |
|
Jonathan Puckey
|
11063af8df
|
CompoundPath cleanups.
|
2011-04-21 21:12:48 +02:00 |
|
Jonathan Puckey
|
1ea0a811b5
|
Use internal variables in CompoundPath#moveBy and Segment#isSelected.
|
2011-04-21 21:06:35 +02:00 |
|
Jonathan Puckey
|
af0543dac8
|
Some cleanups in Path.
|
2011-04-21 21:01:31 +02:00 |
|
Jonathan Puckey
|
dfb5cbc5eb
|
Fix two bugs in the selected items code.
|
2011-04-21 20:52:28 +02:00 |
|
Jonathan Puckey
|
be8ee90f75
|
Document: use a hash for Document#_selectedItems to speed up adding to and removing from it.
|
2011-04-21 20:43:42 +02:00 |
|
Jonathan Puckey
|
745f002cd3
|
Segment: add todo.
|
2011-04-21 20:00:11 +02:00 |
|
Jonathan Puckey
|
abb0878a25
|
Curve: Implement selection of curves.
|
2011-04-21 19:54:32 +02:00 |
|
Jonathan Puckey
|
cf541901dd
|
Rename getSelected methods to isSelected.
|
2011-04-21 19:51:49 +02:00 |
|
Jonathan Puckey
|
d831d66758
|
Implement SelectionState.js: bitwise flags for segment selection state.
|
2011-04-21 19:37:51 +02:00 |
|
Jonathan Puckey
|
7867a46c35
|
Path#setSelected: do XOR correctly.
|
2011-04-21 18:45:36 +02:00 |
|
Jonathan Puckey
|
cf2faa14e3
|
Path#join: use internal variables.
|
2011-04-21 18:43:22 +02:00 |
|
Jonathan Puckey
|
ff9976ab57
|
Implement Document#getSelectedItems.
|
2011-04-21 18:10:47 +02:00 |
|
Jonathan Puckey
|
73b97dbfba
|
Implement segment point selection.
|
2011-04-21 18:06:06 +02:00 |
|
Jonathan Puckey
|
732caec7bf
|
Speed up drawing of selected items.
|
2011-04-21 15:48:21 +02:00 |
|
Jonathan Puckey
|
517793c48a
|
Implement Item#get/setDocument and Document#selectedItems.
|
2011-04-21 15:47:00 +02:00 |
|
Jonathan Puckey
|
b2cd8cdec2
|
Path: use the internal SegmentPoint#_x and #_y properties where possible.
|
2011-04-21 15:25:25 +02:00 |
|
Jürg Lehni
|
985aa5aff8
|
Directly access internal _x and _y properties on internal SegmentPoints, to avoid callling getters.
|
2011-04-21 13:33:12 +01:00 |
|
Jürg Lehni
|
96f266b4d2
|
Add beginning of SegmentPoint class.
|
2011-04-21 13:21:56 +01:00 |
|
Jürg Lehni
|
00958afd09
|
Explain lookup tables in Numerical.
|
2011-04-21 12:37:35 +01:00 |
|
Jonathan Puckey
|
1d92aea8e2
|
Fix Item#setSelected.
|
2011-04-20 16:00:08 +02:00 |
|
Jonathan Puckey
|
3fcfe3adbb
|
Implement drawing of selection of PlacedSymbol & Raster items.
|
2011-04-18 18:46:39 +02:00 |
|
Jonathan Puckey
|
be9f312110
|
Implement a first version of drawing path selection.
|
2011-04-17 18:46:35 +02:00 |
|
Jonathan Puckey
|
74cee4abef
|
Implement Path#remove() and add tests for it.
|
2011-04-13 16:16:32 +02:00 |
|
Jonathan Puckey
|
6d4d07f2a8
|
Path.Constructors: simply Path.Star constructor.
|
2011-04-13 00:05:46 +02:00 |
|
Jonathan Puckey
|
8a113a1c84
|
Item: clean up white space.
|
2011-04-12 14:37:52 +02:00 |
|
Jonathan Puckey
|
0d4517c77f
|
Path: add todos for missing functions.
|
2011-04-12 14:36:02 +02:00 |
|
Jonathan Puckey
|
60dca8c2e8
|
Path#cubicCurveTo: convert arguments to points first.
|
2011-04-12 14:35:42 +02:00 |
|
Jonathan Puckey
|
91d8dd1187
|
Path: add todos for missing functions.
|
2011-04-12 14:28:18 +02:00 |
|
Jonathan Puckey
|
491250ef14
|
Simplify Path.Star constructor.
|
2011-04-12 14:20:56 +02:00 |
|
Jonathan Puckey
|
12de77eb42
|
Path.Constructors: implement Path.Star and add tests.
|
2011-04-12 14:18:00 +02:00 |
|
Jonathan Puckey
|
bd59e48682
|
Fix problem with Point constructor when passed { angle: 0, length: n }, by checking for undefined.
|
2011-04-12 13:48:44 +02:00 |
|
Jonathan Puckey
|
2a9bbd3dee
|
Fix Path#closePath & CompoundPath#closePath.
|
2011-04-11 23:33:08 +02:00 |
|
Jonathan Puckey
|
499c421021
|
Implement Path#join(path) and add tests for it.
|
2011-04-11 23:30:08 +02:00 |
|
Jonathan Puckey
|
d02885cba7
|
Implement Item#isParent and add tests for it.
|
2011-04-11 19:42:03 +02:00 |
|
Jonathan Puckey
|
594c11fedd
|
CurveLocation: fix mistakes.
|
2011-04-11 19:36:40 +02:00 |
|
Jonathan Puckey
|
aa043428c0
|
CurveLocation: add empty line to end of file.
|
2011-04-11 19:33:34 +02:00 |
|
Jonathan Puckey
|
b46c6d0a29
|
Curve: implement getLocation(length), getLength(location), getTangent(length), getNormal(length)
|
2011-04-11 19:32:19 +02:00 |
|
Jonathan Puckey
|
d396f48c4b
|
Implement CurveLocation.
|
2011-04-11 19:32:04 +02:00 |
|
Jonathan Puckey
|
5f05c85b42
|
Gradient: rename midPoint to rampPoint.
|
2011-04-07 17:12:00 +02:00 |
|
Jonathan Puckey
|
c875953198
|
Merge remote branch 'origin/master'
|
2011-04-07 17:03:33 +02:00 |
|
Jonathan Puckey
|
06df8b1288
|
Allow Gradient constructor to receive an array of colors or [color, midPoint]. Also allow the user to specify the type of the gradient in the constructor.
|
2011-04-07 17:01:49 +02:00 |
|
Jürg Lehni
|
08d0499251
|
Change comment.
|
2011-03-25 19:58:20 +02:00 |
|
Jürg Lehni
|
e83195bb8f
|
Add #first/lastCurve getters.
|
2011-03-25 19:58:02 +02:00 |
|
Jürg Lehni
|
b5fdecf3d1
|
Rename ObservedRectangle to LinkedRectangle, ObservedPoint to LinkedPoint, and add more comments about what it is they are doing.
|
2011-03-22 17:27:46 +00:00 |
|
Jürg Lehni
|
dbb947b7aa
|
Finish ObservedRectangle, by solving observer notification for all setters.
|
2011-03-22 17:15:56 +00:00 |
|
Jürg Lehni
|
14010eb8b2
|
Format abscissas array for better reading.
|
2011-03-21 12:46:00 +00:00 |
|
Jürg Lehni
|
417d015eab
|
Improve curve time parametrization precision by iteratively adding up sub-range lengths, and optimise speed by determining integration precision based on range size.
|
2011-03-20 11:38:06 +00:00 |
|
Jürg Lehni
|
a794816097
|
Fix wrong number of iterations in False Position method.
|
2011-03-20 02:03:26 +00:00 |
|
Jürg Lehni
|
11e70c5069
|
Use fast Newton-Raphson Method for now.
|
2011-03-20 02:02:02 +00:00 |
|
Jürg Lehni
|
0620a19eb9
|
Use False Position method as fall back in Newton-Raphson method, for accurate results in rare sitatuations wher the fast Newton-Raphson method fails.
|
2011-03-20 02:01:17 +00:00 |
|
Jürg Lehni
|
02328287cb
|
Use n=16 evaluations in integrations for now.
|
2011-03-20 02:00:15 +00:00 |
|
Jürg Lehni
|
500942e86d
|
Improve Numerical.integrate() by adding higher precision and supported iterations of up to n = 16.
|
2011-03-20 01:59:53 +00:00 |
|
Jürg Lehni
|
7ae504e51f
|
Add support for Item#removeOnMove().
|
2011-03-20 00:11:02 +00:00 |
|
Jürg Lehni
|
ad71293983
|
Remove Van Wijngaarden–Dekker–Brent method again as it led to imprecise results, and experiment with the very fast Newton-Raphson method (keeping False Position as a possible fallback for now).
|
2011-03-20 00:04:33 +00:00 |
|
Jürg Lehni
|
2c9d168224
|
Clean up and improve Path drawing commands.
|
2011-03-19 23:09:17 +00:00 |
|
Jürg Lehni
|
1267f41559
|
Add beginning of ObservedRectangle support and test it in animatedStar example.
|
2011-03-16 23:32:46 +01:00 |
|
Jürg Lehni
|
b1c0a48552
|
Add ObservedPoint class that records changes and passes them on to the owner, and use it for all Point objects returned from Rectangle.
|
2011-03-16 07:12:34 +01:00 |
|
Jürg Lehni
|
4e65d2c1d3
|
Fix simple syntax error.
|
2011-03-15 12:30:44 +01:00 |
|
Jürg Lehni
|
db1e7e8880
|
Simple optimisations.
|
2011-03-14 22:38:40 +01:00 |
|