请选择 进入手机版 | 继续访问电脑版

[Python] 分形模块化探索(万花筒)

[复制链接]
23922 yesmely 发表于 2013-9-25 09:44:09 楼主
数学不好,题目名称可能不合适,意思是多边形中点连线后的多边形中点连线后的多边形中点连线......
以下为rhino.python代码,跟二叉树有点不同:
  1. import rhinoscriptsyntax as rs
  2. def tr(geo):
  3.     lines=rs.ExplodeCurves(geo,True)
  4.     list=[]
  5.     for x in lines:
  6.         list.append(rs.DivideCurve(x,2,False,True)[1])
  7.     list.append(list[0])
  8.     return rs.AddPolyline(list)
  9. def trs(geo,deg):
  10.     if deg==1:
  11.         return tr(geo)
  12.     else:
  13.         return tr(trs(geo,deg-1))
  14. geo=rs.GetObject("Select a Polygon:")
  15. deg=rs.GetInteger("degree=")
  16. trs(geo,deg)
复制代码
pl0.png
pl1.png

评分

参与人数 2技术 +2 坛币 +4 收起 理由
Jorin + 1 + 2 赞一个!
Jessesn + 1 + 2 赞一个!

查看全部评分

关于大陆地区Rhino原厂培训中心
Jessesn 发表于 2013-10-4 10:41:06
2
分享一段VB的, 是 Rajaa 在 PanelingTools 中分享的原代码

  1. Call Main()
  2. Sub Main()

  3.     Dim arrCrvObject, strSrfObject, arrPanels, PTObj
  4.     Const intMethod = 0 'Method = 0=all, 1=subs only, 2=mains only
  5.     Const intDegree = 4 'Degree = Levels of sub paneling
  6.     Const bPull = true  'Pull panels to surface

  7.     On Error Resume Next
  8.     'Get PanelingTools Object
  9.     Set PTObj = Rhino.GetPluginObject("PanelingTools")

  10.     If Err Then
  11.         MsgBox Err.Description
  12.         Exit Sub
  13.     End If

  14.     'Select a surface
  15.     strSrfObject = Rhino.GetObject("Select a surface",8)

  16.     If Rhino.IsSurface(strSrfObject) Then

  17.         'Get any number of polylines to Sub Panel surface with
  18.         arrCrvObject = Rhino.GetObjects("Select polylines",4)

  19.         If IsArray(arrCrvObject) Then

  20.             'Call Sub Paneling Method
  21.             arrPanels = PTObj.SubPaneling( strSrfObject, arrCrvObject, intMethod, intDegree, bPull )
  22.         End If
  23.     End If

  24.     Set PTObj = Nothing
  25. End Sub

复制代码

评分

参与人数 1技术 +2 坛币 +2 收起 理由
Jorin + 2 + 2 很给力!

查看全部评分

筑梦NARUTO 发表于 2014-2-15 15:16:20
3
跟帖补个GH版本的
QQ图片20140215150731.jpg
QQ图片20140215150921.jpg
QQ图片20140215151443.jpg
您需要登录后才可以回帖 登录 | 注册成为会员

本版积分规则