NCF参数化建筑论坛

标题: RhinoScript教程第一章 [打印本页]

作者: f(x)    时间: 2009-8-27 22:12
标题: RhinoScript教程第一章
先说一下,我们到底在干些什么:
1.1 Macros(宏)
      犀牛是基于命令行界面。这意味着你可以控制只使用它的键盘。您键入的命令和程序将执行它们。自从鼠标出现以后,纯命令出现的用户界面是被认为是原始的。如果你不想用下面的输入方式:
Line 0,0,0 10,0,0
      你也同样可以单击该行按钮,然后在视口中两次确定的起始和结束点形成线。由于第二(图形)接口被有些人已完全取消了命令行。有些用户是命令行的狂热分子,其他人只使用工具栏和菜单。程序员在这方面无所谓,他们都执于命令行。这是没有用的编程鼠标到某坐标,然后模拟点击鼠标,这只是普通愚蠢的。程序员输入犀牛文本然后他们期望得到的回报文本。
      在犀牛的最低形式的编程使用宏。我不想否认你们写宏的生活,但不能否认这是一个非常原始的方式来实现流程自动化。我只简单地暂停在宏的问题,也是让我们知道这是哪部分是因为我们在某些时候可能会模拟宏使用RhinoScript。
      宏是一个预先写好的犀牛所要执行的命令的清单。这个_Line命令是一个非常简单的宏示例。如果你的工作是开放犀牛文件,添加从0,0,0到10,0,0的线并且每次都重新保存文件,如果你每一分钟输入6次“_Line W0的,0,0 w10,0,0“,可能会变得非常疲惫。那么请进入宏。宏只能替你完成手工的活动,而不是头脑的活动。宏并不聪明,也不能反应过来他们要帮助创造些什么。他们更像是一个交通督导员,而那些命令就是人群,他指挥这些命令应该怎么运行。一个更复杂的宏观例子是:
       _SelNone
       _Polygon _NumSides=6 w0,0,0 w10,0,0
       _SelLast
       -_Properties _Object _Name RailPolygon _Enter _Enter
       _SelNone
       _Polygon _NumSides=6 w10,0,0 w12,0,0
       _SelLast
       _Rotate3D w0,0,0 w10,0,0 90
       -_Properties _Object _Name ProfilePolygon _Enter _Enter
       _SelNone
       -_Sweep1 _SelName RailPolygon _SelName ProfilePolygon _Enter _Simplify=None Enter
      上面的代码将一遍又一遍创建相同的六角环(如图1.1.1所示)。[attach]554[/attach]它可能是有用的,但它不是灵活的。您可以输入上面的文本命令,您甚至可以直接复制,粘贴到犀牛的文本里面。
      顺便说一句,强调所有命令基于犀牛本身的。犀牛将使用英语命令名称,而不是说像,意大利,日本或任何自定义设置。你应该总是强迫使用英文命令名称,因为这是唯一保证可以让犀牛识别的命令,您的代码将可以在世界各地的犀牛的所有版本里被识别并运行。
     在前面的_Properties连字符和_Sweep1命令用来引领对话框。如果你不用这些连字符的话,你将无法通过改变一个命令来改变犀牛的工作状态。
     我们无法限制一个宏可以达到的复杂程度,你可以不加限制的去增加你的命令,但是再多的命令也无法改变一个宏的核心。
1.2 Scripts(脚本)
      宏的局限性导致了脚本语言的发展。脚本是宏和手工画图之间的中转(编译)程序和插件。不像宏可以执行宏数学运算,评估变量条件,满足他们的环境和与用户沟通。不同的程序,他们不需要前制订运行。犀牛可以实现标准的Microsoft ? Visual Basic ?的脚本版的语言(通常称为如VBScript),这意味着真正的VBScript也是RhinoScript。
      脚本,每次演译出一个线的文本文件,但是,这里有一个很有趣的部分,不同于宏,脚本控制的线下执行。流量控制,这使得脚来跳过某些指示或重复他人。流量控制是通过所谓的“有条件的评价”,我们自己必须熟悉的VBScript语言规则,才可以采取流量控制的优势。
      VBScript是一个非常宽松的编程语言。 '宽松',在这个意义上表明,语言规则是相当宽松。语言规则通常称为语法,他们指出哪些是无效的:
     1 "There is no apple cake here." ? valid               “没有苹果蛋糕了。” ?有效
     2 "There is here no apple cake" ? invalid             “这里没有苹果蛋糕”?无效
     3 "Here, there is no apple cake." ? valid              “在这里,没有苹果蛋糕。” ?有效
     4 "There is no Apfelstrudel here." ? invalid          “没有Apfelstrudel这里。” ?无效
      
     上述名单是英语语法规则的有效性检查。第一和第三行是正确的英语,其他的都不是。但是,也有一定程度的错误。没有人会误解第二行仅仅因为词序是错误的。该行已经提出了一些困难,因为它具有从一个不同的语言文字。
     虽然我们大多数人有足够的智慧理解所有四个线,但是计算机不能。我前面提到的VBScript是宽松的语言。这意味着它可以拦截小的语法错误。在我们可以开始与犀牛做任何事情之前,我们必须对VBScript语法有一个很好的理解。
