MAEG 5030: Geometry Computing for Design and Manufacturing

Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due

MAEG 5030:

Geometry Computing for Design and Manufacturing

Remarks on Coding Assignment & Project

Project and Oral Presentation

 Topics for course project (oral presentation):

 Form a group of 3 students;

 Selected from your own research project/related field that connected with geometry computing (design, manufacturing, robotics, …);

 Or selected topics from given papers, available at

 https://www.dropbox.com/scl/fo/vmleua68rvr8mrl5f5qxy/h?rlkey=b9agoqzzzgvy9w16n1fx1p7x5&dl=0

 Oral Presentation will be 7 mins + 3 mins Q&A, it should cover

 What task is solved and how did authors formulate it as geometry processing problem

 Which algorithm is proposed

 What’s the technical contribution of the work and why it outperform with existing work

Project and Oral Presentation

 Oral Presentation (each student should present 1-2 parts)

 Project report (2-3 pages, IEEE standard, double column, pdf format):

 Introduction of the problem

 Formulation of geometry computing problem

 Pseudocode of the algorithm

 Analysis of the method and contribution

 Provide the contribution statement.

 Example: xx: Writing – xx section; Discussion xx; Slicer making xx page xx-xx; Coding Implementation xx; Algorithm Writing xx;

Coding Assignment (C++/python)

 CRML-code: using CMAKE for cross-platform building.

 Cmake: https://cmake.org/download/

 Eigen Library: https://eigen.tuxfamily.org/index.php?title=Main_Page

 Suggest to use Visual Studio 2022 for the project.

 https://visualstudio.microsoft.com/vs/community/

 Make sure you have the c++ for desktop development installed.

 Qt visualizer (Ver. 5.12!)

 https://download.qt.io/archive/qt/5.12/5.12.3/

 Recommended install position: C:\Qt\Qt5.12.3

 Make sure you select MSVC 2017 64-bit during the installation

 Qt creator – write function and add button.

 Sample function will be provided.

Usage of coding framework

 Select the folder of source code and build direction.

 Push Configure bottom and select x64 as the optional platform.

 Add the path in line 41 of Cmake file

 set(CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH}

 C:\\Qt\\Qt5.12.3\\5.12.3\\msvc2017_64\\lib\\cmake\\Qt5")

 Click Generate and open project in visual studio

 Right click “CRML” in solutions and set as start up project

 Generate Solutions

 Note: You can also finish the assignment with coding language you feel comfortable with.

Coding Assignment 1

 Handle documents (pdf file) with screenshot of the code, and graphics pictures demonstrate the result.

 Hint on Assignment 1:

 1. Search Data Structures (30%): To build the hash data structure of point set (e.g., 20 x 20 x 20 boxes)

 2. Search k-neighbors of each point (30%)

 3. Using Principal Component Analysis (PCA) to compute the normal of every point by its neighbors (30%)

 4. Display the point set with normal estimated from PCA (10%)

 5. Bonus: ICP-based algorithm for two point clouds (30%)

Coding Assignment 2

 Handle documents (1 pdf file) with screenshot of the code, and graphics pictures demonstrate the result.

 Hint on Assignment 2:

 1. Read point cloud, and corresponding UV coordinate (10%)

 2. Build sparse matrix A for B-spline surface fitting (40%)

 3. Construct matrix b and solve linear system (10%)

 4. Uniformly sample vertex on b-spline surface, build topology connection, and create vertex table and face table. (30%)

 5. Construct triangle meshes for point cloud 1 - 4 (20%)

 6. Bonus: Compare the performance of different parameters (number of control points and order) of a B-spline surface.

Evaluate the fitting error. (30%)

Coding Assignment 3

 Handle documents (1 pdf file) with screenshot of the code, and graphics pictures demonstrate the result.

 Hint on Assignment 3

 1. Write iterative way of surface smoothing – based on connectivity (40%)

 2. Using Laplace operator for surface smoothing (40%)

Hint: Build sparse matrix A as Laplacian Operator

 3. Compare the performance between two method with different iteration time (20%)

 4. Bonus: Implementing cotangent weights of Laplacian Operator. (30%)




发表评论

电子邮件地址不会被公开。 必填项已用*标注