通知:E拓建筑网正式更名为拓筑在线!

拓筑在线

 找回密码
 快速注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

【By DanielJin】由浅入深学Grasshopper 高级01


[版块:参数化设计] [分类:经验教程] [复制链接] 报告无效帖子查看: 55223|回复: 706   
拓邦元帅|DanielJin 发表于 2014-8-28 02:10:13 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
大家好,我的《Grasshopper从入门到进阶》课程已经开课了。
有兴趣欢迎关注:https://www.tuozhu123.com/course-54.html


【By DanielJin】由浅入深学Grasshopper 高级01 谈谈Surface Closest Point,Divide Domain2 和 Isotrim恶心人的地方


版权声明:本人所发所有教程均首发在E拓参数化论坛。如需转载请发送站内信获得本人许可。

前言:之所以这个教程分类在了高级里,是因为这一篇讲的是一个很理论且没有什么实际作用的东西,大家知道即可。
最近在忙着一些改革事宜,努力把E拓建的更好。你们可以看到参数化论坛越来越多的帖子,视频教程,作者开始出现。
同时告诉大家一个好消息,由我和几位同仁一起历时一个月编著的《Grasshopper中文运算说明书》即将进入美工阶段。
书里面详细的将每个运算器进行了翻译,对输入端数据类型要求等进行了解释,并对大多数运算器进行了配图用法演示。
我决定将本书以pdf电子书的形式免费放在E拓参数化论坛上供大家下载
我知道你们网盘里动辄几百G的资料,免费不等于垃圾,收费不等于精致。
希望大家届时可以真正利用上这本书,不要随手下载下来就丢掉了。
请给予熬夜编著的所有作者们最起码的尊重!谢谢。

今天这个问题是群里一位朋友让帮忙做一个小的程序的时候发现的。
你们还记得大明湖畔...哦不是,是我曲面桁架那一章教程提出来的问题吗?
当一个点被和曲面发生各种乱七八糟的关系,比如pull,closest的时候,总是无法正确出现在曲面上?
今天我们从各种可能性来做一个小的探讨。
这篇帖子将更加简练,如果基础还不牢固,请在E拓参数化论坛csh.eeeetop.com置顶帖区域观看完UncleX的小苹果视频教程和我的初级中级教程。

封面.png

首先今天一个朋友提了一个问题,如何将一大堆点中不在面上的删除?
面是一个trim面。
1.png


我首先的思路是,divide domain2和isotrim然后取中心
2.png

绿色即为需要取的点
3.png


将这些中心点在曲面上的最近点找到,如果一个点在面上,那么它在面上的最近点和它肯定重合。
那么它们两个点的距离是0.只要用dispatch踢出距离非0的点就可以了。
如图,绿色区域内的点在面上的最近点是在面的边线上,即黄色实线上。
而黄色范围内的点本身在原地没有动,所以距离应为0。
同时,由于是trim面,divide domain2的时候patch自动补全。不再赘述。
0.png


随后出现了问题。得到的解集为空集。也就是说所有点的最近点都发生了位移。
4.png


怎么回事呢?这里面用到的命令屈指可数,我们一个个来检查。
首先我们来排除Surface Closest Point的命令,随意点四个点。
通过不同方法我们都可以验证点在找到最近点以后,最近点确实是在面上的。排除。
5.png


接下来我们返回上一步,直接Point in Trim来验证Closest Point命令输出的点是否在Trim面上。
答案令人很沮丧,虽然显示有24个点不在面上,76个点在,但实际上我们已经看得出来,
红色的24个点实际上是在Trim面边线上的。
6.png


再来思考一下,应该是细分面以后的中心点不在面上的问题。
因为面不是平面,就如同弧面(凸包)的中心点不在面上是很正常的。
所以我们跳过最近点直接用Center Point输出结果来验证。
结果很奇特,Point in Trim竟然显示True。我们不能再依赖这个运算器的布尔值了。
7.png

我们随意做一个弧面,我用4点生面手工拉了一个面,抬了一个角点。
如刚才5分析的,Point in Trim又显示不在面上,这时候说明又对了。
那么5为什么刚才显示的不正确呢?不过我们已经找到了原因之一了。
8.png

联想一下曲面桁架的教程,我认为还应该是Isotrim 和 Divide Domain2两个命令的原因。
他们的使用导致了Closest Point无法正常工作。
到了这里,其实已经脱离了如何选取点这个最开始的目标了。
而是变成了到底这个运算器能否在这种环境下正常工作?

