한번만 더 도와주실 수 있을까요

kimyeon0331 Reply 8 years 51 weeks ago
(제 생각으로는) 점 포함과 삼각형 포함까지는 잘 판단하고 있다고 생각됩니다만, 오버랩 판별하는 부분도 반례를 찾을수가 없어서요.. 두 삼각형의 변이 평행한 경우나, x축 y축과 평행할 때도 잘 나오는 거 같은데, 반례는 어디서 나오는지 마지막으로 한번만 더 가르쳐 주실 수 있을까요ㅠㅠ 혹시 이 방법으로는 아무리 노력해도 어셉트를 받을 수 없다면 갈아엎으라고 말해주세요.......
pichulia Reply 8 years 51 weeks ago
0 0 3 0 0 3 1 2 2 1 2 2 이 두 삼각형의 overlap을 검출하지 못하고 있습니다. 그렇다고 < 를 <= 로 바꾸기만 해버리면 1 0 2 1 0 1 3 2 -100 1 0 2 이 두 삼각형이 overlaps라고 뜰테고... 뭔가 쫌만 더 하면 될거같은데..으..
pichulia Reply 8 years 51 weeks ago
선분 1과 선분 2의 교점 여부를 판단하는 방법은 여러가지가 있는데... 지금처럼 선분 1에 대한 선분 2 점들의 CCW 값이 음수인 경우 뿐만 아니라 선분 2에 대한 선분 1 점들의 CCW 값도 체크하는 방식이 일반적입니다. (예를 들면 (0,0)~(1,0) 과 (2,1)~(2,-1) 이 두 선분은 만나지 않지만 선분 1에 대한 선분 2의 CCW 값이 음수가 나옵니다.) 둘 중 하나만 0이 나오는 경우는, 나머지 CCW 값이 양수면 false, 음수면 true(교점이 있음) 이라고 말하면 됩니다. 가장 엿같은 경우는 두 값이 모두 0이 될 때인데.. (0,0)~(1,0), (2,0)~(3,0) (0,0)~(2,0), (1,0)~(3,0) 이 두 경우에 대해, 전자는 교점이 없고, 후자는 교점이 있습니다. 저때만 따로 예외처리를 해서 으쌰으쌰 하면 될겁니다.