iT邦幫忙

鐵人檔案

2018 iT 邦幫忙鐵人賽
回列表
Modern Web

在Three.js探索CAD的奧秘 系列

CAD的英文全名是Computer Aided Design,中文名稱是『電腦輔助設計』,正如其名它是個能夠幫助我們透過電腦輔助進行數位化的設計。過去我們在工業設計、美術設計都學會了各種設計軟體的操作方法,但是否曾經想過這些軟體到底是怎麼做出來的呢? 如果你也擁有了這份好奇心,就讓我們一起透過Three.js這套JavaScript繪圖函數庫,逐步從簡單的二維的曲線曲面開始,一步步的走進三維網格曲面模型的世界,建立一套屬於自己的Web-based繪圖平台吧!

鐵人鍊成 | 共 30 篇文章 | 23 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day 21 : 模型塗抹效果

前言 塗抹效果,是在CAD軟體中常見的編修方式,在二維空間中是指按下滑鼠的同時開始繪圖,直到放開滑鼠後才停止繪圖的效果。而在三維空間中則是可透過時間函數的加入,...

2018-01-09 ‧ 由 QQBoxy 分享
DAY 22

Day 22 : 三角網格細分

前言 網格細分 (Grid Refinement),是CAD圖學中重要的基礎方法,目的是網格進行細緻化以提升解析度,經常配合各種編修工具合併使用。 網格細分方法...

2018-01-10 ‧ 由 QQBoxy 分享
DAY 23

Day 23 : 網格細分實作

前言 本篇介紹的是邊分裂的方式,網格細分需要大量使用到先前所學到的拓樸觀念,實作也與單純的觀念理解上有些許的不同,在撰寫的複雜度也有所提升因此分為兩次說明。 本...

2018-01-11 ‧ 由 QQBoxy 分享
DAY 24

Day 24 : 封閉網格與非封閉網格

前言 封閉網格,是指實體模型,其網格是完全包覆並佈滿整個模型表面,通常用於需要真實製造出完整實體的情況;非封閉網格,則是指薄殼模型,其網格不一定要完全包覆整個模...

2018-01-12 ‧ 由 QQBoxy 分享
DAY 25

Day 25 : 球範圍選擇

前言 球範圍選擇,指的是以滑鼠點選的位置為中心點,一定半徑內的所有網格點資訊,這種方法可以用來模擬圓形的筆刷,接觸到三維空間中的物體表面。 球範圍選擇 首先改寫...

2018-01-13 ‧ 由 QQBoxy 分享
DAY 26

Day 26 : 三角網格平滑變形

前言 平滑階梯函數(Smoothstep),屬於S型函數(Sigmoid function),是一種常用的繪圖函數,在繪圖領域通常將最小極限設為0,最大極限設為...

2018-01-14 ‧ 由 QQBoxy 分享
DAY 27

Day 27 : 三角網格邊翻轉

前言 邊翻轉(Flip edge),是指某邊AB相鄰三角形所圍成的四邊形ABCD中,將邊翻轉為CD而改變網格原有的結構,這種網格操作行為可用於處理狹長形三角網格...

2018-01-15 ‧ 由 QQBoxy 分享
DAY 28

Day 28 : 網格邊翻轉實作

前言 上回提到邊翻轉的方法,而偵測邊線錯誤的方法其實也不只一種,本次要來試著實作看看。 邊翻轉前 首先修改 Viewer 模組的 add 函數,增加一個引數 t...

2018-01-16 ‧ 由 QQBoxy 分享
DAY 29

Day 29 : 三角網格布林

前言 三角網格布林(Boolean),是一個基本的網格編輯功能,包含聯集、差集、交集處理。 三角網格布林模組 網路上已經有現成的模組,是由 chandlerpr...

2018-01-17 ‧ 由 QQBoxy 分享
DAY 30

Day 30 : CAD的未來

前言 有些人會認為筆者不過就是把桌面版軟體的功能搬到 Web-based 上,但是真的只有這樣嗎? 最後一天就來談談關於 CAD 的未來吧。 進步飛快的CAD...

2018-01-18 ‧ 由 QQBoxy 分享