校際選修

115-1 選課時程

進行中

  • 初選第一階段 6/15/2026
  • 初選第二階段 6/22/2026
  • 校際選修 8/24/2026
  • 初選第三階段 8/31/2026
  • 開學後加退選 9/7/2026
  • 逾期加退選 9/21/2026
選課資源

物件導向幾何建模

Object Oriented Geometric Modeling

學期
111-2
學分
3 學分
當期課號
536123
永久課號
ENME30058
開課單位
機械工程學系
授課教師
黃衍佐
類別
選修
上課時間表
週五
2
09:00–09:50
物件導向幾何建模
3 節連堂
3
10:10–11:00
4
11:10–12:00

* 根據陽明交大上課時間表所列

概述

The knowledge of geometric modeling is developed along with the computer graphics for computer-aided design and manufacturing (CAD/CAM). Many software based on geometric modeling methods are readily available in both the academia and industry. This course is intended to further investigate (1) the formulations of various geometric entities that are embedded in these packages, (2) object-oriented programming (OOP) method (Visual Studio C++) to construct the geometric model, and (3) computer graphics knowledge to render these entities. The content of the teaching will cover the subjects below, but may skip some depending on the progress of the class. 1. Mathematical Techniques: matrix, explicit & implicit functions, ... 2. Object Oriented Programming with C++ (or Python): inheritance, encapsulation, ... 3. Computer Graphics: coordinate transformation, viewing, windows, ... 4. Curves: algebra & geometric form, parametric space, 4-point, Bezier, composite, ... 5. Surfaces: parametric space, 16-point, 4-curve, ruled, Bezier, composite, ... 6. Solids: Algebra and Geometric form, parametric space, composite, ... 7. Analytic Property: intrinsic, minimum distance, ...

先修科目

(1) English – Reading (2) Calculus and Algebra (3) must have programming experience (C, C++, Python, etc.), Object-Oriented Programming (OOP) a big plus.

教學方式

LAB MATERIAL 1. Visual Studio C++ 2. OpenGL with C++ if necessary (*) Service to this class (as teamwork contribution) will be rewarded with extra points (學生之班級服務貢獻將可作為課業成績之加分考量) (*) Teacher has the unlimited right to adjust student’s final score at teacher’s full discretion (任課教師有評定成績之最後決定權, 包含 加分/減分) Note 1: In-Class practice and communication are strongly suggested for better learning. Note 2: Submit Homework assignment to TA. Late submission of the assignments is not allowed. Note 3: Homework assignments must be done and written by each student himself or herself unless otherwise notified. Duplicating, copying homework from other student(s) is not allowed. Note 4: "Midterm" or "Final" could be either a written test or a project

評分方式

Tentative (subject to change during semester) 1. Participation, Homework, Quiz 30 % 2. Midterm Test or Project 30 % 3. Final Exam or Project 40 %

課程大綱
  • Object Oriented Programming and Computer Graphics Class/Object, Encapsulation, inheritance, polymorphism, Coordinate transformation, rendering, etc.
  • Curves
  • Surfaces
  • Solids
  • Analytic Properties
  • Midterm
  • Final
  • Mathematical Techniques
週次計畫
週次主題
第 1 週1. Overall View Syllabus 2. Visual Studio C++ exercise 3. basics, "Hello World"
第 2 週1. Visual Studio C++ Basic & exercise 2. issue HW1
第 3 週1. Visual Studio C++ Basic & exercise 2. issue HW2
第 4 週1. Visual Studio C++ class & exercise 2. Example 3. issue HW3
第 5 週1. Visual Studio C++ class & exercise 2. OpenGL setup & exercise 3. ontinue HW3
第 6 週1. OpenGL parabola for 2D mapping 2. show colored cube, rotation, conic curve (helix) 3. practice OOP on 2D parabola and upload class sample 4. issue HW4
第 7 週1. Quiz#1 2. Hermite curve practice OOP on Hermite 3. show and give HW5 6. issue HW5
第 8 週(1) end Hermite Curve (2) start Bezier Curve (3) practice OOP on Bezier (4) issue HW6
第 9 週(1) Bezier curve (2) midterm (written test + programming)
第 10 週(1) midterm (2) review midterm (written, programming) end Bezier Curve (3) issue HW7
第 11 週(1) B-Spline, periodic curve, matrix form (2) practice OOP on uniform B-spline (3) issue HW8
第 12 週(1) uniform b-spline, (2) Hermite Surface (3) plane, cylindrical, ruled surface (4) issue HW9
第 13 週(1) Bezier Surface (2) color painting on 3D cube (3) practice 3D cube in class (4) explain final project (5) issue HW10
第 14 週(1) B-Spline Surface (2) Surface normal vector, color painting by normal vectors (3) demo final project (4) issue HW11
第 15 週(a) Tricubic, Bezier, B-Spline Solids (b) Solids by linear transformation, parameterization, sweeping, deformation, and degeneration (c) demo final project (4) in-class practice
第 16 週student's final project presentation and evaluation
第 17 週Q&A and review after final
第 18 週
教科書

1. Geometric Modeling by Michael E. Mortenson, 3nd edition, 2006 2. Computational Geometry: Algorithms and Applications by O. Cheong, M. Kreveld, M. Overmars, 3rd edition, 2008 3. Absolute C++by Walter Savitch and Kenrick Mock, 6th edition, 2015 4. Beginning C++20 by Ivor Horton and Peter Van Weert, 6th edition 5. Computer Graphics Programming in OpenGL with C++, by V. Gordon and J. Clevenger, 2018

Office Hours
地點
classroom office (NYCU EE5-444)
時間
1. before and after class time 2. by appointment
聯絡方式
yearnhwang@nycu.edu.tw yearnhwang@gmail.com