指尖上的艺术――如何运用代码发挥无限创意

写在前面

生成的艺术,指尖上的艺术,通过键盘上韵律般的敲敲打打,一幅幅美轮美奂的艺术作品便跃然于屏,这样的画作,包含了无穷的创意,糅合了现代计算机科技与传统绘画艺术,于我看来,难道还有比这更令人陶醉的美事吗?

用代码进行艺术创作,其过程与在画纸上进行绘画大同小异。当某个灵感创意突然在头脑中闪过的时候,例如地理刊物上的一个轮廓图案或是科学杂志上的某个函数图形,我会马上在画纸上打草稿,并记录下若干重要的描述字眼,力求最大限度地把想法留下。而后,我会通过编程(一般是通过Python和Nodebox)这个笔刷来进行画画。经过不断的细化处理,一步步调整形状、颜色、透明度等属性,最后在屏幕上得出我心中的作品。而这一切,都是透过修改相关绘图包或函数参数来实现的。例如,下面这个PY代码段里,我定义了一个用于绘制波形图的调色板。

之后,调用一个波形绘图函数,来进行具体的图形绘制:

随机参数的鬼斧神工

尽管多数情况下,我会把相关参数设置为静态变量,但是,若果在某些场合适当地使用随机动态参数,可能会收到意想不到的奇妙效果。甚至有时候,在看到最后的作品前,我都不能确定它会是什么样子。除了这种不可预知的奇妙,更为珍贵的是因为随机它更是不可复制的,是唯一的。

代码就是艺术家

计算机图形学是基于一定的数学逻辑的,在用代码进行创作的过程中,我能领略到一般情况下不能体会到,藏于数理中的结构之美、抽象之美以及复合之美。例如,以下的这个海啸海浪作品,这六幅作品都是通过同一函数来绘制的,这里使用了一个Nodebox绘图类-Cornu Curve(角度与曲线)。透过不同颜色、透明度、图层等参数的搭配,如此可爱的作品就出来了。

无限可能 图形复合

请先看以下这个作品―心眼

怎么样?还不错吧。如果你让我用画笔一笔笔地画出来,真的不知要画到猴年马月。这就是运用代码创作的另外一个重要用途―图形复合。只需执行一个多重循环或递归,把上百万不同颜色、透明度、纹理的线条交由计算机进行绘制,如此复杂的作品便能在弹指间迅速完成。记住,请把复杂的事情交给计算机。

其核心代码分别是,一个定义了笔刷和一个描述了绘制过程:

实用的创意设计

除了上述看似天马行空的作品,在实际生活中如衣物、雕塑、家居用品等的设计,代码创作也能大显身手。例如以下这个我们IDEO公司的Logo:

具体的代码,请看这里:

写在最后

计算机为我们的生活带来了不计其数的变化,现在,我们不妨也把它与艺术结合起来,去从机器的角度来为生活增添活力与色彩,开拓一个无限可能的艺术创作新境界。

注:本文所有示例的完整代码请点击这里进行下载,可以在安装了Nodebox的环境下运行

全球首家开发者服务商店为你摘自互联网,原文出自:labs.ideo.com

时间: 2024-10-10 10:44:37

指尖上的艺术――如何运用代码发挥无限创意的相关文章

TPYBoard:一款可以发挥无限创意的MicroPython开发板

今天给大家带来一款MicroPython开发板的拆解和测评.所谓MicroPython也就是运行在单片机上的Python.Python在国外是一门非常热门的编程语言,近些年在国内也被发掘与追捧, Python的开放.简洁.黏合正符合了现发展阶段对大数据分析.可视化.各种平台程序协作产生了快速的促进作用.自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢经过了太漫长的时间,然而可能也与国情与发展需求有着相当的关系.总之,越来越多人开始使用Python. 先简单说说C

指尖上的电商---(9).net开发Solr中的Facet功能

