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

Modules Perl Discussion :

Quel Module pour affichage 3D


Sujet :

Modules Perl

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 10
    Points
    10
    Par défaut Quel Module pour affichage 3D
    Bonjour,
    J'utilise actuellement perl pour générer des fichiers de points en 3D (x,y,z) et j'aimerai trouver un module permettant d'afficher ces points (ou des lignes entre ceux-ci) et de les manipuler (rotation zoom déplacement) comme dans un logiciel de CAO. J'ai essayé le module PDL, il fait presque tout mais impossible d'avoir une représentation correcte de mon nuage de points : je n'arrive pas à rendre l'échelle des axes isométrique. voici un bout de prog qui marche avec le module pdl :
    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
    #Modules d affichage PDL
    use PDL;
    use PDL::Graphics::TriD;
    #Donnees
    @xx=[-20, -10, 0, 10, 20, 20, 10, 0, -10, -20];
    @yy=[-10, -10, -10, -10, -10, 10, 10, 10, 10, 10];
    @zz=[0, 0, 0, 0, 0, 1, 1, 1, 1, 1];
    @ff=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
    $Fmax=10;
     
    #formatage tableau pdl
    $xx = pdl @xx;
    $nbx= nelem $xx;
    $yy = pdl @yy;
    $zz = pdl @zz;
    $ff = pdl @ff;
    $nbf= nelem $ff;
    $frouge = ones $nbf;
    $ff1 = pdl $ff/$Fmax;
     
    #affichage ligne
    hold3d();
    line3d [$xx,$yy,$zz],[$frouge,$ff1,$ff1];
    J'aimerai que l'axe x,y et z aient la même échelle et ne pas être anamorphosé...
    PDL le permet-il ?
    sinon quelle solution employer en restant dans perl ?
    Si Perl ne le peut pas que faire ?

    Merci à vous pour votre réponse.
    Guillaume

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    Bonjour,
    Devant le peu de réponses à mon problème, pourriez vous m'indiquer un forum en anglais qui pourrait m'aider... Je vous ferai évidement passer une réponse au cas ou j'en trouve une.
    Merci à vous.
    Guillaume

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    As-tu regardé le module OpenGL et ses sous modules ?

    Ou encore GD::Graph3D ?
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Bon, je viens de tester ton programme

    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
    #!/usr/bin/perl
    use warnings;
    use strict;
     
    #Modules d affichage PDL
    use PDL;
    use PDL::Graphics::TriD;
     
    #Donnees
    my @xx = [ -20, -10, 0,   10,  20,  20, 10, 0,  -10, -20 ];
    my @yy = [ -10, -10, -10, -10, -10, 10, 10, 10, 10,  10 ];
    my @zz = [ 0,   0,   0,   0,   0,   1,  1,  1,  1,   1 ];
    my @ff = [ 0,   1,   2,   3,   4,   5,  6,  7,  8,   9 ];
    my $Fmax = 10;
     
    #formatage tableau pdl
    my $xx     = pdl @xx;
    my $nbx    = nelem $xx;
    my $yy     = pdl @yy;
    my $zz     = pdl @zz;
    my $ff     = pdl @ff;
    my $nbf    = nelem $ff;
    my $frouge = ones $nbf;
    my $ff1    = pdl $ff/ $Fmax;
     
    #affichage ligne
    hold3d();
    line3d [ $xx, $yy, $zz ], [ $frouge, $ff1, $ff1 ];
    Qu'est ce qui ne te convient pas ? J'ai bien les rotations !!

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    Merci pour la rapidité de la réponse.
    En fait j'ai essayé avec OpenGL, mais c'est beaucoup plus lourd pour un résultat pas aussi satisfaisant. C'est certainement le module qu'il faudrait que j'utilise mais pour afficher ces lignes, c'est assez "ésotérique pour moi alors de la à pouvoir les manipuler avec la souris il me faudrait beaucoup de temps.
    Mais je crois bien que je vais être obligé de m'y mettre... C'est dommage car PDL est très simple d'emploi et très puissant.

    Enfin vouis l'aurez compris, je n'utilise Perl ou ces modules d'affichage que comme outil de visualisation, la programmation et l'informatique sont assez loin de mon boulot de prof de génie mécanique... je serai plutôt tournage fraisage et cambouis !
    Bonne journée

Discussions similaires

  1. Quel module pour les bases de données ?
    Par rambc dans le forum Général Python
    Réponses: 5
    Dernier message: 18/02/2013, 12h32
  2. Quel module pour apprendre le solfége?
    Par vieux60ans dans le forum Programmation multimédia/Jeux
    Réponses: 2
    Dernier message: 16/07/2012, 20h13
  3. QUEL "include" POUR affichage du texte
    Par sali2801 dans le forum C
    Réponses: 7
    Dernier message: 12/03/2011, 12h31
  4. Réponses: 6
    Dernier message: 05/07/2006, 17h13
  5. quel module pour le SGBD Ingres avec Perl 5.8.8
    Par StyleXP dans le forum SGBD
    Réponses: 5
    Dernier message: 19/06/2006, 13h58

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