Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1375 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  problème d'affichage en c++

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème d'affichage en c++

n°1495003
hamoudasaf​ira1
Posté le 21-12-2006 à 19:42:29  profilanswer
 

Code :
  1. Bonjour tout le monde j'ai un petit problème d'affichage dans mon programme
  2. //read the file .vtk format
  3. vtkPolyDataReader *Reader = vtkPolyDataReader::New();
  4. Reader->SetFileName("filename.vtk" );
  5. Reader->Update();
  6. Window->SetInput(Reader);//////c'est là mon problème
  7. Window->Render();
  8. Window->Interact();
  9. void RenderWindow::SetInput(vtkPolyData *)' : cannot convert parameter 1 from 'vtkOBJReader *' to 'vtkPolyData *'
  10. Alors j'ai fais une écriture avant àa est je voudrai la lire en utilisant ces codes mais ca m'affiche ce problème comment je pourrai l'éviter on vous remerciant de vos précieux aides

mood
Publicité
Posté le 21-12-2006 à 19:42:29  profilanswer
 

n°1495039
GrosBocdel
Posté le 21-12-2006 à 20:48:52  profilanswer
 

hamoudasafira1 a écrit :

Code :
  1. Bonjour tout le monde j'ai un petit problème d'affichage dans mon programme
  2. //read the file .vtk format
  3. vtkPolyDataReader *Reader = vtkPolyDataReader::New();
  4. Reader->SetFileName("filename.vtk" );
  5. Reader->Update();
  6. Window->SetInput(Reader);//////c'est là mon problème
  7. Window->Render();
  8. Window->Interact();
  9. void RenderWindow::SetInput(vtkPolyData *)' : cannot convert parameter 1 from 'vtkOBJReader *' to 'vtkPolyData *'
  10. Alors j'ai fais une écriture avant àa est je voudrai la lire en utilisant ces codes mais ca m'affiche ce problème comment je pourrai l'éviter on vous remerciant de vos précieux aides



 
http://www.vtk.org/Wiki/VTK_FAQ
 The C++ compiler cannot convert some pointer type to another pointer type in my little program
 
For instance, the C++ compiler cannot convert a vtkDataSet * type to a vtkImageData * type.
 
It means the compiler does not know the relationship between a vtkDataSet and a vtkImageData. This relationship is actually inheritance: vtkImageData is a subclass of vtkDataSet. The only way for the compiler to know this relationship is to include the header file of the subclass, that is:
 
#include "vtkImageData.h"
 
If you wonder why the compiler did not complain about an unknown type, it is because somewhere (probably in a filter header file) there is forward class declaration, like:
 
class vtkImageData;

n°1495045
hamoudasaf​ira1
Posté le 21-12-2006 à 21:11:46  profilanswer
 

thanks cry much but i wa try to do to make an include for the subclass
#include "vtkPolyData.h" but it's not working the problem if i change this line  
vtkPolyDataReader *Reader = vtkPolyDataReader::New();
by this:vtkPolyData *Reader = vtkPolyData::New();
 
the problem is that the SetFileName is not identified in this class so what can i do to resolve this problem?

n°1495047
GrosBocdel
Posté le 21-12-2006 à 21:16:01  profilanswer
 

hamoudasafira1 a écrit :

thanks cry much but i wa try to do to make an include for the subclass
#include "vtkPolyData.h" but it's not working the problem if i change this line  
vtkPolyDataReader *Reader = vtkPolyDataReader::New();
by this:vtkPolyData *Reader = vtkPolyData::New();
 
the problem is that the SetFileName is not identified in this class so what can i do to resolve this problem?


ok ok spreek ik Frans, ik net een kopiëren/wiki plakken had je laten. :)

n°1495048
hamoudasaf​ira1
Posté le 21-12-2006 à 21:18:17  profilanswer
 

can u explain in english or in french please

n°1495050
GrosBocdel
Posté le 21-12-2006 à 21:19:59  profilanswer
 

ouiiiii, je plaisantais.  :)  
Dans le wiki, ils disent juste de mettre l'include de la classe fille. Après tu n'as rien d'autre à changer dans ton code. C'est juste pour dire au compilo comment faire la conversion de pointeurs.


