@don: is what I have mentioned above almost the same as the method u r saying?
On Fri, Jul 29, 2011 at 9:16 PM, Don <[email protected]> wrote: > You just need some comparison which determines if they are very close > to equal. You can't expect them to be exactly equal in all 64 bits. > Something like this should be fine: > > bool isClose(double a, double b) > { > const double epsilon = 1.0000001; > return (a < b*epsilon) && (b < a*epsilon); > } > > (Note that this assumes positive values.) > > Don > > On Jul 29, 1:21 pm, prashant bhutani <[email protected]> > wrote: > > Yeah, the comparison of two floats will be a problem as the behaviour is > > undefined and depends on the machine architecture and compiler. > > > > Thanks & Regards, > > Prashant Bhutani > > Senior Undergraduate > > Computer Science & Engineering (B.Tech) > > Institute of Technology - BHU (IT-BHU) > > Varanasi-221005 > > > > On Fri, Jul 29, 2011 at 11:43 PM, tech rascal <[email protected] > >wrote: > > > > > area of 3 triangles being formed by joining the point to 3 vertices can > be > > > float n when we add the 3 areas, the sum wud also be float. and this is > to b > > > compared with original area > > > don't u think the problem wud arise in comparing the floats? > > > wud that give right ans?? > > > > > On Fri, Jul 29, 2011 at 9:06 PM, Don <[email protected]> wrote: > > > > >> That should work, but I'd bet that my method is faster. > > >> Don > > > > >> On Jul 29, 6:02 am, Udit Gupta <[email protected]> wrote: > > >> > Join the given point with all the vertices of the triangle and > calculate > > >> the > > >> > area of each of the three sub-triangles thus formed > > >> > now compare the area of original triangle with the sum of the area > of > > >> those > > >> > 3 triangles > > >> > if that comes out to be equal, then the point lies inside > > >> > otherwise not. > > > > >> > On Fri, Jul 29, 2011 at 1:34 AM, Don <[email protected]> wrote: > > >> > > // True if point (x,y) is above line defined by two points > > >> > > // If line is vertical, "above" is defined as to the right > > >> > > bool above(double lx1, double ly1, double lx2, double ly2, double > x, > > >> > > double y) > > >> > > { > > >> > > return (lx1 != lx2) ? (y > (ly1+(x-lx1)*(ly2-ly1)/(lx2-lx1))) : > (x > > >> > > > lx1); > > >> > > } > > > > >> > > // True if point 1 and point 2 are on the same side of the line > > >> > > defined by l1 and l2 > > >> > > bool sameSide(double lx1, double ly1, double lx2, double ly2, > double > > >> > > px1, double py1, double px2, double py2) > > >> > > { > > >> > > return above(lx1, ly1, lx2, ly2, px1, py1) == above(lx1, ly1, > lx2, > > >> > > ly2, px2, py2); > > >> > > } > > > > >> > > // True if point (x,y) is inside triangle > > >> > > bool pointInTriangle(double x1, double y1, double x2, double y2, > > >> > > double x3, double y3, double x, double y) > > >> > > { > > >> > > return sameSide(x1,y1,x2,y2,x,y,x3,y3) && > > >> > > sameSide(x1,y1,x3,y3,x,y,x2,y2) && > > >> > > sameSide(x2,y2,x3,y3,x,y,x1,y1); > > >> > > } > > > > >> > > -- > > >> > > You received this message because you are subscribed to the Google > > >> Groups > > >> > > "Algorithm Geeks" group. > > >> > > To post to this group, send email to [email protected]. > > >> > > To unsubscribe from this group, send email to > > >> > > [email protected]. > > >> > > For more options, visit this group at > > >> > >http://groups.google.com/group/algogeeks?hl=en. > > > > >> -- > > >> You received this message because you are subscribed to the Google > Groups > > >> "Algorithm Geeks" group. > > >> To post to this group, send email to [email protected]. > > >> To unsubscribe from this group, send email to > > >> [email protected]. > > >> For more options, visit this group at > > >>http://groups.google.com/group/algogeeks?hl=en. > > > > > -- > > > You received this message because you are subscribed to the Google > Groups > > > "Algorithm Geeks" group. > > > To post to this group, send email to [email protected]. > > > To unsubscribe from this group, send email to > > > [email protected]. > > > For more options, visit this group at > > >http://groups.google.com/group/algogeeks?hl=en. > > > > > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > > -- Arun Vish Graduate Student Department of Computer Science University of Southern California -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
