編輯推薦

工作的目的也許是對產值的追求,而那句害人的“真理”說是什么最好的方法就是自己最熟悉的方法,也只是一種懶惰的借口,但是在快速追求產值的緊逼下,其成為了既定思考的方式,卻殊不知那只是避免轉換思維,學習新事物與深度思考的又一種重復性與思維惰性的“手工”勞作。
《學習PYTHON—做個有編程能力的設計師》從編程設計角度闡述利用Python腳本語言輔助設計的方法。在廣大設計師從來沒有想過設計行業(yè)與編程會發(fā)生關聯時,編程設計已經對傳統(tǒng)設計方法產生了影響,甚至變革。編程語言通過圖形程序與設計構建了最為直接的聯系,使得設計的過程更加智能化,利用語言的魔力實現更復雜設計形式的創(chuàng)造和解決各類設計以及分析的問題。
設計者也開始以編程語言的邏輯思維方式,一種與直觀的設計觀照截然不同的思維方式,思考設計形式這個在理性邏輯思維與感性設計思維之間不斷跳躍的過程,兩者之間不斷地影響與融合,這正是使用編程語言來輔助設計帶來的影響,更是一種讓設計者樂此不疲的設計“游戲”,因為編程讓設計過程更具創(chuàng)造力!

圖書簡介

《學習PYTHON—做個有編程能力的設計師》不是純粹的Python編程學習,而是在學習基本Python編程語言時闡述輔助設計的方法,從Python Shell到RH_Python再到GH_Python,將Python真正作為設計者從事設計輔助的編程語言;同時這又不是純粹幾何形式編程的說明,而是包括Python編程數據結構、基本語句、函數與類的學習過程。
在掌握Python語言的數據結構、基本語句、函數、類與異常,并通過具體案例闡述深入了解實踐應用的方法之后,在“項目”部分探索與詳細闡述了十個案例,包括:
“折疊的過程- 圓柱體V 形與Mesh 頂點排序”,結合Kangaroo動力學模塊模擬折疊的過程,使用Python編寫符合建立Mesh格網輸入條件的點組織模式;
“盒體的展開”,講述了如何把一個盒體連續(xù)展開在一個平面上,并獲取多個解的方法;
“解讀蟻群算法與TSP 問題以及在GH_Python 中的實現”,蟻群算法是一種用來在圖中尋找優(yōu)化路徑的機率型算法,靈感來源于螞蟻在尋找食物過程中發(fā)現路徑的行為。本部分詳細闡述蟻群算法并探索將其在Grasshopper平臺中的Python腳本中實現和解決TSP旅行商問題;
“最短路徑與Dijkstra 算法”,最短路徑問題是圖論研究中經典算法問題,旨在尋找圖中兩節(jié)點之間最短的路徑,本部分使用Dijkstra 算法在GH_Python中實現;
“探索性研究適宜分析方法GH_Python 下的實現”,適宜性分析的方法一般是在地理信息系統(tǒng)平臺中實現,例如ArcGIS。適宜性分析在城鄉(xiāng)規(guī)劃和風景園林中經常被用到,根據應用的范疇又可以細分為城市建設用地的評價、環(huán)境影響評價、自然保護區(qū)及旅游區(qū)用地評價、區(qū)域規(guī)劃和景觀規(guī)劃等。本次項目主要的研究目的是如何將適宜性分析在GH_Python 中實現;
“使用遞歸解決八皇后問題與滿足特定間距要求的建筑布局”, 八皇后問題是一個以國際象棋為背景的問題:如何能夠在8×8 的國際象棋棋盤上放置八個皇后,使得任何一個皇后都無法直接吃掉其他的皇后。為了達到此目的,任兩個皇后都不能處于同一條橫行、縱行或斜線上;
“解讀生命游戲_ 元胞自動機與建立生長模型”, 元胞自動機(Cellular Automaton),是一個時間和空間都離散的動力系統(tǒng)。散布在規(guī)則格網(Lattice Grid) 中的每一元胞(Cell) 取有限的離散狀態(tài),遵循同樣的作用規(guī)則,依據確定的局部規(guī)則做同步更新。大量元胞通過簡單的相互作用而構成動態(tài)系統(tǒng)的演化;
“GoogleEarth.KML 文件的調入程序”,規(guī)劃設計過程中經常借助于Google Earth來尋找和定位地標和路徑,那么如何將地標和路徑直接加載到Gasshopper平臺中,是本部分需要解決的問題;
“解讀粒子群(PSO) 算法與建立點運動程序”,粒子群算法,也稱粒子群優(yōu)化算法(Particle Swarm Optimization),縮寫為PSO,模擬鳥群的捕食行為,通過追隨當前搜索到的最優(yōu)值來尋找全局最優(yōu)解;
“城市土地利用結構信息熵”,在信息論中,熵是接收的每條消息中包含信息的平均量,又被稱為信息熵、信源熵等。消息往往代表來自分布或數據流中的事件、樣本或特征。在規(guī)劃設計領域引入信息熵,研究土地利用結構,分析功能的融合程度,信息熵的高低可以反映城市土地利用的均衡程度,熵值越高,表明不同職能的土地利用類型數越多。本部分案例主要通過Python 程序,闡述信息熵和均衡度公式計算過程。

圖書目錄

9 Python+PythonScript+GhPython
17 數據結構
18 1 列表(List)
19 1.1 索引
25 1.2 列表的基本操作
32 1.3 列表的方法
43 2 元組(Tuple)
43 3 字典(Dictionary)
44 3.1 Python 的字典與Grasshopper 的樹型數據結構
48 3.2 Python 字典的方法
50 3.3 GhPython 與樹型數據結構
66 4 字符串(String)
66 4.1 用Python 替代Grasshopper 處理字符串的方法
72 4.2 字符串格式化
84 4.3 re(regular expression) 正則表達式
95 基本語句
96 1 print() 與import
96 1.1 print()
97 1.2 使用import 導入模塊或者函數
97 2 賦值的方法
98 3 循環(huán)語句
105 4 條件語句
117 函數
118 1 創(chuàng)建函數
136 2 隨機模塊
141 3 遞歸
155 4 時間模塊
163 類
165 1 創(chuàng)建類
169 2 迭代器
172 3 生成器
177 異常
181 項目
183 Case_1: 折疊的過程- 圓柱體V 形與Mesh 頂點排序
191 Case_2: 盒體的展開
199 Case_3: 解讀蟻群算法與TSP 問題以及在GH_Python 中的實現
211 Case_4: 最短路徑與Dijkstra 算法
221 Case_5: 探索性研究適宜分析方法GH_Python 下的實現
251 Case_6: 使用遞歸解決八皇后問題與滿足特定間距要求的建筑布局
257 Case_7: 解讀生命游戲_ 元胞自動機與建立生長模型
265 Case_8:GoogleEarth.KML 文件的調入程序
276 Case_9: 解讀粒子群(PSO) 算法與建立點運動程序
283 Case_10: 城市土地利用結構信息熵

相關書籍推薦

<
>