Skip to main content
Cập nhật lần cuối: 14/05/2026

Module 3 — Parametric Surfaces Nâng cao & Vector Geometry

Thời lượng: ~6 giờ · Độ khó: Nâng cao

Mục tiêu: Nắm BRep analysis chi tiết, biến dạng geometry theo surface, làm việc với mesh trong GH và thành thạo vector/plane transforms phức tạp.


3A — Surfaces Nâng cao

BRep Analysis

Deconstruct Brep  → Faces (surfaces) + Edges (curves) + Vertices (points)
Brep Edges → tất cả curves biên
Brep Wireframe → tất cả isocurves để hiển thị

Tính toán khối lượng/diện tích:

Area    → diện tích bề mặt + centroid
Volume → thể tích (chỉ cho closed Brep) + centroid

Phân tích từng face:

Deconstruct Brep → Faces
Area (Faces) → diện tích từng mặt riêng biệt

Surface Morph — Biến dạng Geometry theo Surface

Surface Morph là kỹ thuật "bọc" geometry lên surface — thay vì Orient (giữ hình dạng, chỉ xoay/dịch chuyển), Surface Morph biến dạng geometry theo độ cong của surface.

Component: Surface Morph
Input:
- Surface (S) → surface mục tiêu
- Geometry (G) → geometry cần morph
- Reference Box (R) → bounding box của geometry gốc
Output: Geometry đã morph theo surface

Workflow:
1. Bounding Box của geometry gốc
2. Divide Surface → UV grid
3. Isotrim (từng ô UV)
4. Surface Morph (Geometry, Isotrim box, Reference box)
→ Mỗi ô UV chứa 1 bản copy đã biến dạng theo cong của surface
Hình minh họa

[Ảnh: Module hình học phẳng được Surface Morph lên dome — geometry biến dạng theo cong]

Mesh trong GH

Tạo Mesh từ đầu:

Construct Mesh → Vertices + Faces → Custom mesh
Mesh Plane → mesh lưới từ rectangle
Mesh Sphere → mesh cầu
Mesh Box → mesh hộp

Chuyển đổi:

Mesh Brep      → NURBS/SubD → Mesh
Brep to Mesh → tương tự với nhiều option hơn

Xử lý Mesh:

Weld Mesh      → hợp nhất vertices gần nhau (giảm seam)
Reduce Mesh → giảm số polygon (LOD)
Smooth Mesh → làm mượt (Laplacian smoothing)
Offset Mesh → tạo độ dày

Triangulation:

Mesh Triangulation → chia quad faces thành triangles

Kiểm tra Mesh:

Mesh Vertices  → tọa độ tất cả vertices
Mesh Faces → connectivity của faces
Mesh Normals → hướng normal từng vertex/face

3B — Vector Geometry Nâng cao

Perpendicular Frame

Thay vì Curve Frame (sử dụng tangent), Perpendicular Frame tạo frame ổn định hơn dọc theo curve — không bị "xoắn":

Perp Frames    → list of frames dọc curve, không xoắn
Input: Curve + N (số frames)
Output: Frames aligned perpendicular to curve

So sánh:
Curve Frame → có thể xoắn tại các chỗ cong mạnh
Perp Frame → ổn định hơn, tốt hơn cho architectural elements

Align Plane

Chỉnh hướng của plane giữ nguyên origin nhưng align với hướng reference:

Align Plane    → giữ origin, align Z-axis với vector
Input: Plane + Vector (hướng mới)
Output: Plane đã align

Transform by Vector

Move với List of Vectors:

Move (Geometry, Vector List)
→ Mỗi geometry item được dời theo vector tương ứng
→ Nếu Tree matching: Longest List = đối tượng cuối cùng được dời nhiều lần theo các vector khác nhau
→ Nếu dùng Graft trên Geometry: mỗi copy đi theo vector riêng

Array theo hướng bất kỳ:

Unit Vector (direction) → Amplitude (spacing * index) → Move
= tạo mảng dọc theo hướng bất kỳ, không chỉ theo trục X/Y/Z

Transform by Plane — Orient One/Two Planes

Orient (1 plane):

Component: Orient
Input: Geometry + Source Plane (A) + Target Plane (B)
→ Mapping toàn bộ hệ tọa độ từ A sang B
→ Origin dịch chuyển + Trục xoay theo đúng transform giữa A và B

Orient 2 Planes (kiểm soát tốt hơn):

Component: Orient - 2 Pts (hoặc Orient với explicit axes)
→ Xác định mapping chính xác X,Y,Z axes
→ Dùng khi orient component cần "nhìn về" một hướng cụ thể

Ứng dụng: Panel nghiêng theo pháp tuyến surface

Divide Surface → Surface Frames (local planes)
Panel geometry (flat, tại XY Plane)
Orient (Panel, XY Plane, Surface Frame)
→ Panel dựng đứng theo pháp tuyến surface tại mỗi ô

Plane Fit từ Point Cloud

Plane Fit    → tìm plane tốt nhất fit với tập hợp điểm
Input: List of points
Output: Best-fit plane

Ứng dụng:
- Tìm mặt phẳng của 1 nhóm cột
- Kiểm tra độ nghiêng mặt sàn từ điểm đo đạc
- Reconstruct working plane từ scanned data

Bài tập Module 3

Đề bài: Tạo hệ panel bi-directional fin trên double-curved facade.

Input: NURBS surface dạng double-curved (twist hoặc saddle)
Workflow:
1. Divide Surface → Surface Frames
2. Tạo Fin geometry (rectangle mỏng đứng) tại XY Plane
3. Orient Fin theo Surface Frame → Fins đứng theo pháp tuyến cục bộ
4. Thêm 2 loại Fin xen kẽ (Weave): horizontal và vertical
5. Dùng Perp Frames cho các fin dọc edge curve (không bị xoắn)
6. Mesh 1 số panel: Convert to Mesh → Mesh Triangulation
→ So sánh NURBS panel vs. Triangulated mesh panel về trọng lượng file
Hình minh họa

[Ảnh: Double-curved surface với bi-directional fins — horizontal fins xen kẽ vertical fins]

Liên kết kiến thức

Nền tảng cần nắm

Mở rộng từ

Chủ đề liên quan