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

Composants VCL Delphi Discussion :

Courbe de Polybezier


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Courbe de Polybezier
    Bonjour,

    Sur un TImage, à chaque clic je crée un trait avec le point précédent.
    A la fin mon point final est mon point de départ de sorte a avoir une forme fermée.

    Je remplis un "array of TPoint" avec les points de ma courbe.

    Quand je fais un canvas.polybezier(ptPlan) cela ne m'affiche rien.. à moins de mettre énormément de point de contrôle..

    Pouvez vous m'aider ?

    Merci

  2. #2
    Membre Expert
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Par défaut
    Citation Envoyé par retwas Voir le message
    Bonjour,

    Sur un TImage, à chaque clic je crée un trait avec le point précédent.
    Merci
    Mieux vaut utiliser polyline dans ce cas non ?

  3. #3
    Membre Expert
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Par défaut
    Un truc comme ça :

    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
     
      private
        { Déclarations privées }
        dimtab:integer;
        tabpoints:array of TPoint;
        Procedure Addline(pt:Tpoint);
      public
        { Déclarations publiques }
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
    Procedure TForm1.Addline(pt:Tpoint);
    var i:integer;
    begin
      inc(dimtab);
      setlength(tabpoints,dimtab);
      tabpoints[dimtab-1]:=pt;
      for i:=0 to dimtab-1 do canvas.polyline(tabpoints);
    end;
     
    procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
     Addline(point(x,y));
    end;
     
    end.
    @+

  4. #4
    Invité
    Invité(e)
    Par défaut
    Merci, mais le fait d'utiliser un polyline revient au même nan?

    Pour lisser les angles je dois forcement faire un polybezier, a moins que je n'est pas compris ?

  5. #5
    Membre Expert
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Par défaut
    non :
    La première courbe est dessinée à partir du premier point jusqu'au quatrième point, en utilisant le deuxième et le troisième points comme points de contrôle
    il est normal de ne pas obtenir une courbe à chaque click avec polybézier...

    @+

  6. #6
    Invité
    Invité(e)
    Par défaut
    Enfaîte je construit pas courbe et je remplis mon tableau de TPoint.

    Une fois que la courbe est tracé je fais un polybezier(tabPT) mais c'est la que j'obtiens rien..

    Je vais ressayer avec polyline pour voir

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MSChart] creation de courbe sous visual C++
    Par gabriel knight dans le forum MFC
    Réponses: 5
    Dernier message: 18/09/2006, 15h32
  2. courbe à partir d'un tableau
    Par chafcha dans le forum MFC
    Réponses: 3
    Dernier message: 26/02/2004, 09h53
  3. recherche doc sur les courbe de bézier
    Par amaury pouly dans le forum OpenGL
    Réponses: 4
    Dernier message: 29/04/2003, 23h41
  4. Courbe lissée
    Par crakdown dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 09/11/2002, 18h58
  5. [VB6] [MSChart] Courbe incorrecte
    Par elifqaoui dans le forum VB 6 et antérieur
    Réponses: 18
    Dernier message: 08/10/2002, 22h53

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