User:Bhollister/DevLogAug2015

From BRL-CAD
< User:Bhollister
Revision as of 19:17, 14 August 2015 by Bhollister (talk | contribs) (Fri, August 14, 2015)



Sat, August 1, 2015

n/a

Sun, August 2, 2015

n/a

Mon, August 3, 2015 Week 11 (of 14)

  • Summoned for jury service: Spent entire day at court house in Santa Cruz.
  • Dismissed from jury duty but was called to jury box.

Tues, August 4, 2015

  • investigating ways of labelling faces for CLI specification
    • looked at:
    • none label objects with symbols (only color change, etc. and NOT faces)
    • ev provides some direction
  • todo: may have to implement something like f_labelvert (in mged/overlay.c) but for face index labelling
    • OR have users specify verts for face selection (probably not preferable)
  • updated design docs reflecting recent integrated patches

non-brlcad expenditures...

  • spent time in phone conversation negotiating / considering a job offer

Wed, August 5, 2015

  • implementing new mged cmd called labelface need for kill F
  • commit #1 added placeholder for lableface mged cmd
  • commit #2 traversing model to collect a list of faces to label. work in progress...

Thurs, August 6, 2015

  • labelface impl
    • working to get list of faceuses from nmg model
    • working to get center coord of face polygons
      • this will allow labels to be displayed at center of faces

non-brlcad expenditures...

  • spend much of the day deciding between two employment offers
  • chose post-doctoral research over lecturer position

Fri, August 7, 2015

  • commit #1 verified that faceuses are properly gathered in get_face_list. todo: use bu_list instead of array placeholder for faceuse list.
  • todo: need to find how to calculate barycenter for face verts (there must be a utility function in brlcad)
  • instead: very easy as a simple average of coords of face verts
    • where face labels will be placed using bn_vlist_3string() in rt_label_vlist_faces()

Sat, August 8, 2015

n/a

Sun, August 9, 2015

n/a

Mon, August 10, 2015 Week 12 (of 14)

  • commit #1 able to label faceuses at min pt of their bounding box. faceuse index used for label. todo: need to plot label at center of face. also need to find way to show both front / back facing faceuses. right now they are overdrawn. placeholder array causes seg fault when dereferencing empty faceuses in array.
  • commit #2 using struct face as replacement to struct faceuse
  • todo: use center of face for face index placement
  • since there are two facesuses per face, best to use index of face for label
  • see:

/**
 * Note: there will always be exactly two faceuse's using a face.  To
 * find them, go up fu_p for one, then across fumate_p to other.
 */
struct face {
    struct bu_list l;		/**< @brief faces in face_g's f_hd list */
    struct faceuse *fu_p;	/**< @brief Ptr up to one use of this face */
    union {
	uint32_t *magic_p;
	struct face_g_plane *plane_p;
	struct face_g_snurb *snurb_p;
    } g;			/**< @brief geometry */
    int flip;			/**< @brief !0 ==> flip normal of fg */
    /* These might be better stored in a face_a (not faceuse_a!) */
    /* These are not stored on disk */
    point_t min_pt;		/**< @brief minimums of bounding box */
    point_t max_pt;		/**< @brief maximums of bounding box */
    long index;			/**< @brief struct # in this model */
};

Tues, August 11, 2015

  • commit #1 now taking avg of min and max bounding extents. works great for label placement.
  • commit #2 rt_label_vlist_faces caught in infinite loop. face list element had forw / back points to itself. todo: fix.

Wed, August 12, 2015

  • added labelface documentation
  • added patch 403 for labelface cmd
  • commit #1 fixed problem with adding same face struct to bu_list - which caused self-referential node (forw/back pointers pointing to node itself) in list
  • commit #2 added help lookup for 'lableface'
  • commit #3 removed accidental redundant error checking
  • todo: implement 'kill F' next, using the indices provided in display by labelface

Thurs, August 13, 2015

  • submitted patch 404 for 'kill F'
  • commit #1 added boiler-plate for ged_nmg_kill_f cmd
  • commit #2 using nmg_kfu(). loops / edges still present after faceuse / face removal. todo: either verify that face is removed by testing with solid face rendering, or remove loops / edges along with face...
  • Documentation updated: http://brlcad.org/wiki/MGED_CMD_nmg#Subcommands
  • todo: impl 'make V' as proposed

Fri, August 14, 2015

  • commit #1 boiler-plate for move V mged cmd
  • commit #2 move V cmd implementation. More or less a variation on kill V.
  • commit #3 added check for cmd argument length. should not exceed two coords.
  • submitted patch 405 for move V nmg subcommand
  • updated docs
    • nmg
    • labelvert for proposed -i (index) option
      • this will allow for CLI specification with make F

Sat, August 15, 2015

Sun, August 16, 2015

Mon, August 17, 2015 Week 13 (of 14)

Tues, August 18, 2015

Wed, August 19, 2015

Thurs, August 20, 2015

Fri, August 21, 2015 FIRM PENCILS DOWN

Sat, August 22, 2015

Sun, August 23, 2015

Mon, August 24, 2015 Week 14 (of 14)

Tues, August 25, 2015

Wed, August 26, 2015

Thurs, August 27, 2015

Fri, August 28, 2015 FINAL EVALS DUE