Message édité par GrosBocdel le 21-12-2006 à 21:21:01
n°1495064
hamoudasaf​ira1
Posté le 21-12-2006 à 21:33:38  profilanswer
 

oui c'est à peut prés la même probléme sauf que là j'ai pas une class de vtkPolyDataReader j'initialise seulement comme ça mais j'ai pas un class qui s'appel vtkPolyDataReader
on fait je veut te mettre comment je lis et écrire mais le problème et toujours dans Reader

Code :
  1. // save the output mesh to .vtk format
  2. char hassoun[500];
  3. if (OutputDirectory)
  4. {
  5.  strcpy (hassoun,OutputDirectory);
  6.  strcat (hassoun,"hassoun.vtk" );
  7. }
  8. else
  9.  strcpy(hassoun,"hassoun.vtk" );
  10. vtkPolyDataWriter *Writer=vtkPolyDataWriter::New();
  11. Writer->SetInput(cube);
  12. Writer->SetFileName(hassoun);
  13. Writer->Write();
  14. //read the file .vtk format
  15. vtkPolyDataReader *Reader = vtkPolyDataReader::New();
  16. Reader->SetFileName("hassoun.vtk" );
  17. Reader->Update();
  18. RenderWindow *Window=RenderWindow::New();
  19. Window->SetInput(Reader);////c'est là le probléme de conversion  
  20. Window->Render();
  21. Window->Interact();


voilà si tu pourra m'aider ç'est juste ça qui me bloque tout

n°1495067
GrosBocdel
Posté le 21-12-2006 à 21:48:34  profilanswer
 

et si tu mets plutot :
 Window->SetInput(Reader->GetOutput());
ça ne marche pas mieux?  

n°1495073
hamoudasaf​ira1
Posté le 21-12-2006 à 21:57:35  profilanswer
 

oui ça marche comme ça mais je ne comprend pas pourqoui ça ne change rien du tout je lis mais bon c'est je voudrai c'est d'avoir lancer le fichier .vtk que je l'ai déjà enregistrer mais on fait il y une deusiéme méthode en utilisant  

Code :
  1. void vtkSurface::CreateFromFile(const char *FileName)


donc c'est que j'ai fais c'est le suivant:

Code :
  1. vtkSurface *Create=vtkSurface::New();
  2. void vtkSurface::CreateFromFile(const char *Create);
  3. {
  4. int ch;
  5. char *terminaison;
  6. char fin[500];
  7. strcpy(hassoun,Create);
  8. if (hassoun != NULL)
  9. {
  10.  char *p;
  11.  for (p = hassoun; *p; ++p)
  12.   *p = tolower(*p);
  13. }
  14. ch='.';
  15. strcpy (fin,"hassoun.vtk" );
  16. terminaison = strstr(hassoun,fin);
  17. if (terminaison!=NULL)
  18. {
  19.  vtkPolyDataReader *Reader = vtkPolyDataReader::New();
  20.  Reader->SetFileName(Create);
  21.  Reader->Update();
  22.  Reader->Delete();
  23.  return;
  24. }
  25. ch='.';
  26. strcpy (fin,"hassoun.vtk" );
  27. terminaison = strstr(hassoun,fin);
  28. }


mais j'ai toujours une erreur et elle se trouve ici :

Code :
  1. void vtkSurface::CreateFromFile(const char *Create);


parce que il me disait qu'il y on a aussi un problème de conversion de char chez pas qoui à ton avis c'est laquelle la meuilleur et comment je pourrai résolu ce problème. tandis que mon prof m'a dis que la deuxième est mieux

n°1495089
GrosBocdel
Posté le 21-12-2006 à 22:25:08  profilanswer
 

hamoudasafira1 a écrit :

oui ça marche comme ça mais je ne comprend pas pourqoui ça ne change rien du tout je lis mais bon c'est je voudrai c'est d'avoir lancer le fichier .vtk que je l'ai déjà enregistrer mais on fait il y une deusiéme méthode en utilisant  

Code :
  1. void vtkSurface::CreateFromFile(const char *FileName)


donc c'est que j'ai fais c'est le suivant:

