User:Ali Haydar/GSOC19/project


Annotations: Implement support for 2D annotations, labels that can be added to geometry

The project is divided into two parts:

  • Creating a new primitive for annotations
  • Rendering the primitives to the wireframe view

Creating a new primitive for annotations

  • Annotations comprise of:
    • Notes and Labels : Single line or Multiline text
    • Leader Lines (includes GD&T)
  • The primary goal is to implement simple leader lines, so that we have a basic frame for further amendments.
  • Support for view Independent annotations: This is resolved by using a separate coordinate system in two dimensions for the labels. This coordinate system has a direct mapping with the original 3D coordinate system that comprises of the wireframes.
  • Coordinate system is nothing but a transformation matrix. This matrix projects all the points in the 3D coordinate system to the 2D coordinate system that will contain the annotations.
  • The plan of action comprises of the creation of a new primitive “annotation”. The basic workflow can be related to that of the sketch primitive.
  • The annotation primitive will comprise of various parameters that define the labels.
  • Here we are aiming for manual annotations. The parameters will be provided by the user through the command line. ”in” followed by various parameters some of which are:
    • Position
    • Text - leader line
    • Additional object reference name

Container for annotations