Package nbody
Class Body
java.lang.Object
public class Body extends MacroObject
Classe représentant un corps dans la simulation.
-
Field Summary
Fields Modifier and Type Field Description private javafx.scene.paint.ColorcolorCorrespond à la couleur à afficher pour l'objet.private javafx.scene.shape.SpheresphereCorrespond à l'objet visuelle représenté sur la fenêtre.Fields inherited from class math_physics.physics.GenericObject
acceleration, force, mass, numberGenericObject, ObjectID, position, radius, velocity -
Constructor Summary
Constructors Constructor Description Body(double mass, double radius, Vector3D position, Vector3D velocity, javafx.scene.paint.Color color)Constructeur d'un corps.Body(java.lang.String name, double mass, double radius, Vector3D position, Vector3D velocity, javafx.scene.paint.Color color)Constructeur d'un corps.Body(java.lang.String name, MacroObject root, double mass, double radius, Vector3D position, Vector3D velocity, javafx.scene.paint.Color color)Constructeur d'un corps. -
Method Summary
Modifier and Type Method Description java.lang.StringgetAllData()Permet de récupérer tous les attributs importants du corps dans une chaîne de caractères.javafx.scene.paint.ColorgetColor()Permet de récupérer la couleur de la sphère.javafx.scene.shape.SpheregetSphere()Permet de récupérer la sphère 3D.doublegetXPosition()Permet de récupérer la position de l'objet sur l'axe des abscisses.doublegetXVelocity()Permet de récupérer la vélocité de l'objet sur l'axe des abscisses.doublegetYPosition()Permet de récupérer la position de l'objet sur l'axe des ordonnées.doublegetYVelocity()Permet de récupérer la vélocité de l'objet sur l'axe des ordonnées.doublegetZPosition()Permet de récupérer la position de l'objet sur l'axe de la profondeur.doublegetZVelocity()Permet de récupérer la vélocité de l'objet sur l'axe de la profondeur.private voidmove()Permet de mettre à jour la position et le rayon de la sphère.voidsetColor(javafx.scene.paint.Color newColor)Permet de changer la couleur de la sphère.voidsetXPosition(double newValue)Permet de remplacer la position de l'objet sur l'axe des abscisses.voidsetXVelocity(double newValue)Permet de remplacer la vélocité de l'objet sur l'axe des abscisses.voidsetYPosition(double newValue)Permet de remplacer la position de l'objet sur l'axe des ordonnées.voidsetYVelocity(double newValue)Permet de remplacer la vélocité de l'objet sur l'axe des ordonnées.voidsetZPosition(double newValue)Permet de remplacer la position de l'objet sur l'axe de la profondeur.voidsetZVelocity(double newValue)Permet de remplacer la vélocité de l'objet sur l'axe de la profondeur.voidsimulate(double deltaTime)Permet de faire simuler l'objet (simulation de Barnes-Hut).voidsimulate(java.util.List<GenericObject> allObjects, double deltaTime)Permet de faire simuler l'objet (simulation basique newtonnienne).java.lang.StringtoString()Methods inherited from class math_physics.physics.MacroObject
getObjectName, getRootObject, setObjectNameMethods inherited from class math_physics.physics.GenericObject
addForce, addForce, computeNewAccelerations, computeNewPositions, computeNewVelocities, getAcceleration, getForce, getMass, getObjectID, getPosition, getRadius, getVelocity, resetForce, setAcceleration, setForce, setMass, setPosition, setRadius, setVelocity
-
Field Details
-
Constructor Details
-
Body
public Body(double mass, double radius, Vector3D position, Vector3D velocity, javafx.scene.paint.Color color)Constructeur d'un corps.- Parameters:
mass- Masse totale de l'objetradius- Rayon de l'objetposition- Coordonnées de la position de l'objetvelocity- Vitesse initiale de déplacement de l'objetcolor- Couleur à utiliser pour afficher la sphère
-
Body
public Body(java.lang.String name, double mass, double radius, Vector3D position, Vector3D velocity, javafx.scene.paint.Color color)Constructeur d'un corps.- Parameters:
name- Nom de l'objetmass- Masse totale de l'objetradius- Rayon de l'objetposition- Coordonnées de la position de l'objetvelocity- Vitesse initiale de déplacement de l'objetcolor- Couleur à utiliser pour afficher la sphère
-
Body
public Body(java.lang.String name, MacroObject root, double mass, double radius, Vector3D position, Vector3D velocity, javafx.scene.paint.Color color)Constructeur d'un corps.- Parameters:
name- Nom de l'objetroot- Instance de l'objet auquel il est rattachémass- Masse totale de l'objetradius- Rayon de l'objetposition- Coordonnées de la position de l'objetvelocity- Vitesse initiale de déplacement de l'objetcolor- Couleur à utiliser pour afficher la sphère
-
-
Method Details
-
toString
public java.lang.String toString()- Overrides:
toStringin classMacroObject
-
getColor
public javafx.scene.paint.Color getColor()Permet de récupérer la couleur de la sphère.- Returns:
- Couleur
-
setColor
public void setColor(javafx.scene.paint.Color newColor)Permet de changer la couleur de la sphère.- Parameters:
newColor- Nouvelle couleur
-
getSphere
public javafx.scene.shape.Sphere getSphere()Permet de récupérer la sphère 3D.- Returns:
- Sphère 3D
-
getXPosition
public double getXPosition()Permet de récupérer la position de l'objet sur l'axe des abscisses.- Returns:
- Position sur l'axe des X
-
getYPosition
public double getYPosition()Permet de récupérer la position de l'objet sur l'axe des ordonnées.- Returns:
- Position sur l'axe des Y
-
getZPosition
public double getZPosition()Permet de récupérer la position de l'objet sur l'axe de la profondeur.- Returns:
- Position sur l'axe des Z
-
setXPosition
public void setXPosition(double newValue)Permet de remplacer la position de l'objet sur l'axe des abscisses.- Parameters:
newValue- Nouvelle valeur
-
setYPosition
public void setYPosition(double newValue)Permet de remplacer la position de l'objet sur l'axe des ordonnées.- Parameters:
newValue- Nouvelle valeur
-
setZPosition
public void setZPosition(double newValue)Permet de remplacer la position de l'objet sur l'axe de la profondeur.- Parameters:
newValue- Nouvelle valeur
-
getXVelocity
public double getXVelocity()Permet de récupérer la vélocité de l'objet sur l'axe des abscisses.- Returns:
- Vélocité sur l'axe des X
-
getYVelocity
public double getYVelocity()Permet de récupérer la vélocité de l'objet sur l'axe des ordonnées.- Returns:
- Vélocité sur l'axe des Y
-
getZVelocity
public double getZVelocity()Permet de récupérer la vélocité de l'objet sur l'axe de la profondeur.- Returns:
- Vélocité sur l'axe des Z
-
setXVelocity
public void setXVelocity(double newValue)Permet de remplacer la vélocité de l'objet sur l'axe des abscisses.- Parameters:
newValue- Nouvelle valeur
-
setYVelocity
public void setYVelocity(double newValue)Permet de remplacer la vélocité de l'objet sur l'axe des ordonnées.- Parameters:
newValue- Nouvelle valeur
-
setZVelocity
public void setZVelocity(double newValue)Permet de remplacer la vélocité de l'objet sur l'axe de la profondeur.- Parameters:
newValue- Nouvelle valeur
-
getAllData
public java.lang.String getAllData()Permet de récupérer tous les attributs importants du corps dans une chaîne de caractères. Organisé comme ceci :- nom ;
- masse ;
- rayon ;
- position ;
- vélocité ;
- couleur.
- Returns:
- Chaîne de caractère résumant les attributs du corps
-
move
private void move()Permet de mettre à jour la position et le rayon de la sphère. -
simulate
Permet de faire simuler l'objet (simulation basique newtonnienne).- Overrides:
simulatein classGenericObject- Parameters:
allObjects- Liste contenant tous les objetsdeltaTime- Durée d'avancement dans le temps
-
simulate
public void simulate(double deltaTime)Permet de faire simuler l'objet (simulation de Barnes-Hut).- Overrides:
simulatein classGenericObject- Parameters:
deltaTime- Durée d'avancement dans le temps
-