-
Notifications
You must be signed in to change notification settings - Fork 11
Define 2d model class and Simmetrix GeomSim model loader #96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
simmetrix does not store loops, only loop uses, remove them for now
compiles and executes
no leaks or errors under valgrind
jacobmerson
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I mostly commented on high level design choices so far.
|
looks good to me overall, some comments attached |
|
notes from discussion with @jacobmerson
|
Stores topological data in private fields and provides a "getter" api to access topological data. Also adds in code doxygen documentation.
Adds topological queries to the Model2D Class by: - Making the Model2D Fields private, and providing inline "getter" functions - Reworking the Model2D loading routine. It now utilizes private helper functions to populate the Model2D Fields - Adding documentation with doxygen This PR also bumps the maximum version of Simmetrix to 2025.1.250507.
|
/runtests |
|
Test Result: success (details) |
|
/runtests |
|
Test Result: success (details) |
| } | ||
|
|
||
| std::optional<Model2D> Mesh2D::getModel() const { | ||
| std::optional<const Model2D> Mesh2D::getModel() const { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This may not be what you want. I'm pretty sure this will make a copy of the model to return since std::optional owns the data. If you don’t want a copy a pointer is probably the way to go here, but with an added note in the docs that it may be null since our users may not be as careful with checking for nullptr as they should be.
If you return a pointer, you can also mark this function noexcept
Adds a Model2D class and support for filling the Model2D data structures from a Simmetrix GeomSim model (.smd).
will_fail_test_func(...)CMake macro)