i have 2 three-dimensional object.(they haven't got any curve)I know all points (x,y,z)coordinates and all edges. How i can know they are collisioning.
# | User | Rating |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
# | User | Contrib. |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 155 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
i have 2 three-dimensional object.(they haven't got any curve)I know all points (x,y,z)coordinates and all edges. How i can know they are collisioning.
Name |
---|
I think here is no simple solution for any kind of 3D-objects. There could be very complicated cases (imagine two chained toroids — each one is somewhat inside other though they do not collide).
You may try to loop through all edges of one object and test whether any of them intersects with any of the planes of the second object — this problem is bit tricky too if any of the planes have holes inside.
Thank you for help . But i said our object haven`t got any curve .It consist only straight segments . Please think again
Please think yourself.
Object consisting of only straight edges could anyway be concave or with holes. Look at pictures of transformer cores, for example: http://www.tpub.com/neets/book2/5b.htm
And by the way even two completely convex objects (two cubes for example) could intersect in such a way that no vertex is placed inside the opposite object, so that my proposed solution is reasonable enough.
Look at these tetrahedron intersection.
thank you
how can i know a a segment intersecting a plane . (in computer )
Start with checking intersection of segment and triangle in 3D space. It is a simple problem.
Then, for example, you can use any kind of triangulation to dissect planar polygon into triangles and check intersection of a segment with each of them.