上一节中我们演示了在SolrAdmin中使用Facet功能来进行分组统计,这一节我们看看怎样使用.NET开发Solr中的Facet功能.在讲Facet功能的同时, 我们看下.Net中怎样使用Solr查询.使用的客户端工具是easysorl.net,大家可以去codeplex下载.这个工具很好用. 看如下图,下图就是我们要演示的功能   1.模糊查询 模糊查询就是搜索指定的汉字得到一个结果.下面的示例就是查询商品名称中包含白色的所有商品,最终得到的结果如下图 代码 public void Quer

C# FTP上传文件至服务器代码

C# FTP上传文件至服务器代码 /// <summary> /// 上传文件 /// </summary> /// <param name="fileinfo">需要上传的文件</param> /// <param name="targetDir">目标路径</param> /// <param name="hostname">ftp地址</param&g

在github上参与开源项目贡献代码

1 登录github, 点击自己感兴趣的repository的fork按钮,这样自己的github主页会有一个拷贝. 2 在自己本地修改同时保持和原来的repository同步: git remote -v, 看看自己当前git repository的configure, origin 表示自己的repository 要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,运行 git remote add [shortname] [url]:git remote add upstream

指尖上的电商---(10)SolrAdmin中添加多核

在Solr中有的时候,我们并不只是需要一种形式的索引文件,可能需要多种不同数据的索引文件,这时我们就可以在同一个Solr下面创建 多核.比如,我们在solr下面想把产品信息和分类信息各存放一个索引,并且各自有独立的配置和索引文件,不同核心的SOLRF放在不同的目录下, 这时候,我们就需要创建多核模式. 看如下图,创建了collection1和Product两个索引,每个有自己的配置和文件存储的地方. 具体操作步骤如下: 1.在tomcat下solr所指向的目录下创建一个Product目录,我这里

指尖上的电商---(7)Solr索引基本操作

我们来看下通过界面来操作SOLR,包括SOLR索引的添加,查询等基本操作. 所有的基本操作都通过如下地址来完成 http://localhost:8040/Solr/#/collection1/documents 1.添加和修改 点击界面做出的documents链接,索引的添加修改都是在这个界面完成的. Request-Handler 表示操作方式 Document Type:表示数据操作类型的传输格式,有XML,JSON等多种格式 Documents 表示要添加的数据 CommitWithIn

【DOM编程艺术】jquery代码

<script> $(resetFields); //相当于addLoadEvent(resetFields);会弹出1111 function resetFields(){ alert(111); } </script> resetFields函数 <script> $(resetFields); function resetFields(){ $('form input[placeholder]').focus(function(){ var input = $(t

第四季应潮:指尖上的Lync 2013

在"移动为先,云为先"的时代中,人们拿着手机办公已经成为趋势.那么,让我们一起响应移动的潮流,看看全新的Lync 2013在移动端都有哪些功能呢. 现在,让我们一起挥动手指,一起来体验一下吧. 指尖上的体验1:让你拥有最牛的手机通讯簿 如果我问你,你的手机通讯簿中是否放着公司所有人的所有联系方式,包括他们的手机.工作电话号码.家庭电话号码,E-Mail地址,甚至他们的照片吗?我想大家可能说怎么可能这么全.现在Lync就可以让你拥有最牛的通讯簿,只要用手机登录Lync,你就可以直接查找公

指尖上的消费

满世界的信息,灵动飞舞.卫星忙碌于输入和输出.美国GPRS告急!向中国人民下跪求饶,望更换其他运营商.无奈之下,北斗星亮了.如果信息是有形体,那么在牛逼的“苹果”也抵不住其从天而降的气势.因此,大气层也会被撕裂成菊花般美丽. “尊敬的客户,从本月1号起,至今天.您的上网流量,统计超出188M,超出部分将以每KB0.001元计算.回复...”想必这样的信息,曾在光顾过若干个手机.借着3G的势头,5元援救包.10元小资包.3元贫民包.纷纷被网友们抢购.大把大把的钞票飞进了运营商的口袋里.背靠大树好分