Editing User:Tandoorichick/GSoC2016/Logs

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 78: Line 78:
  
 
30/6/16 - Still modifying the DCEL access functions. Wasn't well for a part of the day.
 
30/6/16 - Still modifying the DCEL access functions. Wasn't well for a part of the day.
 
1/7/16 - Errors with function addEdge rectified. Setting references while deleting edge modified.
 
 
2/7/16 - Rectified errors with delete functions. Edge contraction and vertex contraction processes working fine.
 
 
3/7/16 - Corrected minor errors.
 
 
4/7/16 - Next and previous edge references set right after the contractions. Sorted out memory issues, changed function prototypes accordingly. Parameters with double pointers changed to reflect that they are 3D arrays. Undefined behavior w.r.t even memory issues seen. Trying to resolve. Started coding stitching algorithm.
 
 
5/7/16 - Memory corruption issue wrt push operation with priority queue. Looked for solutions. Couldn't find any fix. Coding the stitching algorithm. Made changes from yesterday - that both chains move in opposite directions by virtue of being a part of the same loop.
 
 
6/7/16 - Coded the rest of the stitching algorithm. Included a part in the zippering gaps algorithm to accommodate for gaps that are square in shape (in which case none of the vertices on the chain would have any valid feature - hence it needs to be treated separately). Changed some function parameters to const as Daniel had suggested.
 
 
7/7/16 - Tried fixing the memory corruption error with the priority queue, but couldn't. Check the stitching algorithm code. Went through the overlaps fixing algorithm for coding.
 
 
8/7/16 - Held up with some other work. Thought about changes to the existing zipper module code, and the stitching algo.
 
 
9/7/16 - Zippering gaps modified to include boundary edges. bool vector is used to avoid multiple checks to the same chain of edges. Stitching gaps algo modified slightly. Zippering - vertex contraction has not been done right. Debugging.
 
 
10/7/16 - Weekend
 
 
11/7/16 - Issues with vertex contraction resolved. Facelist starting edge references are out of place. Degenerate cases wrt orientation of triangles causing those issues. Changes to stitching gaps module outline.
 
 
12/7/16 - deleteEdge() function changed to cope with the degeneracy wrt orientation. Works fine. Checking the functions that might be causing the memory issues. Added changes to stitching algorithm.
 
 
13/7/16 - Memory issues resolved. Found cases where triangles might cross over each other due to the transformations. Thus, need to check if the orientation of the triangle changes. Changes made in the rt_bot_internal struct pointer not being reflected with draw. Need to figure out.
 
 
14/7/16 - Changes could be seen. But with distorted triangles. Changes for orientation check was added. Works. Few more cases of erroneous detection of feature edges, looking into them.
 
 
15/7/16 - Zippering gaps module works fine. Need to test with other meshes where the tolerance and the size of the triangles is not so comparable.
 
 
16/7/16 - Cleared out dead code. Wrote includes properly. Added a bit of stitching code.
 
 
17/7/16 - Weekend
 
 
18/7/16 - Had to test a few times with a mesh that needs no healing. Made changes for the case when the defect is a square (the normal case does not work, special case was written for a square) - works fine. Created two disconnected hemispheres on Blender to test, and exported the geometry as an .obj file. Testing it.
 
 
19/7/16, 20/7/16 - Was not well. Couldn't spend much time. Fixing two hemispheres works okay, but needs more testing.
 
 
21/7/16 - Came up with results.
 
 
22/7/16 - 25/7/16 - Fell ill again
 
 
26/7/16 - Made changes according to Daniel's suggestions.
 
 
27/7/16 - 11/8/16 - Had fallen ill and couldn't get to work.
 
 
12/8/16 - Outlining skewed lines support for 3-D lines (while calculating feature).
 
 
13/8/16, 14/8/16 - Debugging the instance of the heal command being called on a mesh on which the heal command had already been called.
 
 
15/8/16 - Debugging the coplanar condition addition while finding the closest edge.
 
 
16/8/16 - Debugging errors in making the DCEL, with a torus.
 
 
17/8/16 - Testing with meshes to figure out the point of breaking. Wrote blogs for weeks missed.
 
 
18/8/16 - Started with taking tolerance as user input. Errors popped up. Could not identify what was causing them even after falling back to old code.
 
 
19/8/16 - Build error resolved. Added feature to take in zipper tolerance as user input. Debugged with Daniel's suggestions. Error seems to be with setting the incident face reference - because of the orientation checking. With the spheres the origin was within the whole sphere, so orientation was consistent. With the torus, the origin is not inside the object, so inconsistencies with orientation don't allow some edges to get the right incident face. Hence, the next and previous references get messed up too. Yet to think of a fix.
 
 
20/8/16 - Dealing with the mesh not being completely healed because some vertices don't get valid feature pairs, even while having them. Added a special case for when the hole is triangular to reduce compute time.
 
 
21/8/16 - Had missed a condition in checkAndSetTwins() routine. Debugged and found it. This prevented the case where, when a mesh is healed with the heal command, and the heal command is called again on the mesh, the algorithm hung. This was because of the presence of singular vertices which was in turn because the mesh was not completely healed. This was rectified.
 

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)