Menu
Logged-In As
ACCOUNTNot Logged In
Fix permuted vertex lists from g-iges+iges-gBRL-CAD
Status: ClosedTime to complete:
72 hrs
Mentors: Sean
This is a follow-on to task http://www.google-melange.com/gci/task/view/google/gci2013/5345276583739392
Basically, use the information from the suspected cause of the bug, which has been narrowed down to just a few locations in the code, and see if a fix can be devised and demonstrated.
Provide a patch that fixes the permutation, either by changing the g-iges export or the iges-g import (or both if necessary).
Uploaded Work
File name/URL | File size | Date submitted | |
---|---|---|---|
IGES_patch1.diff | 744 bytes | December 14 2013 03:13 UTC |
I would like to work on this task.
This task has been assigned to Andromeda Galaxy. You have 72 hours to complete this task, good luck!
Hi,
I have fixed the problem that I identified in http://www.google-melange.com/gci/task/view/google/gci2013/5345276583739392; however, I have found another problem: even when the vertices are read in in the correct order, with the orientations changed as I suggested, the Make_planar_face function calls nmg_cmface with the list of vertices, and throws away the edge information, which means that the vertex lists are still permuted. I think that the way to fix this would be to rewrite Make_planar_face to use nmg_m* functions to create the face itself from a loop from the edges that it reads in, instead of using nmg_cmface.
After I fixed the first problem, I've spent a large amount of time identifying this second problem, and I wanted to know if my analysis seems correct and whether you want me to submit the first fix and treat this as a different task. I've already spent more than 2-3 hours on this task and I think that attempting to write a face constructor like this would take a considerable amount of time.
The work on this task is ready to be reviewed.
Hi,
The diff that I uploaded fixes the error looked at in the first task, but there are still some other errors --- see my previous comment "Data loss in iges-g; progress and request for feedback". Is this sufficient to mark this task as complete? I've spent something like 8 hrs investigating the problems after the fix provided here, and I think I know what needs to be done, but it will take a large amount of time (again, see previous comment).
Congratulations, this task has been completed successfully.
Andromeda, can't really say whether your analysis is correct or not and we'll not have time to dig into a debugging session on the issue until after GCI, so we can just claim victory for now on your efforts. I'd certainly be happy to create a follow-on task if you want to explore rewriting Make_planar_face() to retain/use the edge orientation information.
I think that fixing this will probably take more time than would work well for GCI; however, I would be interested in attempting to fix this post-GCI. Also, I think that you suggested that I get a Sourceforge account; I was wondering what that would be useful for in connection to GCI; could you please elaborate?