《学习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: 城市土地利用结构信息熵
Excel高级报表宝典 本书特色 全面学习Excel报表开发的技术和策略。掌握Excel报表开发的相关工具和访问数据源的方法。实例验证Excel报表技术的核心特...
JavaScript专业开发人员必须具备的一个技能是能够编写可测试的代码。《编写可测试的JavaScript代码》的目标是教授如何为客户端和
尼可拉斯.卡爾(NicholasG.Carr)知名作家兼思想家,專研商業策略、資訊科技及兩者的交叉點,在《哈佛商業評論》寫過包括〈IT沒有
《银行内部控制对信贷风险的影响研究》内容简介:本书依据信息不对称、委托代理、内部控制等理论,结合中国信贷市场制度背景,分析
《精益企业之现场管理实战(图解版)》内容简介:随着工业4.0时代的到来,以及“中国制造2025”行动计划的不断推进,许多企业开始更
《小顾聊中国画》内容简介:★一场有梗有料又新潮的国画艺术脱口秀,一本图文并茂、妙趣横生的中国画通史,让你忍不住爱上中国画。
●我们可能视谷歌为救世主,但是它却像恺撒般统治着世界。网络的神话导致我们假设那是个疯狂的、无法管理的领域,这真的是错得离
推荐系统开发实战 本书特色 本书是一本关于推荐系统从入门到进阶的读物,采用“理论 实践”的形式展开,不仅对各种推荐算法进行了介绍,还对算...
嘉格伦(GlennR.Jones)先生是杰士知识公司和杰士国际大学的创始人和首席执行官。杰士知识公司和杰土国际大学的下属机构自1961年
《数字档案资源社会化开发》内容简介:档案信息资源开发是对档案内容的一种再现叙事。长期以来,这种再现叙事的主体主要是保管档案
《河南社会治理发展报告(2017)》内容简介:本书从社会安全、矛盾化解、社会组织、公共服务、社会公平五个维度,对河南省社会治理
Thistitleisabouthowourgreatestinventionmakesusricher,smarter,greener,healthieran...
《人机交互:以用户为中心的设计和评估(第6版)》内容简介:本书计算机系统、互联网、移动终端,带动了人类生活全面的数字化、信息
FromthecoauthorsoftheNewYorkTimesbestsellerAbundancecomestheirmuchanticipatedfol...
《锂离子电池智能制造》内容简介:本书是“21700动力锂电池智能制造新模式项目”的结题成果,项目归口管理部门是工业和信息化部。本
结构动力分析的MATLAB实现 本书特色 本书系统介绍了各类结构动力问题进行分析求解,如:线性结构的动力分析,非线性结构的动力分析,频域内结构动力分析,simu...
图书简介:这部具有开创性的著作为设计师、艺术指导和学生,无论他们的经验如何,提供了通向成功的设计的独特方法。在他对使视觉
实用Linux Shell编程 本书特色 本书系统地介绍了在linux系统中广泛使用的bash脚本语言。全书内容的安排由浅入深,体系合理。先讲解脚本的概念和学习...
Printedentirelyincolor,withhelpfulfiguresandsyntaxcoloringtomakecodesamplesappea...
《网络空间的劳动图景》内容简介:本书探讨的是传播政治经济学的新鲜话题。作者认为,网络用户劳动是互联网时代资本和劳动重构的产