Connoropolous / Metamaps-Planning

1 stars 1 forks source link

Drawing shapes (e.g. polygons) on a map, and attaching metadata to nodes that are inside these shapes #38

Open Bortseb opened 11 years ago

Bortseb commented 11 years ago

It would be awesome to enable a user to draw a polygon on the screen, fill it with a colour of their choice, and then label and preserve that fenced region on the map for whatever purpose they have created it for. I am assuming JIT can let us do this, we just need to create a polygon entity to be able to redraw it on map-load? (and entities for other kinds of shapes too)

It would also be sweet to enable the user to create regular polygons, using a tool from a "drawing toolbox", that lets them choose the number of edges and then click and drag from its centre to define its relative size.This could be used to allow the user to evenly distribute topics in a circle by placing them over the vertices of the polygon. (it would be really cool if they snapped into place :P)

Another application would be to divide a map into meaningful 'panes', so that topics can be sorted, or categorized, and then kneaded further.

The thing that most excites me about this is that there are cool geometric algorithms that can test whether a point, i.e. a node, is inside or outside a polygon. We could then use this test to choose what metadata to add to a topic so long as they are on this map and in that region.

more info on the algorithm: http://en.wikipedia.org/wiki/Point_in_polygon

What sparked this idea? I eventually want to have nodes be located on a map relative to the other nodes based on their metadata, which when numeric could locate nodes a 2D or 3D coordinate space....

For example, on a task-keeping map, one dimension could be urgency.

Urgency = Estimated time to complete task (minutes) / Time until deadline (minutes)

The higher this number is, the more urgent it is.

If the urgency metadata defines a node's location on the virtual x-axis, then this node will move across the x-axis as time passes, assuming we can create dynamic metadata that updates like this... Anyhow, we could then place shape entities on the map to detect when nodes enter and exit their borders, imbuing the nodes with additional urgency-based metadata/metrics.

So much more can be done with this too, anyhow... shapes would be cool.

Come chat with me about how we might do this.... if we want to make this a priority , of course.... otherwise, this is logged here for later.