《学习PYTHON—做个有编程能力的设计师》不是纯粹的Python编程学习,而是在学习基本Python编程语言时阐述辅助设计的方法,从Python Shell到RH_Python再到GH_Python,将Python真正作为设计者从事设计辅助的编程语言;同时,这又不是纯粹几何形式编程的说明,而是包括Python编程数据结构、基本语句、函数与类的学习过程。
在掌握Python语言的数据结构、基本语句、函数、类与异常,并通过具体案例阐述深入了解实践应用的方法之后,在“项目”部分探索与详细阐述了十个案例,包括:
“折叠的过程- 圆柱体V 形与Mesh 顶点排序”,结合Kangaroo动力学模块模拟折叠的过程,使用Python编写符合建立Mesh格网输入条件的点组织模式;
“盒体的展开”,讲述了如何把一个盒体连续展开在一个平面上,并获取多个解的方法;
“解读蚁群算法与TSP 问题以及在GH_Python 中的实现”,蚁群算法是一种用来在图中寻找优化路径的机率型算法,灵感来源于蚂蚁在寻找食物过程中发现路径的行为。本部分详细阐述蚁群算法并探索将其在Grasshopper平台中的Python脚本中实现和解决TSP旅行商问题;
“最短路径与Dijkstra 算法”,最短路径问题是图论研究中经典算法问题,旨在寻找图中两节点之间最短的路径,本部分使用Dijkstra 算法在GH Python中实现;
“探索性研究适宜分析方法GH_Python 下的实现”,适宜性分析的方法一般是在地理信息系统平台中实现,例如ArcGIS。适宜性分析在城乡规划和风景园林中经常被用到,根据应用的范畴又可以细分为城市建设用地的评价、环境影响评价、自然保护区及旅游区用地评价、区域规划和景观规划等。本次项目主要的研究目的是如何将适宜性分析在GH_Python 中实现;
“使用递归解决八皇后问题与满足特定间距要求的建筑布局”, 八皇后问题是一个以国际象棋为背景的问题:如何能够在8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后。为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上;
“解读生命游戏_ 元胞自动机与建立生长模型”, 元胞自动机(Cellular Automaton),是一个时间和空间都离散的动力系统。散布在规则格网(Lattice Grid) 中的每一元胞(Cell) 取有限的离散状态,遵循同样的作用规则,依据确定的局部规则做同步更新。大量元胞通过简单的相互作用而构成动态系统的演化;
“GoogleEarth.KML 文件的调入程序”,规划设计过程中经常借助于Google Earth来寻找和定位地标和路径,那么如何将地标和路径直接加载到Gasshopper平台中,是本部分需要解决的问题;
“解读粒子群(PSO) 算法与建立点运动程序”,粒子群算法,也称粒子群优化算法(Particle Swarm Optimization),缩写为PSO,模拟鸟群的捕食行为,通过追随当前搜索到的最优值来寻找全局最优解
“城市土地利用结构信息熵”,在信息论中,熵是接收的每条消息中包含信息的平均量,又被称为信息熵、信源熵等。消息往往代表来自分布或数据流中的事件、样本或特征。在规划设计领域引入信息熵,研究土地利用结构,分析功能的融合程度,信息熵的高低可以反映城市土地利用的均衡程度,熵值越高,表明不同职能的土地利用类型数越多。本部分案例主要通过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 循环语句
105 4 条件语句
117 函数
118 1 创建函数
136 2 随机模块
141 3 递归
155 4 时间模块
163 类
165 1 创建类
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: 城市土地利用结构信息熵
《物联网与生态环境》内容简介:本书围绕党的十八大以来我国在生态文明建设和美丽中国实践的新特色,本书系统总结了物联网在生态环
《数学也荒唐》内容简介:本书用20个数学问题探讨了代数、概率学、统计学、平面几何、图论、拓扑学等主题,在意想不到的趣题中探讨
《跨界战争——商业重组与社会巨变》内容简介:本书是一本适合于大众阅读的经济类科普读物。作者以朴素而敏锐的眼光观察问题,以简
《唐朝定居指南》内容简介:《唐朝定居指南》是《唐朝穿越指南》的姊妹篇。以浅显风趣的笔调,介绍唐人衣、食、住、行、语言、娱乐
《Node与Express开发(第2版)》内容简介:本书系统地讲解了使用Express开发动态Web应用的流程和步骤。作者不仅讲授了开发公共站点
《方汉奇文集(增订版)》内容简介:《方汉奇文集》(增订版)收录了方先生半个多世纪的研究成果和心得,史料丰富、考据严谨、笔法
版本控制之道:使用Subversion,(第2版) 本书特色 《程序员修炼三部曲》丛书包含了三个部分,旨在帮助程序员解决在日常工作中遇到的一些具体问题,内容覆盖...
《思无邪》内容简介:钟鼓声响起,民间的乐音比黄钟大吕更轻盈灵动,更适合不受拘束的爱情、和着钟鼓声一起起舞的两个人,一如清空
详解AutoCAD中文版家具设计-[超值视频教学实战版]-附赠光盘 本书特色 本书针对当今日益增长的个性家具设计业,通过作者在实际工作中积累的一些经典案...
本书精选了100例在近三十年来对美国科技与经济发展有重要影响的专利。本书以简单通俗的方式对每一例专利从法律、科技和经济的角度
经典实例学设计-UG NX 10.0从入门到精通-(含1DVD) 本书特色 《经典实例学设计UG NX10.0从入门到精通》基于UGNX10.0中文版编写,共9...
《江苏风俗史》内容简介:本书是“江苏文脉整理与研究工程”研究成果,由南京大学博士生导师马俊亚教授完成。作者按时间顺序,对江
《安卓传奇:Android缔造团队回忆录》内容简介:本书讲述了Android如何从一个无法引起投资者兴趣的相机软件发展成为安装在全球30亿
《万用英语口语张口就来:日常篇》内容简介:“万用英语口语张口就来”系列丛书在选材上既注重全面性又注重实用性,涵盖了社会及日
《从“异域”到“旧疆”》内容简介:中国长期维持着大一统体制,是人类文明史上的独特现象,也是中国史研究的根本问题之一。本书考
《汉字大爆炸:字分•字源•字质》编辑推荐:笔画由人创造,和人类一样同时代表着生命的存在,每一个都被赋予着宇宙中物质存在的信息
作者简介:BoisyG.Pitre资深苹果开发专家,曾任Siri语音识别技术提供方Nuance公司Mac产品小组的资深软件工程师,参与开发了语音识
《区块链核心算法解析》内容简介:《区块链核心算法解析》介绍了构建容错的分布式系统所需的基础技术,以及一系列允许容错的协议和
“网页亲和力(WebAccessibility)”一词为台湾地区的说法,大陆地区多译做“网页可访问性”。前者易于理解,而后者则术语感更强
二00二年,一項名為「PD的思想」的設計展於東京Ozone展出,本書即為同名展覽型錄的擴充版,蒐錄了從1958年保羅‧漢寧生的「PH燈」