/src/org/mt4j/util/camera/Icamera.java
http://mt4j.googlecode.com/ · Java · 92 lines · 13 code · 12 blank · 67 comment · 0 complexity · bea97b790fe4a4187759ad91aa75f591 MD5 · raw file
- /***********************************************************************
- * mt4j Copyright (c) 2008 - 2009 C.Ruff, Fraunhofer-Gesellschaft All rights reserved.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- ***********************************************************************/
- package org.mt4j.util.camera;
-
- import org.mt4j.util.math.Vector3D;
-
- /**
- * The Interface Icamera.
- * @author Christopher Ruff
- */
- public interface Icamera {
- //TODO add more methods?
-
- /**
- * Update.
- */
- public void update();
-
- /**
- * Gets the position.
- *
- * @return the position
- */
- public Vector3D getPosition();
-
- /**
- * Sets the position.
- *
- * @param camPos the new position
- */
- public void setPosition(Vector3D camPos);
-
- /**
- * Gets the point, the camera looks at.
- *
- * @return the view center pos
- */
- public Vector3D getViewCenterPos();
-
- /**
- * Sets the point, the camera should look at.
- *
- * @param viewCenter the new view center pos
- */
- public void setViewCenterPos(Vector3D viewCenter);
-
- /**
- * Move cam and view center.
- *
- * @param directionX the direction x
- * @param directionY the direction y
- * @param directionZ the direction z
- */
- public void moveCamAndViewCenter(float directionX, float directionY, float directionZ);
-
- /**
- * Sets the zoom min distance.
- *
- * @param minDistanceToViewCenter the new zoom min distance
- */
- public void setZoomMinDistance(float minDistanceToViewCenter);
-
- /**
- * Zoom amount.
- *
- * @param zoomAmount the zoom amount
- */
- public void zoomAmount(float zoomAmount);
-
- /**
- * Gets the frustum.
- *
- * @return the frustum
- */
- public IFrustum getFrustum();
- }