为了验证刚才说的在Isotrim 和 Divide Domain2两个命令连用的情况下,面上最近点的点会不在面上这个奇葩现象,
我试着将在Trim Srf上的点再一次在面上找Closest Point。
我们首先来理清一下思路:
(1)如果一个点A和一个面S在同一xy平面内,位置关系是点A在面S外,并且不在面S的上下方,
即无法投影在这个面S上,那么这个点在面上的最近点a一定位于S的边线上。详情查看步骤1黄色实线。
那么很显然两点的距离Aa一定大于零。
(2)如果一个点B恰好位于面S范围内,那么B的z向投影点b也肯定在面S内且和B坐标重合。
那么B和b的距离Bb一定为0,因为是坐标相同的两个点。
这里能理解清楚,那么往下我继续验证。
如果之前Point in Trim我们不敢肯定结果的话,那么我用一个点的三个坐标来验证总完全没问题了吧。
根据上边的推理(2),Bb=0,那么xB=xb,yB=yb,zB=zb
用坐标最原始也是最不可置疑。
我们将Closest Point输出的已经在面上的最近点B再次拉到面上得到点b。按照推理(2),他们的横坐标xB将等于xb。
事实是,我们的100个点只有74个点原地没动,剩余26个点又动了。
请大家自行脑补暴漫“我给你跪了”的表情。
9.png


继续验证,为了方便我们将上边的程序打包。
10.png


不断把已经在面S上的点B再次pull在面b上寻找最近点。
11.png


到这一步大家就看的很清楚了,每一次找最近点,总是有26个点的坐标会发生变化。
这是一个死循环。

大家可以联想一下曲面桁架的教程,当时我说你们一定要再找一次Closet Point,把得到的最近点Pull到UV结构线交点上。
其实就是因为最近点不在曲面上的原因。
至此可以肯定,最大的罪魁祸首就是Isotrim 和 Divide Domain2两个命令工作环境下Surface Closest Point并不在Surface上。
哈哈哈。我也是跪了。


当然,以上推理中的Bb=0是严格的推理。从理论上讲他们的距离应该等于0。
我们再回到最开始的问题上,如果想要得到这个同学的答案应该怎么做?
我用Panel查看了一下在循环查找最近点之后B和b的距离只有e^-12这么小了。
所以只要只选择小的值,就可以得到这些点了。


通过这个例子我想告诉大家,其实有时候一个程序是很有意思的。
也许你看了别人的做法,会了,但是你可能永远不知道这个程序里隐藏着许多未解之谜。
不亲手操作一下,你是永远不可能知道的。
有时候我们不能只把做出来结果当做正确解,而是要甘于钻研每一个电池的“微效应”,这样才能彻底把相关知识学透彻。
至于到底为什么会会出现Isotrim 和 Divide Domain2两个命令工作环境下Surface Closest Point并不在Surface上的情况?
抱歉,我也不明白。我是用GH当做工具简化我的建模,把自己当做使用者来用软件的。
而不是把自己当百科全书十万个为什么来被软件用的。
我只是一个使用者,而不是程序的开发者,这个问题我也解答不了。


希望各位通过这个例子能够学会深入探索的精神,并且知道当发现一个问题的时候,如何一步步的排查问题原因。
通过更改变量(比如将Point in Trim更改为坐标验证)来查找到底是哪一步出现了差错。
希望大家能掌握到一种新的自学方法。自学永远是最好的老师。

最后还是给出这位同学问题的答案吧。绿框内是解答,黄圈里是主要使用的计算器。
而紫色的框里,是你如果只注重“解出”问题而不注重“解答”过程本身所丢失的学习机会。
我想这就是为什么同样的练习题,有人考试考了100有人考了60的原因吧!共勉之。
right.png

游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 4e币 +45 收起 理由
Lotus丶 + 1 爆料兼分享,分享总让我们知更多。
cmmsn + 4 爆料兼分享,分享总让我们知更多。
沧月 + 10 给力
深圳老梁 + 30 交流多进步,碰撞思维火花最珍贵。

查看全部评分

我司提供建筑方案设计/全流程BIM设计/参数化设计
有兴趣欢迎站内信或在https://www.jianzhu.us进行商务洽谈
我的《Grasshopper从入门到进阶》课程购买地址为https://www.tuozhu123.com/course-54.html
拓土新兵|勇气哥 发表于 2014-8-28 02:31:33 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
优秀啊学习了
 楼主 | 拓邦元帅|DanielJin 发表于 2014-8-28 02:32:36 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
