MERRY CHRISTMAS AND HAPPY NEW YEAR!
I know this question maybe does not belong to OpenGL.It has even been researched at many papers I read. But I still didn't solve it better and wish someone can help me in this year.
When a surface cut another one, due to the precision of Floating-point arithmetic the contour tracing often fails. For example, two intersection points,p0(24.234,23.4565,-34.034) and p1(24.234,23.4565,-34.034), can be said that they did not equal in OpenGL. After I trim the precision, they can be accepted as equal points, but other questions maybe occur with the adjusted precision, for two points can be accepted as equal,while they are not equal in fact.
Another question is some errors happen between float and double. For example, When I use glClipPlane(GL_CLIP_PLANE0,eqn) to cut an object, float can be defined in the object, while double can be described at eqn in OpenGL. But I can't convert float to double in the object due to some reason.
How do I do?