Re: [Algorithms] Algorithm to return point to surface of concave volume
Brought to you by:
vexxed72
From: metanet s. <met...@ya...> - 2010-02-06 15:20:28
|
> Since the capsules are mathematically defined by a length > and a radius there are no surfaces so I suggest using > standard collision detection instead. There are standard > intersection tests that return a collision normal along with > a intersection distance. I'm guessing you can find it in > most open source physics libraries or just google it. This is tricky, because the actual collision surface (i.e the outer surface of the union of capsules) is implicit; you can't simply apply a capsule-based method and expect a correct result. For example: L1 S1 | | | | |_ac___S2 | *b |__|___L2 L1 and L2 are capsule linesegments; the capsule surfaces (S1,S2) intersect at c. If you query at the asterisk, you should get c as closest point on the surface. There's no way to arrive at this through simple point-vs-capsule queries -- point-vs-L1 will give you b, point-vs-L2 will give you a. You _can_ try to iteratively push the point out of each capsule and hope that it eventually reaches the surface; in the above case this would work, but in general it doesn't. AFAIK there is no correct way to take the many local solutions you would get from individual point-vs-capsule queries and "munge" them together to arrive at a correct global solution. If there *is* such a method, I'd love to know about it though since it would be extremely useful. Currently we just use "iteratively project out of local collisions, and pray" :) raigan --- On Thu, 2/4/10, pontus birgersson <her...@ho...> wrote: > From: pontus birgersson <her...@ho...> > Subject: Re: [Algorithms] Algorithm to return point to surface of concave volume > To: "GDAlgorithms" <gda...@li...> > Received: Thursday, February 4, 2010, 10:36 AM > > > > > > Andreas, > > Since the capsules are mathematically defined by a length > and a radius there are no surfaces so I suggest using > standard collision detection instead. There are standard > intersection tests that return a collision normal along with > a intersection distance. I'm guessing you can find it in > most open source physics libraries or just google it. > > If you need increased performance you can always attempt to > use proxy objects or perhaps switch primitive from capsule > to something easier. > > Hope that helps, > Pontus > > > Date: Wed, 3 Feb 2010 11:54:45 +0100 > From: and...@gm... > To: gda...@li... > Subject: [Algorithms] Algorithm to return point to surface > of concave volume > > Hi, > > I have a point inside a concave volume, does anyone know of > an algorithm to find the shortest vector from the point to > the surface of the volume? The volume in this case is > defined as the union of a number of overlapping capsules > (lines with radius). > > > Thanks > > Andreas Brinck > > Skaffa en Windows phone så kan du > chatta på Messenger var du än är! Skaffa en > Windows phone så kan du chatta på Messenger var du än > är! > > -----Inline Attachment Follows----- > > ------------------------------------------------------------------------------ > The Planet: dedicated and managed hosting, cloud storage, > colocation > Stay online with enterprise data centers and the best > network in the business > Choose flexible plans and management services without > long-term contracts > Personal 24x7 support from experience hosting pros just a > phone call away. > http://p.sf.net/sfu/theplanet-com > -----Inline Attachment Follows----- > > _______________________________________________ > GDAlgorithms-list mailing list > GDA...@li... > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > Archives: > http://sourceforge.net/mailarchive/forum.php?forum_name=gdalgorithms-list __________________________________________________________________ Ask a question on any topic and get answers from real people. Go to Yahoo! Answers and share what you know at http://ca.answers.yahoo.com |