x3mesh is a small and simple script for converting a Matlab mesh consisting of faces and vertices into an x3dom object in an html file.
This allows 3d objects to be displayed and interacted with on the web (rotate and zoom).
Run demo1.m and demo2.m to try it out. The script produces a .html files which can be opened in a browser.
An example of the output can be found here:
The script takes advantage of the x3dom web format. More details can be found here:
Not supported by internet explorer. Use a recent Firefox, Chrome or Safari browser.
1) Added better optional argument parser
2) Added option to set vertex color
3) Added option so set mesh to auto-rotate
Hi Ben, awesome program!
Hi Scott. Thanks. This version doesn't support color unless you manually edit the html file... But that sounds like a good idea. I will update it to support face color when I get a chance (give me a few days).
Hi, very nice, thank you. Is it possible to have a different color assigned to each face which could be viewed in the html file?
Thanks. The easiest way to create a mesh from is a volume using isosurface.
For example see Example 1:
You can plot a mesh in matlab using:
[x,y,z,v] = flow;
p = patch(isosurface(x,y,z,v,-3));
view(3); axis tight
You can export this same mesh to html using something like:
[x,y,z,v] = flow;
x3mesh(fv.faces, fv.vertices, 'Matlab_flow', 0.3, 'some more text')
I think I will add this as another example.
Great idea, Ben. But how do you get the data in the mesh structure example_mesh.mat
Thanks a lot,
Linked to github
added better demo files and surf export example
added ability to set mesh color and autorotation. Improved function parsing using inputParser.
added a second demo file
update title to make it clearer
added note about internet explorer not being supported