csharp_pain/Solar system/sss3d-source/sss3d/contentbranch/SceneCelestialObjects.java

93 lines
2.4 KiB
Java
Raw Normal View History

2014-06-26 15:13:46 +00:00
/*
File: SceneCelestialObjects.java
University of Applied Science Berne,HTA-Biel/Bienne,
Computer Science Department.
Diploma thesis J3D Solar System Simulator
Originally written by Marcel Portner & Bernhard Hari (c) 2000
CVS - Information :
$Header: /var/cvsreps/projects/c450/2000/sss3d/source_diploma/sss3d/contentbranch/SceneCelestialObjects.java,v 1.10 2000/12/13 13:37:07 portm Exp $
$Author: portm $
$Date: 2000/12/13 13:37:07 $
$State: Exp $
*/
package sss3d.contentbranch;
import javax.media.j3d.*;
import java.awt.Color;
/**
* This is the interface for all celestial objects scene graphs.
*
* @author Marcel Portner & Bernhard Hari
* @version $Revision: 1.10 $
* @see sss3d.contentbranch.sun.SceneSun
* @see sss3d.contentbranch.planets.ScenePlanet
* @see sss3d.contentbranch.moons.SceneMoon
* @see sss3d.contentbranch.comets.SceneComet
*/
public interface SceneCelestialObjects {
/**
* Should be called to remove this scene from the scenegraph.
*/
public void destroy();
/**
* Returns the BranchGroup of the created celestial object scene.
*
* @return a BranchGroup of the given celestial object.
*/
public BranchGroup createSceneGraph();
/**
* This method handle the animation and rotation of the celestial objects.
*
* @param animate if true, start animation; if false stop animation.
* @param rotate if true, start rotation; if false stop rotation.
*/
public void setAnimation(boolean animate, boolean rotate);
/**
* Set the animation speed for the celestial objects.
*/
public void setAnimSpeed();
/**
* Add the coordinate system to this scenegraph.
*/
public void addCoord();
/**
* Remove the coordinate system from this scenegraph.
*/
public void removeCoord();
/**
* Add the color orbit to this scenegraph.
*/
public void addOrbit();
/**
* Remove the color orbit from this scenegraph.
*/
public void removeOrbit();
/**
* Set a new orbit color.
*
* @param orbitColor a color for the orbit.
*/
public void setOrbitColor(Color orbitColor);
/**
* Get the current position of the celestial object.
*
* @return a Transfrom3D with the current position.
*/
public Transform3D getCurrentPosition();
}