[Newbies] Re: PolygonMorph intersection
nicolas cellier
ncellier at ifrance.com
Thu May 3 20:46:12 UTC 2007
Sounds good.
Depends how you define better. Faster code or shorter code?
Maybe also add an optimistic rule first to fast up the false case:
(polygonB bounds containsRect: polygonA bounds) ifFalse: [^false].
Of course, we can build degenerated examples which are hard to decide.
To handle these, you also have to write better code.
For example, beware of the case when a segment of A crosses a vertex of
B. If inexact arithmetic is used, you can miss an intersection.
Same apply for the second rule: case when a vertex of A lie on a segment
of B.
Take square A rotated by 45° and magnify by a factor (2 sqrt) to make
sqaure B. A will fit into B, with each vertex of A lying on a segment of B.
We can build more tricky cases where some edge of A and B are
super-imposed, in part or whole...
Nicolas
S Hangal a écrit :
>
> Thanks, Jerome - have filed the issue in Mantis.
>
> I'm looking for the easiest way to figure out if polygon A is contained
> inside polygon B.
>
> One way to do this is by checking if polygon A intersects any segments of B
> and any one of A's vertices lies inside B.
> is there a better way ?
>
> Thanks,
>
> -sgh
>
>
>
> Date: Wed, 2 May 2007 21:48:23 -0700 (PDT)
> From: Jerome Peace <peace_the_dreamer at yahoo.com
> <mailto:peace_the_dreamer at yahoo.com>>
> Subject: [Newbies] Re: PolygonMorph intersection
> To: " beginners at lists.squeakfoundation.org
> <mailto:beginners at lists.squeakfoundation.org>"
> <beginners at lists.squeakfoundation.org
> <mailto:beginners at lists.squeakfoundation.org>>
> Message-ID: < 437189.72874.qm at web50310.mail.re2.yahoo.com
> <mailto:437189.72874.qm at web50310.mail.re2.yahoo.com>>
> Content-Type: text/plain; charset=iso-8859-1
>
> PolygonMorph intersection
>
>
> Hi Sudheendra Hangal,
>
> You have actually found a very good bug.
>
> In investigating I found that the method for Polygon
> did not exist in 3.8.
>
> The author of the version in 3.9 is
>
> nk 4/27/2003 16:15 PolygonMorph intersects: {geometry}
>
> nk is Ned Konz who created the connector package.
>
> In building the 3.9 release the release team added
> pieces of the the Connectors package.
> And while they did as best they could they missed a
> piece.
>
> The PolygonMorph>>intersects: methods calls super
> intersects: . None of the classes above PolygonMorph
> defines the intersects: method. Thus the error
> message.
>
> Simply finding the bug make you a winner in what I
> call the Game of Mantis.
>
> see:
> http://wiki.squeak.org/squeak/5915
> Game of Mantis
>
> The best place for this info would be to start a
> Mantis report.
> (You can get a mantis acct freely and easily).
>
> A good place to start is:
>
> http://bugs.squeak.org/my_view_page.php
>
> Mantis provides a patient persistent way to focus on
> an issue.
> I use it to accumulate data on a problem until a
> solution can be found.
> It provides a place to:
>
> * alert the community to a problem;
> * accumulate facts and clues from the analysis;
> * publish preposed solutions and get feedback;
> * get solutions harvested and included into the main
> stream.
>
> The above is from:
> http://wiki.squeak.org/squeak/5912
> Mantis FAQ and Tips
>
> Again thanks for your sharp eyes and easy to follow
> recipe for the bug.
>
> Yours in curiosity and service, --Jerome Peace
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
More information about the Beginners
mailing list