NablaZeroLabs / mxd

Space Mission Design Support Tools
MIT License
4 stars 4 forks source link

Add line error checking; rename shader folder env variable; refactor ellipse #39

Open fayalalebrun opened 5 years ago

fayalalebrun commented 5 years ago

I've had to remake this from #38, since I named a commit wrongly, and thus I had to force push into my master branch in order to fix it. Here are the comments that I had left until then:

Checking for OpenGL errors is now performed sporadically in the Line class. -The noexcept specifier was removed from various functions, which now can throw exceptions. -In any function where OpenGL is called, the function to check errors from utilities is called.

I've renamed the shader folder environment variable to MXD_SHADER_ROOT, in order to avoid conflicting with environment variables which are part of other programs.

Fixes #36. Resolves #16.

fayalalebrun commented 5 years ago

I have removed TODOs related to the shader functionality since I have addressed these issues previously (I think). If the shader and program classes require further changes to be usable, please let me know.

fayalalebrun commented 5 years ago

I have refactored ellipse in order to follow the pimpl idiom and according to the changes to the line class.

I have also changed the parameter names in order to follow project naming conventions.

fayalalebrun commented 5 years ago

I've removed the geometry failing test, as there is nothing to test in this class.

fayalalebrun commented 5 years ago

I modified the get_env_var() function to throw an exception if an environment variable is not found. I think this will help us more easily identify error related to this.

I added a couple of tests relating to this function, including one which makes sure that SHADER_ROOT is set.

fayalalebrun commented 5 years ago

I've added a method to emplace shaders directly into the program class, in order to improve the way shaders are used in the program. Also, I've added a couple of tests for program which now means that all methods in program are tested.

fayalalebrun commented 5 years ago

I've added a more extensive error message in case program creation fails, in order to solve a TODO.

fayalalebrun commented 5 years ago

I've updated the line, shader and ellipse tests in order to ensure that all methods in these classes are tested.