ww

ww

SuperCollider代码实现高亮

深蓝加粗的代表SC的类,为了便于区分里边繁多的数字,我使用了粉红色显示它们,同样的,注释还是默认的绿色。 是的,又一门新的学科,又一门新的语言。有了上次做p5代码高亮的经验,这次快多了。你可以在SC中运行如下代码获取SC全部的类,然后再copy到你的高亮工具中: ( c = Array.new; Class.allClasses.do({ arg class; if (class.name.asString.containsStringAt(0, “Meta_”).not, { c = c.add( class.name.asSymbol ); }) }); c.reverse.writeTextArchive(“~); ) 写在这,帮助正在遭遇或将来可能遭遇这个问题的同学。

SuperCollider:开始吧

使用的是Nick Collins的教材,可在线浏览。在学习中建议下载该教程到本地并在SC3的环境中边看边实时运行这份笔记中的每个例子。看了其它几个我能找到的,目前觉得这本是最容易上手的,因为写的比较简洁,废话较少,所以本人的工作基本属于翻译。碰到难解的,也会加上本人的理解与方法。什么?你还不知道SuperCollider是什么? “精华” 这是SC3,也被称为SC服务器。 它是一种专注声音合成的解释型编程语言。你不得不学习这门语言,因为: 1)愚蠢的电脑将仅能接受这门语言语法正确的表述。 2)你必须变得开始注意计算机语言的标准机制,例如迭代、条件执行、格式处理(messaging)以及容器。 3)如果你心中已有了确切的音乐上的目标,而又不得不使用这门计算机语言来制作,会让你感到挫败。

显示并绘制文本文档中a~z出现的次数

这是《Learning Processing》第十八章“数据输入”的练习18-10:遍历一个来自URL的txt文本(本练习内我使用的是计它们在字母表a~z中出现的频率,并显示为柱状比例图(当然你也可以将其表示为其他可视化效果)。如图。 虽然还没读到Ben Fry写的,但是这不就是一个活生生的有趣的练习吗?

Processing:数据输入(下)

25. P5不仅可以分析来自URL的小块信息,还可以分析来自新闻feed、文章、演讲或整本书的大块文本。Daniel引用的txt网站估计是被和谐了,总之我这此时此刻是打不开,因此,我胡乱搜索了一个P5官方版本变更说明的txt作为下例引用的txt地址,同样的,如果你在阅读本笔记的时候无法打开我现在使用的这个在线txt地址的话,你也可以上网自己搜索一个来用: PFont f; // 字体变量 String[] revisions; // 承载所有文本的数组 int counter = 1509; // 我们在文本文档中的位置 // 把标点和符号用于分界符 String delimiters = ” ,.?!;:[]+/()\”-#=_”; void setup() { size(200,200); f = createFont(“Lucida Sans”, 16); // 将文本文档载入字符串数组 String url = “”; String[] rawtext…

本站Processing示范代码实现语法高亮

之前的语法高亮插件不支持Processing语言,昨天和今天,我自行写入并调试了对它的支持,目前,在最新一篇Processing笔记(数据输入)中,除注释仍保留醒目的绿色与软件内灰色不同,其它部分已完全实现代码据实高亮(也就是与软件内的颜色一致),这不仅让P5使用者看起来更舒服亲切外,更重要的是便于诸位区分P5内置函数、字符串、常规语法等。我会在今后的时间里慢慢将之前笔记内的P5代码用这个新的样式替换。钦此。

Processing:数据输入(上)

1. 方法indexOf()返回一个关键字(或词)在字符串中的位置,它有一个引数:关键字。例如下例将返回数值3: String search = “def”; String toBeSearched = “abcdefghi”; int index = toBeSearched.indexOf(search); 2. 逐一println()一下下边诸例,数一数(记住一个字符串的第一位是0而不是1,因为他是一个数组,所以你应当从0数起),你便会了解它的用法: String sentence = “The quick brown fox jumps over the lazy dog.” ; println(sentence.indexOf(“quick”)); println(sentence.indexOf(“fo”)); println(sentence.indexOf(“The”)); println(sentence.indexOf(“blah blah”)); 3. 是的,试到上边最后一个例子的时候,你会发现它返回的值是-1。这是一个很好的选择,因为在数组序号中不存在-1,因此,当indexOf()找不到一个关键字的时候,返回值-1来表述是再合适不过的。 4. 一个字符串的一部分被称为子串(substring),一个子串可以藉由substring()函数得到。它有两个引数:开始和结束的位置。比如下例的结果为“def”: String alphabet…