NCF参数化建筑论坛

标题: 练习(Rhino/Python) [打印本页]

作者: aufalpen    时间: 2010-12-18 02:18
标题: 练习(Rhino/Python)
Rhino/Python只适用于Rhino5.0

[attach]13286[/attach]
三天的workshop,这是我的练习。

import rhinoscriptsyntax as rs
Srf = rs.GetObject("select Surface",8)
U = rs.SurfaceDomain(Srf,0)
V = rs.SurfaceDomain(Srf,1)
arrpts = {}
arrMidPts2 = {}
arrParam = [0,0]
nRows = rs.GetInteger("SubDivs in U?",20,5,100)
nColumns = rs.GetInteger("SubDivs in V?",20,5,100)
for m in range(0,nRows+1):
    arrParam[0] = (U[0]+(((U[1]-U[0])/nRows)*m))
    for n in range(0,nColumns+1):
        arrParam[1] = (V[0]+(((V[1]-V[0])/nColumns)*n))
        arrpts[(m,n)] = rs.EvaluateSurface(Srf,arrParam[0],arrParam[1])
        arrMidPts = rs.EvaluateSurface(Srf,arrParam[0]+((U[1]-U[0])/nRows)/2,arrParam[1]+((V[1]-V[0])/nColumns)/2)
        param = arrParam[0]+((U[1]-U[0])/nRows)/2,arrParam[1]+((V[1]-V[0])/nColumns)/2
        arrSrfNor = rs.SurfaceNormal(Srf,param)
        arrMidPts2[(m+1/2),(n+1/2)] = arrMidPts+arrSrfNor
for i in range(0,nRows):
    for j in range(0,nColumns):
        midPt = arrMidPts2[(i+1/2),(j+1/2)]
        pt1,pt2,pt3,pt4 = arrpts[i,j],arrpts[i+1,j],arrpts[i+1,j+1],arrpts[i,j+1]
        arrRiPts = [pt2,midPt,pt3]
        arrRiCrv = rs.AddCurve(arrRiPts)
        arrMidPts = [pt1,midPt,pt3]
        arrMidCrv = rs.AddCurve(arrMidPts)
        arrRiSrf = rs.AddLoftSrf([arrRiCrv,arrMidCrv])
        rs.DeleteObjects([arrRiCrv,arrMidCrv])
rs.DeleteObject(Srf)

以下三个是同学的练习,顺便发上来。
[attach]13287[/attach]
[attach]13288[/attach]
[attach]13289[/attach]
作者: inoor    时间: 2010-12-18 08:48
很有啟發,感謝分享.
作者: claudemit    时间: 2010-12-18 10:22
wow 看起来语法和rs比简洁不少
用python是不是会更快
作者: aufalpen    时间: 2010-12-18 19:09
wow 看起来语法和rs比简洁不少
用python是不是会更快
claudemit 发表于 2010-12-18 10:22


老师说比rhinoscript更强大,结构更清晰简洁,扩展性高云云的。我也不太懂。script和python都刚学,还很朦胧。
作者: claudemit    时间: 2010-12-18 19:16
老师说比rhinoscript更强大,结构更清晰简洁,扩展性高云云的。我也不太懂。script和python都刚学,还很朦胧。
aufalpen 发表于 2010-12-18 19:09

python学习用的是什么教材,能介绍或者分享下么
作者: aufalpen    时间: 2010-12-18 20:03
python学习用的是什么教材,能介绍或者分享下么
claudemit 发表于 2010-12-18 19:16


关于python本身的教材有n多,可以在网上随便找,但是关于rhino/Python的没找到什么教材可以下载。
http://python.rhino3d.com/这个网站是老师给的,让我们结合rhinoscript 101那本书看。
其他的就是老师上面操作,我们在下面跟着做。一共就三天,学点皮毛。
感觉rhino/Python很新,不够普及和成熟,而且rhino5.0还是试用版。
maya里的script是用python吧,不知道能不能借鉴。
作者: 没碗    时间: 2010-12-18 20:36
rhino也加入py了.....看来。。。预言正确。。。
作者: weiwei    时间: 2010-12-19 13:46
第一次再NFC看到人發PY的帖,連RS都才剛上手馬上就是PY的時代了..
作者: claudemit    时间: 2010-12-19 16:29
为了跟上时代。。。看来得去学
呜呜,啥语言都学了个皮毛,我真悲催
作者: 夜神    时间: 2010-12-20 09:05
看了下帮助文档,感觉python的函数还很少,用法跟RS基本一样。等它发展全面了再学习吧。
RS除了用户界面简单了些,倒也基本够用,真要用复杂界面的话,搞个HTML也差不多了,不过我倒是觉得在Excel里用VBA编写界面,再从EXCEL里面启动Rhino是个不错的主意。

我喜欢简单的
作者: bottleboy    时间: 2010-12-21 11:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: triko    时间: 2010-12-21 12:57
py。。。跟不上趟儿呢感觉。。。
作者: wawa    时间: 2011-4-28 17:38
very good!
作者: drabrucelee    时间: 2011-5-24 10:42
10# 夜神
夜神大侠,敢问能否要你的qq,听说你是浙大这边的,我是光电系的小弟,希望认识牛人277489465
作者: wawa    时间: 2011-5-26 10:00
support you
作者: 时间敲冰    时间: 2011-5-27 00:35
RS还没学PY出来了,到底这两者谁更有前途呢?
作者: skysurene    时间: 2011-6-16 10:45
很不错 感谢楼主
作者: jinxinstc1    时间: 2011-7-14 19:49
不错哦 顶一个了
作者: charish    时间: 2011-7-14 23:54
才开始接触  羡慕嫉妒恨啊
作者: snow_728    时间: 2011-11-1 15:17
学习了 感谢
作者: jasonroc    时间: 2011-11-1 15:23
RS还没学PY出来了,到底这两者谁更有前途呢?
作者: cgg    时间: 2011-11-1 15:32
学习,有点复杂。。。
作者: jasonroc    时间: 2011-11-1 15:44
是很强大!但是还是先把RS学好吧
作者: OnlyKing    时间: 2012-2-3 16:47
大哥! 还在不在啦 ? 给咱们留一个联系方式把!我正研究这 东西呢!
作者: luoyun1125    时间: 2012-2-9 19:50
我来学习的~~~
作者: 边陲    时间: 2012-3-1 21:11
很酷啊!可惜我4.0
作者: snow_728    时间: 2012-3-7 14:00
自我感觉PY更简单一些 请教 BoxMorphObject 能否在PY里面其他方式调用呢
作者: pyh4pyh4    时间: 2012-3-7 19:56
真不错的作品
作者: 青玉司南佩    时间: 2014-8-21 16:43
看看看看,挖个坟




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