勇气哥 发表于 49秒前
优秀啊学习了
   大半夜不睡觉!
来自:IOS客户端
管理员|深圳老梁 发表于 2014-8-28 07:41:42 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
依然看不懂,但依然觉得很牛逼。

点评

够坦诚  发表于 2014-8-29 17:33
拓土新兵|时光 发表于 2014-8-28 08:52:40 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
赞  谢谢各位大神昨天的解答
拓土新兵|zzting 发表于 2014-8-28 09:07:41 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
正好遇到这个问题
拓邑团练|jasonroc 发表于 2014-8-28 09:09:41 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
看看怎么样.
拓邑团练|jasonroc 发表于 2014-8-28 09:11:16 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
谢谢分享,继续支持!                                    
拓邑团练|chenxuancheng 发表于 2014-8-28 09:19:24 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
来听君一言,与君共勉
拓城校尉|wqdesky1 发表于 2014-8-28 09:20:34 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
值得期待,赶紧看看
拓城校尉|wqdesky1 发表于 2014-8-28 09:21:21 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
值得期待,赶紧看看
拓城校尉|uiyr7s 发表于 2014-8-28 09:21:32 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
我回复一个你敢出现吗?
拓乡士官|407030699 发表于 2014-8-28 09:21:42 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
由浅入深学Grasshopper
拓土新兵|扫地僧皈依 发表于 2014-8-28 09:24:46 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
正在学习。。。。。。。。。。。
拓邦元帅|peter704 发表于 2014-8-28 09:28:07 | 显示全部楼层
发帖得20e币  e币充值  开通VIP会员  快速免费获取e币
我参数化学习的引路人,永远支持你
您需要登录后才可以回帖 登录 | 快速注册 微信登录

欢迎加入拓筑在线QQ交流群!
欢迎加入拓筑在线QQ交流群!
为了方便广大拓友即时交流, 本站已创建一个综合交流群240721746 一个学生专用群477169627 一个VIP精选推送群106857114(请先开通VIP再申请加入哦,开通链接)
  深圳老梁  晓风73547最后回复于 2024-05-08 站点服务

22G815建筑结构抗浮锚杆
22G815建筑结构抗浮锚杆
新发行图集 建筑结构抗浮锚杆 22G815
  zzzxxxyyy  晓风73547最后回复于 2024-05-08 建筑图集

工程做法23J909代替05J909
工程做法23J909代替05J909
工程做法23J909代替05J909,有需要的可以下载看看 [sell=10]链接: https://pan.baidu.com/s/1IPi6ryEvI8MTPErmY2yt3A 提取码: 1234 复制这段内容后打开百度
  李生录  晓风73547最后回复于 2024-05-08 建筑图集

23J909 工程做法  更新啦!
23J909 工程做法 更新啦!
23J909代替05J909 18年过去了,不容易呀~ 另外屋面保护层40厚配14的钢筋 应该是印刷错误,欢迎大家纠错,讨论~
  huazai_1991  晓风73547最后回复于 2024-05-08 建筑图集

SketchUp开黑,启动多核运算模式?
SketchUp开黑,启动多核运算模式?
SU一路更新换代,编辑模型一直是单核运算,模型承载能力没大改观...... 前几天萌生出开启SU多核模式的想法。 就把想法实施测试了一下,能不能成功?有没有效果
  bang_m  ssg6283最后回复于 2024-05-07 可视化设计

SASAKI最新案例文本 1.6G
SASAKI最新案例文本 1.6G
SASAKI创建于1953年,是目前美国排名前10位的著名设计公司,在规划方面和土地应用方面在世界范围内首屈一指。获过国际大奖的作品更是数不胜数,SASAKI图纸给人的
  薛鹏鹏  basten272最后回复于 2024-05-07 设计文本

大成面粉厂改造设计
大成面粉厂改造设计
深圳蛇口大成面粉厂改造 改造设计:南沙原创建筑设计工作室 改造范围:包括现有大成面粉厂、 8号仓库缓冲装卸平台等建构筑物 改造面积:用地面积共计1.94公
  josieven  basten272最后回复于 2024-05-07 项目实践·作品库

[美国版]Landscape Architecture 景观建筑 2024年05期
[美国版]Landscape Architecture 景观建筑 2024年05期
本杂志PDF电子版收集于网络,仅供学习研究之用,百度网盘下载链接: [ck8_view=1]链接:https://pan.baidu.com/s/1tkMrtMgE_dnimwU_kEytxw 提取码:v7oz
  设计杂志  basten272最后回复于 2024-05-07 建筑景观

首钢西十筒仓改造相关图纸
首钢西十筒仓改造相关图纸
请问去哪里找关于首钢西十筒仓改造相关图纸啊
  hxw1  hxw1最后回复于 2024-05-07 快速发帖

建筑学、城规、景观、环艺留学出国作品集参考100份(3.62G,免费领取)
建筑学、城规、景观、环艺留学出国作品集参考100份(3.62G,免费
百度网盘下载链接: **** 本内容被作者隐藏 ****
  小迷妹建筑梦  心平气和最后回复于 2024-05-07 大学生讨论区

[德国版]Baumeister 建筑大师 2024年04期
[德国版]Baumeister 建筑大师 2024年04期
本杂志PDF电子版收集于网络,仅供学习研究之用,百度网盘下载链接: [ck8_view=1]链接:https://pan.baidu.com/s/1DDsHgvBW1y8z9Djqjk3HwQ 提取码:4on7
  设计杂志  设计杂志最后回复于 2024-05-06 建筑景观

寒假最后的练习——曲面网架
寒假最后的练习——曲面网架
明天我就启程返校了······总结一下这个寒假还是比较充实的,了解到自己和那些高手之间令人绝望的差距之后反而越发热情满满,今天变为了给寒假画上
  365770892  doicevita最后回复于 2024-05-06 参数化设计

CUBEINSIDE|孟加拉东南大学 - 垂直中庭校园
CUBEINSIDE|孟加拉东南大学 - 垂直中庭校园
孟加拉东南大学设计面临的挑战是如何在达卡的一块狭小的城市用地上满足其庞大的需求,而这块土地最近刚从工业用地转换为商业和机构用地。采用的原则是垂直发展校
  深圳老梁  深圳老梁最后回复于 2024-05-06 项目实践·作品库

相对建筑新作|唐昌战旗核心区空间营造
相对建筑新作|唐昌战旗核心区空间营造
战旗村是成都第一批乡村振兴示范村之一,也是成都红色文化乡村旅游的必经之地。地处平原,位于位于成都市的西部,紧邻郫都区、都江堰市和彭州市三区市交界地。得
  深圳老梁  深圳老梁最后回复于 2024-05-06 项目实践·作品库

合肥工业大学建筑与艺术馆(方案)
合肥工业大学建筑与艺术馆(方案)
详细效果图见文件
  蓝色的雪  556最后回复于 2024-05-05 设计素材

Grasshopper运算器中英文对照,附每个运算器图片
Grasshopper运算器中英文对照,附每个运算器图片
Grasshopper运算器中英文对照,附每个运算器图片,适用于初学者,且英文不好,,,,,,
  azys  南巡九最后回复于 2024-05-05 参数化设计

迪拜“第五代住宅”即将亮相,层层带泳池。
迪拜“第五代住宅”即将亮相,层层带泳池。
DAMAC Casa Tower 是迪拜新兴的豪华住宅项目,由知名房地产开发商DAMAC Properties打造,位于迪拜的Al Sufouh区。项目采用流畅前卫的设计,43层气势恢宏的摩天塔
  深圳老梁  basten272最后回复于 2024-05-04 项目实践·作品库

新作 | 上海鸿寿坊:长寿路商圈新地标
新作 | 上海鸿寿坊:长寿路商圈新地标
今天的鸿寿坊,精致,又有其极致的烟火气,让它在长寿路商圈乃至整个上海都独树一帜。鸿寿坊项目占地约1.5万平米,总建筑面积约8.8万平米,项目包括市集型的里弄
  深圳老梁  basten272最后回复于 2024-05-04 项目实践·作品库

官方综合交流QQ群(更多):

240721746

拓筑在线——面向建筑师群体的

设计交流论坛、软件学习社区、资料下载网站及企业服务平台!

微信扫一扫关注我们

微信公众号

拓筑小助手

GMT+8, 2024-5-8 08:35 , Processed in 0.121096 second(s), 45 queries , Gzip On.    拓筑在线 ( 粤ICP备11043922号 )

Powered by Discuz! X3.4  © 2011-2023 拓筑在线

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