NCF参数化建筑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 18170|回复: 11
打印 上一主题 下一主题

[技术探索] 各位编程达人,请教pyhon编程问题

[复制链接]
跳转到指定楼层
1m
发表于 2012-12-24 19:21:06 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
如图,想用python写一个区分点在线内线外的电池,虽说没什么意义,这个功能gh本身就有相关电池。算是自己爱好吧
不知道可有高手可以在python里面用rhino common写出来?多谢指点了。还有坛子里有没有一直学习python跟rhino common的大神,自己摸索了好一阵子,没什么进步,求指点。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
12m
发表于 2016-7-10 23:53:37 | 只看该作者
学了几天python。。楼主的问题 也是我的
11m
发表于 2016-7-8 10:30:03 | 只看该作者
谢谢分享,辛苦了。
10m
发表于 2014-8-1 22:10:36 | 只看该作者
9m
发表于 2013-4-9 19:31:37 | 只看该作者
自学了几天python。。楼主的问题其实用python很好解决的。
思路是利用核心函数rs.ispointonsurface来算出点是否在曲线生成的平面内,然后利用得到的布尔值对点集合进行分组。具体代码如下------
import rhinoscriptsyntax as rs
from math import*

pt=rs.GetObjects("points to test",1)
cur=rs.GetObject("curve",4)
plane=rs.AddPlanarSrf(cur)
b=[]
insidepoints=[]
outsidepoints=[]
for i in range(0,len(pt)):
    a=rs.IsPointOnSurface(plane,pt[i])
    b.append(a)

   
for i in range(0,len(pt)):
    if b[i]==True:
        insidepoints.append(pt[i])
        
    else:
        outsidepoints.append(pt[i])
rs.DeleteObject(plane)

把变量代换一下就能做成grasshopper的按钮了。
望采纳~~~{:08:}

点评

直接有函数判断  详情 回复 发表于 2014-8-1 22:10
8m
发表于 2012-12-26 00:47:16 | 只看该作者
carcass 发表于 2012-12-25 22:41
请问什么是versatile,对代码建模这一块确实不是很了解了,多指点

呃……這個詞是聊天時候一個國外的朋友提到的,我就直接用了……
7m
 楼主| 发表于 2012-12-25 22:42:31 | 只看该作者
词汇量有限。。。。
6m
 楼主| 发表于 2012-12-25 22:41:45 | 只看该作者
maniux 发表于 2012-12-25 17:49
雖然未來建築師需要versatile,但是私以為還是要區分設計師和開發者。

请问什么是versatile,对代码建模这一块确实不是很了解了,多指点
5m
发表于 2012-12-25 17:49:33 | 只看该作者
carcass 发表于 2012-12-25 15:12
多谢,我想自己可以写电池,所以在学校python跟rhino common

雖然未來建築師需要versatile,但是私以為還是要區分設計師和開發者。
4m
 楼主| 发表于 2012-12-25 15:12:25 | 只看该作者
maniux 发表于 2012-12-25 13:42
rs.PointInPlanarClosedCurve

common的話,好像有個border.IsPointInside,不確定。

多谢,我想自己可以写电池,所以在学校python跟rhino common
3m
发表于 2012-12-25 13:42:15 | 只看该作者
rs.PointInPlanarClosedCurve

common的話,好像有個border.IsPointInside,不確定。
一般一種能解決就沒必要用另外一種,除非有問題。rs本來就是python優勢的地方。
2m
 楼主| 发表于 2012-12-24 19:23:46 | 只看该作者
顺便庆祝下,自己高级会员了~~~

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

GMT+8, 2024-12-5 10:23 , Processed in 0.068610 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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