IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Graphisme Java Discussion :

ligne brisé avec canvas


Sujet :

Graphisme Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    1 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 124
    Par défaut ligne brisé avec canvas
    Bonjour le monde

    Je réalise un projet de calcul integrale

    J'ai fais un canvas pour déssiné le graphisme.

    Je souhaiterai savoir comment faire des ligne brisé.

    Merci.

    A+

  2. #2
    Membre éclairé Avatar de trax44
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 300
    Par défaut
    en faisant plusieurs lignes "simple" par exemple

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    1 124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 1 124
    Par défaut
    Bonsoir tout le monde




    Voici le canvas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
     
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.Image.*;
    import java.awt.Color.*;
    import javax.imageio.*;
    import java.io.*;
     
     
     
     
    public class Cartesien extends Canvas{
     
    Fonction fct = new Fonction();
     
    public Cartesien(){
     
     
     
     
    }
    public void paint (Graphics g)
    {		
     
    setBounds(5,5,450,300);
    setBackground(Color.white);
     
     
     
    int lignv;
     
     
    g.setColor(Color.green);
    g.drawLine(10,280,380,280);
     
    g.drawLine(10,140,10,280);
     
     
     
     
    Font f = new Font("Arial",Font.BOLD,14);
    g.setColor(Color.black);
    g.setFont(f);
    g.drawString("0",0,300);
     
    g.drawString("X",380,380);
    g.drawString("Y",0,130);
     
    g.drawString("6",0,150);
     
     
    g.drawString("5",0,170);
     
    g.drawString("4",0,190);
     
    g.drawString("3",0,210);
     
     
    g.drawString("2",0,240);
     
    g.drawString("1",0,270);
     
     
     
    g.drawString("1",15,300);
     
     
    g.drawString("2",35,300);
     
    g.drawString("3",55,300);
     
     
     
    g.drawString("4",75,300);
     
    g.drawString("5",95,300);
     
     
    g.drawString("6",115,300);
     
     
    g.drawString("7",135,300);
     
     
     
    g.drawString("8",155,300);
     
    g.drawString("9",175,300);
     
     
    g.drawString("10",195,300);
     
     
     
     
     
    //traçage du trait
     
     
    if(fct.x>1)
    {
     
    g.drawLine(0,);
     
    }
     
     
    }
    	}


    Voici l'algo pour le calcul de la fonction.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    class Fonction {
     
     
     
    public double calculinteg(double somme, float BorneMax){
     
    Constante = 0;
     
    double tmp = 0;
    double pas = 1;
     
    while (pas > Constante)
    {
     
    n+=1;
     
    pas = (BorneMax-BorneMin)/n;
     
    }
     
    for (double i=0; i<=BorneMax -pas; i += pas) {
      somme += ((function(i)*i)) + ((function(i)*(i+pas)))/2;
     
     
     
     
     
    }
     
     
     
    }
     
     
    double function(double x) {
     
     return x*x;
     
    }
     
    }
    Mon probleme est que je ne vois pas comment paramêtrer les coordonnées des lignes avec le résultat.

    A +

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 905
    Billets dans le blog
    54
    Par défaut
    Qu'entends-tu par "ligne brisee" exactement ?

    Si c'est la definition classique d'une succession de segments mis bout a bout il te suffit juste de parcourir une java.util.List<Point> et d'utiliser la methode drawLine() de la classe Graphics.
    Tu peux egalement regarder du cote de Line2D et de ses implementation concretes (Line2D.Float, Line2D.Double et Line) et les methodes setLine() et draw().

    S'il s'agit au contraire d'une ligne en pointilles, il faut manipuler des Stroke :voir classe BasicStroke et caster le Graphics en Graphics2D, puis faire setStroke() avant d'appler drawLine(). Un Stroke permet de configurer l'apparence d'un trait
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

Discussions similaires

  1. flèche dans une ligne avec canvas
    Par bhahmed dans le forum C++Builder
    Réponses: 1
    Dernier message: 21/09/2006, 19h24
  2. compteur de ligne excel avec filtre
    Par calimero91 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/12/2005, 11h04
  3. retour ligne intélligent avec l'utilisation de DIV
    Par bébé dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 22/08/2005, 17h46
  4. lignes 3d avec d3dx
    Par izbad dans le forum DirectX
    Réponses: 12
    Dernier message: 21/04/2005, 15h31
  5. Génération de lignes entières avec TEXT_IO.PUT
    Par ludo.guy dans le forum Oracle
    Réponses: 9
    Dernier message: 13/10/2004, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo