begin process at 2010 02 09 17:26:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

Rafraichissement graphique d'un robot en simulation


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Rafraichissement graphique d'un robot en simulation

mercredi 4 juin 2003 à 16:49:57 | Rafraichissement graphique d'un robot en simulation

SuperSteph

On est en train de faire un projet qui simule un robot dynamiquement.
On a reussi à faire evoluer le robot par contre on a une "trainéé". On aimerait voir le robot se deplacer sans visualiser ses positions precedentes.

On vous envoie un bout de code esperant que qq'un pourra nous aider.


Cette classe est la classe qui nous permet d'afficher le robot
package ihm;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Rectangle;

import javax.swing.JFrame;

import Graphics.Robot.RobotGraphic;
import Graphics.Robot.RobotModel;
import Graphics.swing.SwingRenderer;
import Graphics.swing.SwingRobotAttributes;
import Graphics.swing.SwingRobotRenderer;
import Robots.SimulatorEvent;
import Robots.SimulatorListener;

public class RobotView extends View implements SimulatorListener
{
RobotGraphic robotGraphic;

public RobotView(JFrame owner, RobotModel model)
{
super(owner, model);
setupGraphics((RobotModel) model);
}

public RobotView(RobotModel model)
{
super(model);
setupGraphics((RobotModel) model);
}

public RobotModel getRobotModel()
{
return ((RobotModel) getModel());
}

public void setModel(RobotModel model)
{
super.setModel(model);
setupGraphics((RobotModel) model);
}

protected void setupGraphics(RobotModel model)
{
SwingRobotAttributes attributes = new SwingRobotAttributes();
attributes.setColor(Color.green);
attributes.filled();

Rectangle drawArea = new Rectangle(this.getPreferredSize().width,this.getPreferredSize().height);
robotGraphic = new RobotGraphic(drawArea, getRobotModel());
robotGraphic.setSize(30);

SwingRobotRenderer renderer = new SwingRobotRenderer(attributes, robotGraphic);
robotGraphic.setRenderer(renderer);
}

public void paintComponent(Graphics graphics)
{
((SwingRenderer)robotGraphic.getRenderer()).getAttributes().setGraphics(graphics);
robotGraphic.draw();
System.out.println(robotGraphic.getModel());
}

public void update(SimulatorEvent evt)
{
this.paintImmediately(this.getBounds());
}
}


Cette classe est la classe principale
package VectorTest;

import ihm.RobotView;

import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JFrame;

import Graphics.Robot.DefaultRobotModel;
import Robots.RobotPoint;
import Robots.Simulator;
import Value.BoundedValue;

public class GraphicTest extends JFrame
{
private DefaultRobotModel robotModel;
private RobotView robotView;
private Simulator simulator ;

public GraphicTest(String title)
{
super(title);

addWindowListener(new java.awt.event.WindowAdapter()
{
public void windowClosing(java.awt.event.WindowEvent evt)
{
System.exit(0);
}
});


//setup robot model
BoundedValue x = new BoundedValue(50, 0, 500);
BoundedValue y = new BoundedValue(50, 0, 500);

robotModel = new DefaultRobotModel(x, y, 2);
RobotPoint robotPoint = new RobotPoint(x.getValue(), y.getValue(), 0);
robotModel.setRobot(robotPoint);


//setup robot view
robotView = new RobotView(robotModel);
robotView.setPreferredSize(new Dimension(500,500));
getContentPane().add(robotView, BorderLayout.NORTH);


//setup and start simulator
simulator = new Simulator(robotPoint);
simulator.addListener(robotView);
}

public void simule()
{
//simulator.simuleCartesian(1, 5, 2, 100, 100);
}


public static void main(String[] args)
{
GraphicTest g = new GraphicTest("robot");
g.show();
g.pack();
g.simule();
}
}


Merci d'avance

Stéph
mercredi 4 juin 2003 à 19:35:38 | Re : Rafraichissement graphique d'un robot en simulation

mrshardax

alors, je ne sais pas si cette methode est cree ou heritee, j ai pas pu trouver bcp de javadoc la ou je suis.

public void paintComponent(Graphics graphics)

Si elle est heritee, verifie la syntaxe ( le plus souvent, c Graphics g) de une, mais surtout, et c valable pour tout les methodes graphiques heritees, n oublie pas d appeler les methodes parentes en tout debut de fonction par un :

super.paintComponent(g) ;

par exemple.
vendredi 6 juin 2003 à 08:22:27 | Re : Rafraichissement graphique d'un robot en simulation

SuperSteph

On a fait ce que tu m'as dit, et c'est bon.
Merci pour ton aide
vendredi 6 juin 2003 à 13:37:40 | Re : Rafraichissement graphique d'un robot en simulation

mrshardax

C est un truc a jamais oublier en java quand on utilise l heritage et la surcharge de classe, sinon, c est sur, ca aprt en vrille.

Sur ce, content d avoir pu t aider et bonne continuation pour ton projet.
lundi 10 décembre 2007 à 22:07:15 | Re : Rafraichissement graphique d'un robot en simulation

kazary

je voudrais faire un programme en java pour deplacer un robot dans un labyrainthe , mais je suis debutant en java, veuillez m'aider ,

merci d'anvance.

kaza,


Cette discussion est classée dans : public, import, robot, robotmodel, robotgraphic


Répondre à ce message

Sujets en rapport avec ce message

problème compilation robocode [ par tigroudu13 ] Bonjour je dois créer un robot pour mon école et j'ai un problème de compilation avec ce dernier. je suis parti en premier dans la création d'un simpl jmf [ par Spunk62 ] Bonjour, j'ai récupéré un lecteur audio (utilisant la librairie jmf), je voudrais l'afficher dans un jPanel avec un split pane, le lecteur lit bien le JSP/JSTL/JAVA passage de parametres [ par anri ] Bonjour. JE récupère dans une JSP un UserName (via un formulaire) que je mets dans une variable. J'aimerai envoyer cette variable à une classe Java. J Validation d'une formulaire [ par dalidali86 ] Bonjour , j'ai besoin dans mon traivail d'un formulaire à remplir par les clients par internet . Normalement , on doit vérifier l'existence ou non du récupérer valeur dans une class [ par babaslow ] Bonjour, Une question de débutant. Comment fait-on pour récupérer depuis une autre class un paramètre passé dans l'init d'une applet ? package org recuperation des donnees pour une formulaire avec JSF [ par dalidali86 ] Bonjour, je suis en train de developper une application entreprise avec JEE. C'est choisi de travailler avec netbeans 6.7 . J'ai choisi encore le fram Messzage d'erruer JSF [ par dalidali86 ] Bonjour , j'utilise netbeans pour developper une application entreprise (JEE) contenant une partie web . J'utilise encore le framework JSF et la base Problème de MVC [ par shark59112 ] Bonjour, Voici mon soucis, j'ai essayé de créer un petit compteur avec le modèle MVC mais j'ai l'impression que quand je clique sur mon bouton, mon c java [ par nanouwa ] salut à tout le monde j'ai un code avec lequel je veux quand on met le flèche de souris sur une partie d'une image une information s'affiche ce qu'on java [ par hanano02 ] merci d'avance. je vous souhaite de vous m'aider pour corrige ce probleme c'est de faire associer les evenements aux bouton lancer et arrter un Thread


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales