Editing User:H1manshu/GSoC2022/Project Report

From BRL-CAD

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
 
= Project Report =
 
= Project Report =
* '''Student:''' Himanshu Sekhar Nayak
+
* '''Student Name:''' Himanshu Sekhar Nayak
* '''Mentor:''' Dr.Daniel Roßberg
+
* '''GSoC 2022 Project:''' [https://github.com/BRL-CAD/arbalest|New BRL-CAD GUI]
* '''GSoC 2022 Project:''' [https://github.com/BRL-CAD/arbalest New BRL-CAD GUI]
+
* '''Mentor Name:''' Daniel Rossberg
  
 
== Overview ==
 
== Overview ==
Line 8: Line 8:
 
* Also we have added a feature where the app will be able to show a dialog box if there are '''unsaved changes''' in the .g file before closing the tab or closing the app.
 
* Also we have added a feature where the app will be able to show a dialog box if there are '''unsaved changes''' in the .g file before closing the tab or closing the app.
 
* Created a new '''interface''' for '''mouse action''' so in the future if any new mouse action is to be added then it can take benefit from the interface.
 
* Created a new '''interface''' for '''mouse action''' so in the future if any new mouse action is to be added then it can take benefit from the interface.
* Fixed some UI changes and added new icons.
+
*Fixed some UI changes and added new icons.
  
 
== What code got merged? ==
 
== What code got merged? ==
 
My major role was to fix issues in the project and add some new features and they are listed below with the link to PR:
 
My major role was to fix issues in the project and add some new features and they are listed below with the link to PR:
* Fixed properties docks, objects docks, and status bar. [https://github.com/BRL-CAD/arbalest/pull/13 | PR #13]
+
* Fixed properties docks, objects docks, and status bar. [https://github.com/BRL-CAD/arbalest/pull/13|PR #13]
* Fixed QApplication header and exec(). [https://github.com/BRL-CAD/arbalest/pull/16 | PR #16]
+
* Fixed QApplication header and exec(). [https://github.com/BRL-CAD/arbalest/pull/16|PR #16]
* Added QToolButton and removed QPushButton. [https://github.com/BRL-CAD/arbalest/pull/19 | PR #19]
+
* Added QToolButton and removed QPushButton. [https://github.com/BRL-CAD/arbalest/pull/19|PR #19]
* Revert back to use object name toolbarButton instead of new object names. [https://github.com/BRL-CAD/arbalest/pull/20 | PR #20]
+
* Revert back to use object name toolbarButton instead of new object names. [https://github.com/BRL-CAD/arbalest/pull/20|PR #20]
* Added icons for menu items and icon color for both light & dark themes. [https://github.com/BRL-CAD/arbalest/pull/21 | PR #21]
+
* Added icons for menu items and icon color for both light & dark themes. [https://github.com/BRL-CAD/arbalest/pull/21|PR #21]
* Added unsaved changes feature. [https://github.com/BRL-CAD/arbalest/pull/23 | PR #23]
+
* Added unsaved changes feature. [https://github.com/BRL-CAD/arbalest/pull/23|PR #23]
* Free memory after the tab gets closed. [https://github.com/BRL-CAD/arbalest/pull/24 | PR #24]
+
* Free memory after the tab gets closed. [https://github.com/BRL-CAD/arbalest/pull/24|PR #24]
* Switching tabs doesn't show values in properties dock. [https://github.com/BRL-CAD/arbalest/pull/25 | PR #25]
+
* Switching tabs doesn't show values in properties dock. [https://github.com/BRL-CAD/arbalest/pull/25|PR #25]
* Added Apache license 2.0 to ''AboutWindow.cpp''. [https://github.com/BRL-CAD/arbalest/pull/28 | PR #28]
+
* Added Apache license 2.0 to '''AboutWindow.cpp'''. [https://github.com/BRL-CAD/arbalest/pull/28|PR #28]
* Check if an object name is valid. [https://github.com/BRL-CAD/arbalest/pull/36 | PR #36]
+
* Check if an object name is valid. [https://github.com/BRL-CAD/arbalest/pull/36|PR #36]
* Added MouseActions feature. [https://github.com/BRL-CAD/arbalest/pull/38 | PR #38]
+
* Added MouseActions feature. [https://github.com/BRL-CAD/arbalest/pull/38|PR #38]
* Added select object feature using mouse action. [https://github.com/BRL-CAD/arbalest/pull/40 | PR #40]
+
* Added select object feature using mouse action. [https://github.com/BRL-CAD/arbalest/pull/40|PR #40]
* Add expand item feature in object dock when region is clicked. [https://github.com/BRL-CAD/arbalest/pull/45 | PR #45]
 
  
 
== What's left to do? ==
 
== What's left to do? ==
* I am not able to start '''resizing primitive''' after an object is selected. The idea is to first the primitive will be selected through the select mouse feature then inside the '''Edit''' option click on the '''Scale''' option. Then click on any corner of the primitive and drag mouse to enlarge or shrink the primitive.
+
* I am not able to start '''resizing primitive''' after an object is selected. The idea is to first the primitive will be selected through the select mouse feature then inside the Edit option click on the Scale option. Then click on any corner of the primitive and drag mouse to enlarge or shrink the primitive.
 
* Also I am not able to give a start to extend the object-oriented C++ Geometry API which includes the C++ '''coreInterface''' & '''LIBGED'''.
 
* Also I am not able to give a start to extend the object-oriented C++ Geometry API which includes the C++ '''coreInterface''' & '''LIBGED'''.
  
 
== What's next? ==
 
== What's next? ==
* I am planning to port '''Arbalest''' to '''MOOSE''' where Moose will become the new API of the BRL-CAD core in the future. Moose is based on the C++ '''coreInterface''' work in '''rt^3'''.
+
 
* Also I will start working on adding new features to Arbalest that I have discussed in my proposal which is left behind during GSoC. I will stick to the reported issues and try to fix those.
 
* I will maintain the Arbalest repository and after that will work on Moose too.
 
  
 
== Final Note ==
 
== Final Note ==
I'll wrap up by saying GSoC was a great experience where I learned and got so much exposure from BRL-CAD which I am forever grateful to my mentor and the developers of BRL-CAD. When I started GSoC, I was afraid of how to start with selecting an object and showing it in the objects and properties dock but my mentor is always there and always helped me whenever I am stuck or how to start. I salute my mentor from GCI 2019 till now, he is always there and I learned so many things from him starting from debugging and code evaluations. I always enjoyed my mentor's feedback and the discussions in the virtual meeting. Thanks to my mentor for giving me a chance and also to this organization which helped to build so many things.
 

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)