1.3 Running Scripts(运行脚本)
      有几种方法可以在犀牛中运行脚本,都有自己的优劣。你可以存储为外部文本文件的脚本并且可以随时让犀牛来运行它们。你也可以使用犀牛自己的脚本编辑器,这意味着你可以从脚本编辑器中直接来编写一个脚本。使用_EditScript命令来激活它,然后输入你的脚本并点击Run这个按钮。(图1.3.1)[attach]555[/attach]
      所有在本教程的例子代码可以复制,粘贴到EditScript直接运行。
作者: skywoolf    时间: 2009-8-27 22:18
严重支持f(x)的奉献精神,严重支持你!
作者: f(x)    时间: 2009-8-27 22:20
什么叫严重支持啊
作者: Swow    时间: 2009-8-29 16:57
这个……楼主是专业研究这个的?
作者: f(x)    时间: 2009-8-29 17:17
非也非也,兴趣爱好而已。
作者: f(x)    时间: 2009-8-30 19:38
这是RhinoScript,一种用程序语言来生成图形的建模方式。
作者: arkuo    时间: 2009-9-7 02:57
這是 RhinoScript 101 的第一章吧....竟然整個都翻成中文了 真感動阿....
作者: dxxs696    时间: 2009-9-29 22:26
楼主的贡献深远啊
作者: 解构主义    时间: 2009-9-30 12:39
哪里有SR5 呀     装了GH不能用。。{:3_60:}
作者: SmallTotal    时间: 2009-10-21 14:20
{:3_64:}
谢谢楼主的好资料。。。
作者: yjj8927367    时间: 2009-10-21 21:49
呵呵  很棒~
作者: bendanxinhe    时间: 2009-11-6 15:01
{:3_64:}   崇拜你啊  要向你看齐
作者: superfrog    时间: 2009-11-7 11:58
楼主果然很强大的样子
作者: yeningailjl    时间: 2009-11-7 14:13
很刁啊,看来是高人,顶了
作者: snaill    时间: 2009-11-14 21:23
支持了,最基本的概念,期待更多的教程阿
作者: maumauyu    时间: 2009-11-28 17:21
期待更多的教程发布啊,英文版实在很难攻读下来
作者: caijieteng    时间: 2009-12-5 11:18
挺不错的。。。。。
作者: uuuf8    时间: 2009-12-9 02:36
果然很强大的样子
作者: valando    时间: 2009-12-12 00:36
看了楼主的帖子,我有点开窍了。。
作者: 肥猫飞天    时间: 2010-1-2 16:39
我觉得学起来蛮麻烦的
作者: 咸鱼空间    时间: 2010-1-17 09:31
给自己加照度
作者: 990628    时间: 2010-1-18 10:54
学习了 ......
作者: doubleteng    时间: 2010-1-23 00:05
严重支持啊~~~~!这对我来说太有用了
作者: DaoDao    时间: 2010-1-24 23:23
不知道哪有rhinoscript下载,哎。。。
作者: 发现档案    时间: 2010-1-28 20:47
貌似101的截选
作者: freeze23    时间: 2010-4-26 20:53
太好了 太好了太好了太好了 太好了太好了
作者: yoyobaggio    时间: 2010-5-18 17:40
很适合,非常感谢
作者: zdb888    时间: 2010-5-30 10:23
支持,对我们刚接触的太有用了
作者: divedragon    时间: 2010-5-30 11:47
跟着楼主继续学习
作者: dlss    时间: 2010-8-2 13:36
貌似以前有个淡江大学的讲义,可以参考。http://ncf.5d6d.com/?fromuser=dlss
作者: dlss    时间: 2010-8-2 13:36
囧。。连接发错了~
作者: fengkongx9    时间: 2010-8-10 10:39
支持......开始学script
作者: llimminni89    时间: 2010-8-31 02:42
相当好东西啊
作者: wangxudong    时间: 2010-9-7 14:27
dfghdfghhghdg
作者: mengcheng41    时间: 2010-9-13 21:53
楼主强大的!
作者: kyochd    时间: 2010-9-15 19:44
超难啊这种~不太适合学设计的~
作者: archer0601    时间: 2010-9-15 20:49
不懂~~想学学~~
作者: 元未觉醒1984    时间: 2010-9-16 07:25
很清晰,很好
作者: cbk0084    时间: 2010-9-20 16:46
顶了 不错 谢谢版主
作者: PARADAN    时间: 2010-9-24 11:31
多多指教。。。
作者: maya88    时间: 2010-11-12 12:02
1.1 Macros(宏)翻译不出来!
作者: TG123    时间: 2010-12-8 15:30
LZ真是好人!
作者: huangchang0528    时间: 2010-12-11 14:02
好教程~~~~~~~~~
作者: woyeaini    时间: 2010-12-21 08:56
先顶再看~~
作者: mars1912    时间: 2011-2-8 12:45
学习 学习........
作者: vivien19871    时间: 2011-2-11 18:48
1# f(x)
作者: 1127463392    时间: 2011-2-24 19:37
{:3_53:}很好
作者: ou312382395    时间: 2011-2-25 19:19
期待楼主的下一PART~~
作者: jintaojiayou    时间: 2011-2-27 22:02
谢谢分享资料了。。。
作者: dadaidao    时间: 2011-3-6 23:34
没有编程的基础。。。看起来挺费劲
作者: zxl900113    时间: 2011-4-4 23:07
很刁啊,看来是高人,顶了
作者: bxsqrym    时间: 2011-4-10 19:00
LUGUOKANKAN LOUZHU
作者: moonshine    时间: 2011-4-14 17:53
新来的支持下···
作者: nyoungs    时间: 2011-4-15 20:51
很强大的样子...马克了再学习
作者: lightoo    时间: 2011-4-19 10:58
向楼主学习了
作者: seet_crow    时间: 2011-4-19 13:13
谢谢分享,从中收获很大,谢谢。

