NCF参数化建筑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 17353|回复: 15
打印 上一主题 下一主题

[心得体会] Polyline to Curve (Endpoints and midpoints as CP)

[复制链接]
跳转到指定楼层
1m
发表于 2010-6-10 14:01:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Option Explicit
Sub Poly2CrvMid ()

  Dim arrCrvs,strCrv, arrPoints,arrPoint
  Dim K,i,arrNPt,hh,kk

  arrCrvs = Rhino.GetObjects("Select curves", 4)

  If IsNull(arrCrvs) Then Exit Sub

  ReDim arrCC(UBound(arrCrvs))

  hh=0
  For Each strCrv In arrCrvs
   If Rhino.IsPolyline(strCrv) Then
   arrPoints = Rhino.PolylineVertices(strCrv)

   If IsArray(arrPoints) Then
    k=UBound(arrPoints)
    kk=(k+1)*2-2

    ReDim arrNPt(kk)

    Dim nn : nn=0

    For i=1 To kk Step 2
    arrNPt(i) = Array((arrPoints(nn)(0)+arrPoints(nn+1)(0))/2, (arrPoints(nn)(1)+arrPoints(nn+1)(1))/2, (arrPoints(nn)(2)+arrPoints(nn+1)(2))/2 )

    nn=nn+1

   Next
   nn=0
   For i=0 To kk Step 2
    arrNPt(i) = arrPoints(nn)
    nn=nn+1
   Next

   arrCC(hh) = Rhino.AddCurve (arrNPt ,3)
   hh=hh+1


   End If
  End If
Next

Rhino.SelectObjects arrCC

End Sub

Poly2CrvMid

评分

参与人数 1强度 +3 照度 +30 收起 理由
skywoolf + 3 + 30 感谢分享

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
2m
 楼主| 发表于 2010-6-10 14:01:28 | 只看该作者

                               
登录/注册后可看大图
3m
发表于 2010-6-10 14:16:28 | 只看该作者
赞!(补充字数)
4m
发表于 2010-6-10 22:48:45 | 只看该作者
支持!!!!!!!!!!!!!!!!!!!!!!!!
5m
发表于 2010-6-10 23:48:29 | 只看该作者
支持支持·····虽然GH里面是一个电池的事···但是还是自己编出来比较有成就感~!
6m
发表于 2010-6-11 00:25:17 | 只看该作者
够疯狂!!!!!!
7m
发表于 2010-6-11 00:44:18 | 只看该作者
厉害   楼主你这个算法可以介绍一下吗?
8m
发表于 2010-6-12 01:04:07 | 只看该作者
很实用~~
9m
发表于 2011-4-28 17:24:25 | 只看该作者
very good!
10m
发表于 2011-7-16 22:37:58 | 只看该作者
o~ ^-^~ 路过~ 留爪~
11m
发表于 2011-7-16 22:38:24 | 只看该作者
o~ ^-^~学学看看~顶了~
12m
发表于 2011-9-7 17:56:10 | 只看该作者
将polyline上的编辑点加倍,再用所得点做控制点做高次曲线???
13m
发表于 2011-11-5 21:28:09 | 只看该作者
貌似在哪个网站上见过~~~~
14m
发表于 2011-11-16 09:49:35 | 只看该作者
这个很赞!!!
15m
发表于 2011-11-21 13:41:55 | 只看该作者
这个实用的哇
16m
发表于 2011-11-22 07:19:44 | 只看该作者
我是刚注册的新手 请各位大哥多关照

小黑屋|手机版|NCF参数化建筑论坛 ( 浙ICP备2020044100号-2 )    辽公网安备21021102000973号

GMT+8, 2024-11-26 04:56 , Processed in 0.070308 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表