Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re^5: Better maps with Math::Geometry::Voronoi, and a Challenge for Math Monks (locally convex)

by BrowserUk (Patriarch)
on Jul 02, 2008 at 04:14 UTC ( [id://695076]=note: print w/replies, xml ) Need Help??


in reply to Re^4: Better maps with Math::Geometry::Voronoi, and a Challenge for Math Monks (locally convex)
in thread Better maps with Math::Geometry::Voronoi, and a Challenge for Math Monks

Yes. That sounds very similar to the conceptual algorithm we used. We started with the lowest point (GDDM uses "ass-back'ds coordinates" with (0,0) being bottom left) and then move around the thing in one direction until you get back to where you started from.

There are various optimisations that can be applied. For example, when you look for the second point, you can start sweeping (in either direction) from the horizontal in that direction because you know that there is no point lower. You can also apply the same optimisation to each of the left-most, right-most and top-most points, which allows you to start in four places and progress them all (moving in the same direction) until they connect up with one of the other three. You can also set out in both directions from each of the ordinal points and progress 8 moves concurrently, theough the terminating conditions are more complex.

Because you're starting (say) lowest and moving right (anticlockwise) you can constrain the points you look at, and also look at them in a defined order of probability--though I don't remember the details of the sorting criteria.

There was also this thing about using vector math which I recall not properly understanding the principles of even though I coded it and made it work. Needless to say, whatever understanding I did have has long since vacated my head.

The hardest part as I remember was preventing picking up spurious outlying points. The low-pass filter removed a lot of them but still occasional hotspots made it through. The mechanism for excluding those was a statistical thing that eliminated points that weren't part of a localised cluster. Darn it I wish I could remember more.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
  • Comment on Re^5: Better maps with Math::Geometry::Voronoi, and a Challenge for Math Monks (locally convex)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://695076]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2024-04-23 14:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found