Difference between revisions of "User:Gabbar1947/GSOC17/Report"
From BRL-CAD
Gabbar1947 (talk | contribs) m |
Gabbar1947 (talk | contribs) m |
||
Line 4: | Line 4: | ||
*Creating a new primitive for annotations | *Creating a new primitive for annotations | ||
*Rendering the primitives to the wireframe view | *Rendering the primitives to the wireframe view | ||
+ | *Support for the screen projection | ||
==='''Creating a new primitive for annotations'''=== | ==='''Creating a new primitive for annotations'''=== |
Revision as of 13:14, 25 August 2017
Contents
Annotations: Implement support for 2D annotations | Project Report
The project was divided into two parts:
- Creating a new primitive for annotations
- Rendering the primitives to the wireframe view
- Support for the screen projection
Creating a new primitive for annotations
- What was basically required was a container to hold things together
https://sourceforge.net/p/brlcad/patches/469/#ea23 https://sourceforge.net/p/brlcad/patches/469/#34f1
Rendering the primitive on screen
- The next part was to add support for the visualization of the primitive
- Input for the primitive also handled through the 'in' command in the patches mentioned below
https://sourceforge.net/p/brlcad/patches/471/#97f3 https://sourceforge.net/p/brlcad/patches/471/#4b72
Support for the 3D->2D projection
- Annotations always remain in the plane of the screen
- Modifying the projection matrices for all the display managers was another task
- Scaling the annotations was another issue
- All of this was handled by the patches mentioned below
https://sourceforge.net/p/brlcad/patches/471/#cd2e https://sourceforge.net/p/brlcad/patches/471/#acd7
Project Extension
After discussions with the mentors, some extension ideas came up:
- Functionality to set up the annotation properties for the primitive
- Extension for the geometric shape of the annotation
- Common functionality for the annotation and the sketch primitive in order to reduce redundancy
- Features related to the coordinate system like the annotation scaling
- Algorithm to provide a bounding box for the text using the relative coordinates