RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 APPLET JAVA IMAGE PANORAMIQUE 360°

Forum : APPLET
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ APPLET

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM APPLET

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
jefhernet
Nouveau membre
Inscrit : 29/06/2007
Messages : 3
Message
#137225
Posté le 29/06/07 à 10:39
Bonjour, j'utilise plusieurs applets java servant à faire défiler, en boucle, des images panoramiques à 360° (taille approximative : 500 x 4000 px).

Ces applets sont commandés avec le mouvement ou le clic de la souris.

Parmi ces applets, il y en a une dont je souhaite dégraisser le code source afin que seul le défilement continu et définitif soit conservé.

Merci pour votre réponse.
Cordialement.
JFL

Voici le code source (excusez-moi, mais je ne sais pas comment mettre le texte en forme et en couleurs sur ce forum) :

import java.applet.Applet;
import java.awt.*;
import java.net.MalformedURLException;
import java.net.URL;

public class pano extends Applet
implements Runnable
{

public pano()
{
offset = 0;
}

public void paint(Graphics g)
{
g.drawImage(ImageSwap, 0, 0, null);
showStatus("Applet en cours d'exécution - www.photoscopic.fr ©"); // Ajout de MM, saffiche dans la barre d"étét, en bas du navigateur
}

public void update(Graphics g)
{
paint(g);
}

public void start()
{
thread = new Thread(this);
thread.start();
}

public void stop()
{
thread = null;
}

public void run()
{


long tm = System.currentTimeMillis();
panoImage = getImage(imageSource);
mt.addImage(panoImage, 0);


while (!mt.checkAll(true))
{
Swap.setColor(backColor);
Swap.fillRect(0, 0, w, appHeight);
Swap.setColor(frontColor);
Swap.drawString(waitMessage,30,30);
repaint();
}
panoW = panoImage.getWidth(null);
panoH = panoImage.getHeight(null);
long lt=System.currentTimeMillis()-tm;

tm = System.currentTimeMillis();
while (Thread.currentThread() == thread)
{
tm += 30L;
if (dOffset!=0)
{
idleTm=System.currentTimeMillis();

ww=w;
if (offset>(panoW-w)) ww=panoW-offset;



Swap.drawImage(panoImage, 0, 0, ww, panoH, offset, 0,ww+offset, panoH, null);
if(offset > (panoW - w)) Swap.drawImage(panoImage, panoW - offset, 0, w, panoH, 0, 0, w -(panoW - offset), panoH, null);

Swap.setColor(runningFrontColor);
Swap.drawString(runningMessage,30,30);

offset += dOffset;
if(offset > panoW)
offset -= panoW;
if(offset < 0)
offset += panoW;
}
else
{
if (System.currentTimeMillis()-idleTm>idleRestart) dOffset=initialSpeed;
}
repaint();

try
{
Thread.sleep(Math.max(0, tm -System.currentTimeMillis()));
}
catch(InterruptedException interruptedexception) { }
}
}

public void init()
{
Dimension dimension = getSize();
w = dimension.width;
appHeight = dimension.height;
ImageSwap = createImage(w, appHeight);
Swap = ImageSwap.getGraphics();
mt = new MediaTracker(this);

dOffset=initialSpeed;

frontColor=new Color(Integer.parseInt("FFFFFF",16)); // Couleur du message de chargement
backColor=new Color(Integer.parseInt("000000",16)); // Couleur du fond

runningFrontColor=new Color(Integer.parseInt("FF0000",16)); // Couleur du message en fonctionnement

if(getParameter("imageSource") != null)
{
try
{
imageSource = new URL(getCodeBase(), getParameter("imageSource"));
}
catch(MalformedURLException malformedurlexception) { }

addMouseMotionListener(
new java.awt.event.MouseMotionAdapter()
{
public void mouseMoved(java.awt.event.MouseEvent event)
{
int i= event.getX();
if (i>w) i=w;
if (i<0) i=0;
dOffset = -(w / 2 - i) / mouseAccel;
}
}
);
}
}


// variables de personalisation
private int initialSpeed=1; // Vitesse initiale (le signe détermine le sens)
private String waitMessage="Chargement de l'image en cours";
private String runningMessage="www.sudaltim.com";
private int mouseAccel=35; // Réglage de l'accéleration
private long idleRestart=3000L; // Temps avant redémarrage à la vitesse initiale en millisecondes
// variables de fonctionnement
private URL imageSource;
private Image panoImage;
private int panoW;
private int panoH;
private Thread thread;
private int appHeight;
private Image ImageSwap;
private Graphics Swap;
private MediaTracker mt=null;
private long idleTm;
private int w;
private int ww;
private int offset;
private int dOffset;
private Color backColor;
private Color frontColor;
private Color runningFrontColor;
}

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

jefhernet
Nouveau membre
Inscrit : 29/06/2007
Messages : 3
Message
#154418
Posté le 22/06/08 à 21:59
Merci pour toutes ces réponses très intéressantes.
J'ai pu ainsi résoudre mon problème.
Bien cordialement.
JEFHERNET

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

ReaM
Superviseur :
- Java
Avatar de ReaM
Inscrit : 24/02/2005
Messages : 741
Message
#154470
Posté le 24/06/08 à 09:52
De rien ...
__________________________
Image
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi. Ici, nous avons réuni théorie et pratique : rien ne fonctionne et personne ne sait pourquoi...

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

jefhernet
Nouveau membre
Inscrit : 29/06/2007
Messages : 3
Message
#154479
Posté le 24/06/08 à 10:53
mercib ....

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM APPLET



    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.