This assignment is 10% of your final grade. Late assignments policy:You have 3 grace days total for all of your assignments, you can use them whenever you want during the course. Please do not include Meshlab itself or any binaries.Īll emails should be received by Friday,, at 23:59. With the subject “DGP assign1” containing a zip file with your plugin. Send an email to Mikhail (bmpix at cs dot ubc dot ca) It contains coarse meshes with and without boundary. Inputs: A small set of inputs to debug your algorithm can be found here. For the description of this, please refer to the original paper, chapter 5 ("Boundaries"). The algorithm should work correctly if run multiple times from the menu.īONUS: You can get extra marks for implementing the sqrt(3) subdivision scheme that performs correctly on meshes with boundaries. Your plugin should create a menu item in Filters|Smoothing, Fairing and Deformation called Sqrt(3) subdivision, take only necessary input parameters, and perform one iteration of the algorithm on the loaded mesh. For each old vertex p with valence n, calculate its new position S(p) using locations p i of its direct neighbors on the unrefined mesh: replace every two triangles ABC and BCD with triangles ABD and ADC, if BC is an edge in the original mesh).ģ. Flip every original edge in the mesh (i.e. Download the MeshLab AppImage file from above link and save it on your Downloads folder. For each triangle in the original mesh, split it into 3 triangles by inserting a new vertex located at its center:Ģ. One iteration of Sqrt(3) subdivision scheme for closed meshes goes like this:ġ. The algorithm is explained in details in the original paper, here it is in a nutshell: Meshlab uses data structures from VCGLib, you can find a good intro on it here.Ĭoding:You should implement Sqrt(3) subdivision scheme for closed meshes as a filter plugin for MeshLab. For your convenience, in the solution there is a sample filter project which you can modify. Meshlab has a plugin-based architecture, so you will implement your subdivision method in a separate plugin (filter). You can find a guide how to create simple plugins for MeshLab here or (old copy of documentation) here. The structure of folders on your hard drive should look like The main solution file is meshlab_mini.sln. Linux/MacOS, other compilers) please refer to MeshLab website It's important that you set $QTDIR environment variable to point to your Qt installation location (e.g. If you're new to Qt, please follow the instructions. To compile the package under Windows (Visual Studio 2010), you should have Qt (ver 4.7.1 or later) and Qt VS Add-in installed on your machine (you can download both here). The assignment consists of two components: installation of Meshlab and coding. Perform simple data-structure operations. Learn to use a real-life medium size programming environment & data structure for meshes.Ģ. Sqrt(3) Subdivision Submission date: Friday, Jan 27 2012, 23:59
0 Comments
Leave a Reply. |