作者: seet_crow    时间: 2011-4-19 13:16
谢谢分享,十分感谢。
作者: Daisy恋空    时间: 2011-4-22 13:17
对新手来说太重要了
作者: wawa    时间: 2011-5-3 10:55
very good!
作者: z9527    时间: 2011-5-10 09:37
好高深啊~~~继续严重支持~~
作者: 牛屎超人    时间: 2011-5-17 13:32
先来逛逛,正在学gh,哈哈哈哈
作者: zsy    时间: 2011-5-21 16:53
如何开始学这些,有点小晕
作者: mumu7    时间: 2011-5-23 22:59
犀牛很强大
作者: wojiaxue    时间: 2011-5-25 23:32
我去,这个是不要有VB基础啊
作者: Tony    时间: 2011-7-8 23:30
顶楼主,谢谢分享
作者: zyfeiniao    时间: 2011-9-1 17:04
说的很好,很容易理解。
作者: ninesuns    时间: 2011-9-4 12:06
大神们你们是我的偶像。。。
作者: 1988zhu93    时间: 2011-9-4 17:23
太浅显啦楼主,应该深入点.....
作者: wpfg    时间: 2011-9-6 12:38
,有点明白了
作者: YayaDu    时间: 2011-9-11 22:57
谢谢楼主分享!
作者: YayaDu    时间: 2011-9-12 14:20
谢谢分享,好东西
作者: anboyh    时间: 2011-11-5 17:09
跟着楼主好好学习。
作者: i-form    时间: 2011-11-16 18:29
不错不错,,,还有下文呢
作者: grassc    时间: 2011-11-16 20:18
从头学起~~SCRIPT对荒废的数学的人来说真是头大
作者: grassc    时间: 2011-11-16 20:34
下文呢?咋没看到下载
作者: up.side.down    时间: 2011-11-20 17:00
这个有点难嘛
作者: screenaKZ    时间: 2011-12-11 01:24
顶一下~希望楼主再接再厉
作者: s.k.    时间: 2011-12-11 10:43
果断研究大师的东西
作者: fghfghfghfh    时间: 2012-2-20 22:12
DDDDDDDDDDDDD
作者: lixuezhizhi    时间: 2012-3-12 01:44
楼主给力啊
作者: liqianno1    时间: 2012-12-29 14:05
刚开始学习脚本,希望楼主多多帮助。。




欢迎光临 NCF参数化建筑论坛 (http://www.ncf-china.com/) Powered by Discuz! X3.2