Giter VIP home page Giter VIP logo

Comments (4)

qborbeau avatar qborbeau commented on September 15, 2024

Dans le cas où l'on souhaite se débrouiller sans pointeur, comment faire pour sortir les paramètres du fichier .toml (avec la fonction parse) ? Faut-il modifier cette fonction parse justement ?
L'objectif est ensuite d'utiliser ces paramètres dans une fonction translate et une fonction merge c'est bien ça ?

from minimesh.

bfovet avatar bfovet commented on September 15, 2024

Dans le cas où l'on souhaite se débrouiller sans pointeur, comment faire pour sortir les paramètres du fichier .toml (avec la fonction parse) ? Faut-il modifier cette fonction parse justement ?

Oui, le premier exemple est un bout de code de OptionsParser::parse, il faut que tu la modifies de la même façon, en retournant une struct au lieu d'un pointeur. Mais attention, sans pointeur tu perdras tes données si tu ne définies pas ta struct Params en dehors de la fonction parse (à cause du scope : https://stackoverflow.com/questions/19205024/how-to-return-a-struct-from-a-function-in-c).
Et un autre lien pour savoir comment caster des struct Parent <-> Child : https://www.bogotobogo.com/cplusplus/upcasting_downcasting.php

L'objectif est ensuite d'utiliser ces paramètres dans une fonction translate et une fonction merge c'est bien ça ?

Oui ! A partir du 2e bout de code (dans main), on a toutes les options dans MergeParams (ou TranslateParams) à fournir ensuite à Transform::merge (ou Transform::translate).

from minimesh.

salouaraqa avatar salouaraqa commented on September 15, 2024

J'ai toujours du mal avec le shared_ptr, si je fais std::shared_ptr mp = std::dynamic_pointer_cast(params); je récupère bien mp (qui est du coup MergeParams) que je peux passer à ma fonction merge ?

from minimesh.

bfovet avatar bfovet commented on September 15, 2024

J'ai toujours du mal avec le shared_ptr, si je fais std::shared_ptr mp = std::dynamic_pointer_cast(params); je récupère bien mp (qui est du coup MergeParams) que je peux passer à ma fonction merge ?

Presque, tu récupères un std::shared_ptr<MergeParams>. J'ai utilisé un shared_ptr dans mon exemple mais on peut très bien s'en sortir avec des pointeurs classiques : la ligne équivalente serait MergeParams *mp = dynamic_cast<MergeParams*>(params);

A donner à la méthode merge pour récupérer les paramètres à fournir aux filtres VTK.

from minimesh.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.