나는 아래의 간단한 코드 실행하고 회전 :Libgdx -의 최소 및 최대 경계 상자
BoundingBox bounds = new BoundingBox();
Vector3 vmin = new Vector3();
Vector3 vmax = new Vector3();
vmin.x = -1;
vmin.y = -2;
vmin.z = 0;
vmax.x = 1;
vmax.y = 2;
vmax.z = 0;
bounds.set(vmin,vmax);
Matrix4 mrot = new Matrix4();
mrot.setToRotation(0, 0, 1, 90);
bounds.mul(mrot);
Gdx.app.log("xxx","minx " + bounds.min.x);
Gdx.app.log("xxx","maxx " + bounds.max.x);
Gdx.app.log("xxx","miny " + bounds.min.y);
Gdx.app.log("xxx","maxy " + bounds.max.y);
Gdx.app.log("xxx","dimx " + bounds.getWidth());
Gdx.app.log("xxx","dimy " + bounds.getHeight());
로그 보여줍니다 : 예상대로,
할망구 -2.0 // 확인을
MAXX 2.0 // 좋아, 예상대로
miny -2.0 // -1을 기대합니다!
maxy 2.0 // 1을 기대합니다!
dimx 4.0 // 예상대로
dimy 4.0 // 나는 2를 기대합니다!
위의 코드는 단순히 Z 축을 중심으로 90 도의 2D 직사각형을 회전해야한다는 것을 알고 있습니다. 로그의 결과는 그렇지 않습니다 (즉, y 좌표가 변경되지 않음).
어디에서 오인을 이해할 수 있습니까? 많은 감사
많은 분들께 감사드립니다. 아직이 문제를 해결하지 못한 것 같은 Gradle 설정 앱을 사용하고 있습니다. – Francois