2016-08-04 4 views
1

평면 피팅 예제는 사용자가 선택한 점을 기준으로 검색하는 점군에서 만든 평면에 큐브를 맞 춥니 다. 그 점이 바닥인지, 벽인지, 지붕인지 확인하고 싶습니다. 내가 달성하고자하는 것은 그것이 단지 벽이나 지붕이 아닌 바닥에 큐브를 렌더링하도록 예제를 변경하는 것입니다.Project Tango : 평면 피팅 예제에서 만든 평면이 Java SDK의 바닥 또는 벽인지 확인하는 방법은 무엇입니까?

답변

0

가장 간단한 해결 방법은 평면 법선을 확인하는 것입니다. 일반적으로 벽의 법선은 중력에 수직이고 바닥은 중력과 평행합니다. 이 같은

+0

예, 그렇지만 3 차원 공간에서 두 벡터 사이의 곱하기를 계산하는 방법은 무엇입니까? –

0

뭔가 :

당신은 비행기의 정상적인 잘 맞았?

 float surfaceAngle = Vector3.Angle(normal, new Vector3(0,1,0)); 

    float floorLimitAngle = 20; 
    float ceilingLimitAngle = 180 - 20; 

    if (surfaceAngle < floorLimitAngle) 
     // It's a floor 
    else if (surfaceAngle > ceilingLimitAngle) 
     // It's a ceiling 
    else 
     // It's a wall