Commit Graph

255 Commits

Author SHA1 Message Date
John Firebaugh
60ff6fc021 Use maki icons for points (fixes #881) 2013-03-08 20:22:06 -08:00
Tom MacWright
0fafa340fe Start using d3 3.1.0
Update d3, use streams, d3.set, clip
Use clipping, fix side effects
2013-03-07 17:45:16 -05:00
Ansis Brammanis
32a78d4573 let centerEase be stopped by dragging 2013-03-06 14:42:56 -05:00
Ansis Brammanis
8fc4cffd20 Revert "shorter wait before redrawing after zooming"
This reverts commit 7a22e62426.
2013-03-06 13:12:46 -05:00
Ansis Brammanis
f8f86e7a42 Avoid style recalculation in resetTransform 2013-03-06 12:11:46 -05:00
Ansis Brammanis
7a22e62426 shorter wait before redrawing after zooming
Feels a lot snappier.
Slightly longer delay when panning.
2013-03-06 12:04:41 -05:00
John Firebaugh
417e21ab05 Remove unused 2013-03-05 16:02:27 -08:00
John Firebaugh
60a290282c Clip lines with Cohen-Sutherland algorithm
This yields a 10x paint performance increase at
#map=18.88/38.85208/-76.72632, as measured with
Chrome Canary's "Continuous Page Repainting" mode.

Fixes #885.
2013-03-03 18:25:42 -08:00
Ansis Brammanis
0090920d41 maintain center when map resized 2013-02-28 14:35:33 -05:00
Ansis Brammanis
4081d1234e set centerzoom before drawing map 2013-02-28 13:12:00 -05:00
John Firebaugh
b7894ceaf0 Calculate participating ways in AddMidpoint
Due to differenced redraw, midpoint.ways was getting stale,
so sometimes dragging a midpoint didn't add the new node to
all ways. Better to calculate participating ways when needed.
This also simplifies the code for adding a midpoint via double
click. It does make filtering midpoints on redraw a bit more
expensive, but a cursory profile didn't show it being a problem.

Fixes #763.
2013-02-27 20:41:38 -08:00
John Firebaugh
571edc707d d3.tail -> iD.ui.Tail 2013-02-27 17:55:23 -08:00
John Firebaugh
e154a94ef0 Draw only visible midpoints (#804) 2013-02-17 11:27:36 -08:00
Ansis Brammanis
147fce1f49 Merge branch 'tree-intersects'
Conflicts:
	js/id/behavior/lasso.js
2013-02-15 13:40:01 -05:00
Ansis Brammanis
7102fea04d add history.intersects to context 2013-02-13 18:12:53 -05:00
Tom MacWright
b8c79b8b48 Fix map.extent 2013-02-13 18:12:38 -05:00
Tom MacWright
eb2a133ac6 Hate multiline bracketless ifs 2013-02-13 17:57:58 -05:00
Ansis Brammanis
e60c9ab16b Fix zoom limitation while drawing 2013-02-13 17:31:23 -05:00
John Firebaugh
3be61a65e6 Manual redraw debouncing
This avoids a duplicate full redraw at the end of a drag pan. The
redraw triggered by mouseup.zoom now cancels the pending debounced
redraw.

Also, bump the debounce interval to 300ms, which helps avoid full
redraws during scroll zoom, making it more responsive.
2013-02-13 14:27:01 -08:00
Tom MacWright
8538339b44 Fix zooming to validated features. Fixes #748 2013-02-13 17:21:21 -05:00
John Firebaugh
a53e604b5b Avoid unnecessary style recalculation 2013-02-13 11:57:32 -08:00
John Firebaugh
65fbc808a1 Map#pan redraws 2013-02-13 10:39:48 -08:00
Ansis Brammanis
529b570c89 Merge remote-tracking branch 'systemed/master' into tree-intersects 2013-02-13 13:31:11 -05:00
Ansis Brammanis
2f15b0ffca Use tree intersects instead of graph.intersects 2013-02-12 17:38:15 -05:00
Tom MacWright
61d7ec45b5 Banish function ( style 2013-02-12 16:35:47 -05:00
Ansis Brammanis
7554c7445d Fix typo triggering too many redraws 2013-02-12 15:34:26 -05:00
Tom MacWright
a773aaaab4 Improve perf with some benchmarking.
Re translate change see http://jsperf.com/coerce-vs-join-array
2013-02-07 22:55:44 -05:00
Ansis Brammanis
ec065dca4c Fix flashing, reset transform on mouseup 2013-02-07 17:18:44 -05:00
Ansis Brammanis
ec152716fb Fix calls to ui.flash 2013-02-07 01:16:51 -05:00
John Firebaugh
5eb0644242 Improve multipolygon rendering
Multipolygon relations report their geometry as 'area' and are rendered
as such. However, they do not render a stroke. The stroke rendering
will come from the individual lines, which are given the tag
classes of their parent relations, allowing them to have a stroke
style matching the style of simple areas with the same tags.

Untagged circular ways are no longer considered areas. This prevents
an untagged inner way of a multipolygon from rendering as an area and
is consistent with how P2 and JOSM treat them.

In the CSS, it's no longer necessary to deal with multipolygons
explicitly in selectors. But keep in mind that area boundaries can
now be rendered either as lines or as area strokes. In most cases
the selector should be `path.stroke.tag-_____`, i.e. an explicit
`.area` or `.line` classes should not be included.

Finally, the parent ways of selected multipolygons are given the 'selected'
class.
2013-02-05 15:20:11 -08:00
Tom MacWright
4ee620cb09 Namespace selectors to iD-owned elements 2013-02-04 12:23:46 -05:00
John Firebaugh
ec602a7db7 Hook up connection and history in context 2013-02-02 19:47:56 -05:00
John Firebaugh
fc00f154a9 Dispatch a change event on merge 2013-02-02 19:47:56 -05:00
John Firebaugh
ddc5e324f6 Extract iD.Difference
iD.Difference represents the difference between two graphs.
It knows how to calculate the set of entities that were
created, modified, or deleted, and also contains the logic
for recursively extending a difference to the complete set
of entities that will require a redraw, taking into account
child and parent relationships.

Additionally, all history mutators now return a difference.
2013-02-02 19:47:56 -05:00
John Firebaugh
619216b33b Remove double dispatch 2013-02-01 13:13:32 -05:00
John Firebaugh
fe49e8fb77 Pass around context rather than map 2013-02-01 12:40:16 -05:00
Ansis Brammanis
559f3c9037 Remove unecessary line 2013-02-01 11:00:55 -05:00
John Firebaugh
9494d8d468 Remove unused 2013-02-01 10:47:40 -05:00
John Firebaugh
2655810efe Remove unused parameter 2013-01-31 12:06:21 -05:00
Ansis Brammanis
f0414f7ca1 Fix call to flash 2013-01-31 11:17:32 -05:00
Ansis Brammanis
5c1d3cc18e Preserve label tree between partial redraws 2013-01-31 10:34:57 -05:00
Ansis Brammanis
35cefceba6 Fix partial redraws 2013-01-30 17:43:14 -05:00
Ansis Brammanis
b73d18cbf5 Merge remote-tracking branch 'systemed/master' into graph-perf2 2013-01-30 16:58:44 -05:00
John Firebaugh
e4c513ae87 midpoint = true -> type = 'midpoint'
Makes it more consistent with entities.
2013-01-30 16:24:33 -05:00
Ansis Brammanis
2fa48df9a1 Small parentWays, parentRelations perf improvements 2013-01-30 16:09:15 -05:00
Ansis Brammanis
1b5a1b8268 Merge takes an entities object, not graph 2013-01-30 14:20:39 -05:00
Tom MacWright
699041019f Pan map when dragging to pad. Fixes #534 2013-01-29 17:02:56 -05:00
Ansis Brammanis
6c1e4e5b4d Working more-efficient parentWays 2013-01-29 13:32:39 -05:00
Ansis Brammanis
7d32af5264 work towards using prototypes for entities 2013-01-29 12:49:00 -05:00
John Firebaugh
3c99d36a76 Fix differenced redraw artifacts during pan/zoom
Fixes #543.
2013-01-28 16:55:30 -05:00