From: jbw Date: 2010-03-14T03:33:36+09:00 Subject: Re: Newbie Help : Object --00032555f312a94df60481b2e208 Content-Type: text/plain; charset=UTF-8 I imagine an event library like ruby-event would suit this, but it might not :p On Sat, Mar 13, 2010 at 5:26 PM, Gary Wright wrote: > > On Mar 13, 2010, at 8:15 AM, Jerome David Sallinger wrote: > > This question may be more to do with my understanding of OOP that the > > actual contructs of Ruby so please be patient with me. > > Actually I think your question isn't really about OOP or Ruby at > all but instead is just an algorithm question related to > computer graphics or even a more general question about > combinations of things. > > To bring this back to Ruby. If you have a collection of > objects and you want to consider all possible combinations > of two objects: > > irb> collection = [1,2,3,4] > => [1, 2, 3, 4] > irb> collection.combination(2).to_a > => [[1, 2], [1, 3], [1, 4], [2, 3], [2, 4], [3, 4]] > irb> collection.combination(2).select { |a,b| (a-b).abs == 1 } > => [[1, 2], [2, 3], [3, 4]] > > I just showed selecting pairs based on a simple mathematical > criteria but the collection could have been your balls, and > the selection could have utilized your #intersect? method. > > Note, you have to be using Ruby 1.8.7 or 1.9.X to have > the combination method. > > Gary > > -- jbw --00032555f312a94df60481b2e208--