Hi Laijiren,
No problem with the change in plan. Your right there is no BREP tesselate currently implemented and that's the goal of your GSoC project. I'd suggest for your patch that you start out looking at the 'brep' command within 'mged'. This command can be used to generate information for various BREP features. This command has hooks for plotting a BREP surface, face, edge, trim, subdivision bounding boxes, surface normals, edge direction, knots, etc in both the 3D and UV. This command was put together piecemeal as a developer tool and could really use some cleanup and documentation. The 'usage' statement is also out of sync with the current command. The command source can be found in "src/librt/primitives/brep/brep_debug.cpp".
Example of using 'brep' command on 'brep.g' from the nurbs regression test:
mged> brep
Usage: brep brep brepname.s [command]commands:
info - return count information for specific BREP
info S [index] - return information for specific BREP 'surface'
info F [index] - return information for specific BREP 'face'
plot - plot entire BREP
plot S [index] - plot specific BREP 'surface'
plot F [index] - plot specific BREP 'face'
mged> brep rhino0.s info
surfaces: 6
3d curve: 11
2d curves: 23
vertices: 7
edges: 11
trims: 23
loops: 8
faces: 6
mged> brep rhino0.s plot F all 1000 <------- plots all the faces of BREP rhino0.s
mged> brep rhino0.s plot F 0-2 1000 <------- plots faces 0,1,2 of BREP rhino0.s
mged> brep rhino0.s plot SBB 1 <------- plots subdivision bounding boxes for surface 1 of BREP rhino0.s
The 'brep' command would also be a good place to start your initial tessellation test and visualization. Take a look and let me know what you think.
Also make sure to post your questions to the brlcad-devel list and not directly to me just in case I'm not able to get to my email. Plus there are a lot of seasoned brl-cad developers who have better insights than myself.
-Keith a.k.a. indianLarry
No problem with the change in plan. Your right there is no BREP tesselate currently implemented and that's the goal of your GSoC project. I'd suggest for your patch that you start out looking at the 'brep' command within 'mged'. This command can be used to generate information for various BREP features. This command has hooks for plotting a BREP surface, face, edge, trim, subdivision bounding boxes, surface normals, edge direction, knots, etc in both the 3D and UV. This command was put together piecemeal as a developer tool and could really use some cleanup and documentation. The 'usage' statement is also out of sync with the current command. The command source can be found in "src/librt/primitives/brep/brep_debug.cpp".
Example of using 'brep' command on 'brep.g' from the nurbs regression test:
mged> brep
Usage: brep brep brepname.s [command]commands:
info - return count information for specific BREP
info S [index] - return information for specific BREP 'surface'
info F [index] - return information for specific BREP 'face'
plot - plot entire BREP
plot S [index] - plot specific BREP 'surface'
plot F [index] - plot specific BREP 'face'
mged> brep rhino0.s info
surfaces: 6
3d curve: 11
2d curves: 23
vertices: 7
edges: 11
trims: 23
loops: 8
faces: 6
mged> brep rhino0.s plot F all 1000 <------- plots all the faces of BREP rhino0.s
mged> brep rhino0.s plot F 0-2 1000 <------- plots faces 0,1,2 of BREP rhino0.s
mged> brep rhino0.s plot SBB 1 <------- plots subdivision bounding boxes for surface 1 of BREP rhino0.s
The 'brep' command would also be a good place to start your initial tessellation test and visualization. Take a look and let me know what you think.
Also make sure to post your questions to the brlcad-devel list and not directly to me just in case I'm not able to get to my email. Plus there are a lot of seasoned brl-cad developers who have better insights than myself.
-Keith a.k.a. indianLarry
Hi,Keith Bowman!
My original plan of my patch is to solve some problems in some of primitives(e.g.ehy.brep),So I read some materials about it.but I find that it has been solved by phoenix when I review his patches.
So,I want to change my plan and do some patches about tessellation.Where can I to start it,please give me some advices?
I know that src/librt/primitives/bspline/nurbs_tess.c is the old method. I find that rt_brep_tess(...)in /brep/brep.cpp
is empty,Is that means we only have the old method by now?
The last question.Is there some tools to make tessellation test and visualize the result.
Cheers!
Laijiren
------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________ BRL-CAD Developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/brlcad-devel
