3D Surface/Mesh to VRML Utility: mesh2vrml 1.0

Convert MATLAB 3D surface to ElevationGrid in VRML
Updated 1 Sep 2016

View License

The input is a m x n X-Y grid (equal intervals along both axes) with the value of Z(x,y) computed at each point as an input to the function. The output is a elevation.wrl VRML file that creates a ElevationGrid node with the appropriate coordinates.

Launch the startmeup.m file to do the conversion. Several surfaces are provided as example.

Since this is a version 1.0, several limitations exist and is open to improvement from the community:
1. The number of polygons are not optimized for the VRML. It simply operates on the same number of points provided.
2. The mesh grid defining the X-Y plane in MATLAB need to have equispaced intervals.
3. Z(x,y) needs to be computed by scanning along row X first and then for row Y.
4. No coloring information.

Note that the orientation of the reference frame in MATLAB needs to undergo change to conform to the VRML reference frame. (X->x, Z->y, Y->z)

Use the Scale node in the Tranform node of the VRML file to increase/decrease the size of the elevation grid. You can also texture it with an image to create landscapes.

You will need V-Realm Builder that ships with Simulink 3D Animation to view and edit the VRML file.

More information on the VRML ElevationGrid is here:


Cite As

Simulink Dude (2024). 3D Surface/Mesh to VRML Utility: mesh2vrml 1.0 (https://www.mathworks.com/matlabcentral/fileexchange/28014-3d-surface-mesh-to-vrml-utility-mesh2vrml-1-0), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Updated license