Code :
  1. vtkSurface *Create=vtkSurface::New();
  2. void vtkSurface::CreateFromFile(const char *Create);
  3. {
  4. int ch;
  5. char *terminaison;
  6. char fin[500];
  7. strcpy(hassoun,Create);
  8. if (hassoun != NULL)
  9. {
  10.  char *p;
  11.  for (p = hassoun; *p; ++p)
  12.   *p = tolower(*p);
  13. }
  14. ch='.';
  15. strcpy (fin,"hassoun.vtk" );
  16. terminaison = strstr(hassoun,fin);
  17. if (terminaison!=NULL)
  18. {
  19.  vtkPolyDataReader *Reader = vtkPolyDataReader::New();
  20.  Reader->SetFileName(Create);
  21.  Reader->Update();
  22.  Reader->Delete();
  23.  return;
  24. }
  25. ch='.';
  26. strcpy (fin,"hassoun.vtk" );
  27. terminaison = strstr(hassoun,fin);
  28. }


mais j'ai toujours une erreur et elle se trouve ici :

Code :
  1. void vtkSurface::CreateFromFile(const char *Create);


parce que il me disait qu'il y on a aussi un problème de conversion de char chez pas qoui à ton avis c'est laquelle la meuilleur et comment je pourrai résolu ce problème. tandis que mon prof m'a dis que la deuxième est mieux


 
Je pense que la deuxième méthode que tu présentes est exactement la même que la première!
Trop de C et pas assez de C++ à mon goût  :??:  
Quel est le message d'erreur à void vtkSurface::CreateFromFile(const char *Create); ????
Enlève le ; après la parenthèse


Message édité par GrosBocdel le 21-12-2006 à 22:28:40
mood
Publicité
Posté le 21-12-2006 à 22:25:08  profilanswer
 

n°1495095
hamoudasaf​ira1
Posté le 21-12-2006 à 22:30:26  profilanswer
 

c'est mon problème
error C2761: 'void vtkSurface::CreateFromFile(const char *)' : member function redeclaration not allowed
 
et je m'excuse si je te dérange là je suis toujours au labo et je dois lui présenter la résultat demain
et comme je suis tout au début de programmation j'ai peur qu'il se fache contre moi un jour et qu'il me balance de la fenêtre  :lol:

n°1495103
GrosBocdel
Posté le 21-12-2006 à 22:34:26  profilanswer
 

enlève le ; après void vtkSurface::CreateFromFile(const char *Create)

n°1495106
hamoudasaf​ira1
Posté le 21-12-2006 à 22:37:42  profilanswer
 

:pt1cable:  
error C2601: 'vtkSurface::CreateFromFile' : local function definitions are illegal
pourtant j'ai bien initialiser vtkSurface  

Code :
  1. vtkSurface *vtkSurface=vtkSurface::New();


c'est bizard

n°1495114
GrosBocdel
Posté le 21-12-2006 à 22:48:54  profilanswer
 

hamoudasafira1 a écrit :

:pt1cable:  
error C2601: 'vtkSurface::CreateFromFile' : local function definitions are illegal
pourtant j'ai bien initialiser vtkSurface  

Code :
  1. vtkSurface *vtkSurface=vtkSurface::New();


c'est bizard


 
Je ne comprends pas bien ce que tu fais, parce que tu sembles réécrire une fonction membre de vtkSurface sans avoir créé une classe dérivée.

n°1495121
hamoudasaf​ira1
Posté le 21-12-2006 à 23:05:54  profilanswer
 

je te remercie pour tout  
je veux essayer avec la premiere methode et je verai avec mon tuteur demain si non si on ce poura se connecter sur msn si tu pourras me passer ton mail en privée si jamais j'ai des soucis si bien sûr ça ne te dérange pas je serai ravi de te connaître  :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  problème d'affichage en c++

 

Sujets relatifs
Probleme d'affichageProblème affichage graphique
[Résolu]Probleme d'affichage des info contenu dans la base de donnéesProblème Progamme pour affichage
Probleme d'affichage du conteu des framesPROBLEME D'AFFICHAGE SUR FIREFOX
problème d'affichage client telnetprobleme d'affichage de caracteres
Problème affichage bannières TradeDoubler et autres sites...Problème avec requête sql et ordre d'affichage des champs [résolu]
Plus de sujets relatifs à : problème d'affichage en c++


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR