自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 ghpython_起点、终点、起点切线绘制圆弧

今天继续聊rhinopython101里的案例,根据起点、终点、起点切线绘制圆弧,其实这种绘制圆弧的方式,在现在的ghpython里的rhinoscriptsyntax模块已经有了这种方法,这里,咱们主要是学习编程的思路、内在逻辑和敲代码的肌肉训练。1.构建由起点指向中点的向量,并将其单位化;2.将起点的切线向量也进行单位化;3.将以上两个单元向量求和,并将求和后的向量单位化;4.将相加的单位向量与切线的单位向量进行点乘,注意这里得到结果其实是两个向量的夹角的余弦值,又由于两个向量均为单位向量,所以

2020-05-17 20:12:15 1997

原创 grasshopper_voronoi_Copy Trim+Map to Srf

今天继续聊voronoi那些事,分享的是将平面的voronoi图形映射到曲面上,分别利用Copy Trim和Map to Srf两个核心电池实现。Copy Trim1.根据随机点生成平面voronoi图形;2.提取每个单元体的顶点,去除重复点,生成nurbs曲线,由于每个单元体的顶点数不一样,这里是将nurbs曲线的阶数设置为每个单元体顶点数-1,也就是最高阶数;3.nurbs曲线与边界生成平面曲面,通过copy trim将平面voronoi图形映射到曲面表面;Map to Surface1

2020-05-17 20:09:56 825 1

原创 ghpython_根据曲线曲率向量和切向量绘制椭圆

今天继续聊rhinopython101里的案例,根据曲线的曲率向量和切向量绘制椭圆,其实就是通过椭圆的走向来反应曲线的扭转情况。1.求出曲线的区间值;2.设定t值初始值为曲线起点处,根据采样点数,求得曲线t值的步进值;3.利用while循环对t值进行迭代,分别求得每个t值处的取虑点、切向量、曲率向量,曲率向量和切向量叉乘,可以得到法向量;4.根据法向量和曲率向量构建平面,在平面上绘制椭圆;5.为了最后对曲率椭圆进行着色,这里将曲率半径也作为参数列表输出,用来映射颜色值。#ghpython

2020-05-17 20:06:54 1101

原创 grasshopper_voronoi_单层+多层+groups

gh里有一个很有意思的图形算法就是voronoi图形,这种图形在自然界和很多设计中也十分常见,咱们今天就开始,分篇章来看看这种图形在gh里怎么玩。首先分享的是简单的voronoi图形的生成。单层voronoi1.在矩形边界内生成随机点;2.根据随机点生成voronoi图形;3.对每个voronoi多边形单元进行缩放,提取缩放后的单元体顶点;4.去掉重复点后生成nurbs曲线,由于每个单元体顶点数不一致,这里选择顶点数-1作为每条nurbs曲线的阶数;5.所有nurbs曲线与边界矩形生成平面曲面

2020-05-14 16:06:49 1569

原创 ghpython_球体表面分布小圆

继续分享rhinopython101里的案例,今天分享的是在球体表面布置同一半径大小的圆。1.根据球体半径,计算小圆在垂直方向的圈数;2.设定垂直角度的初始值以及步进值;3.求出每一层小圆圆心所在的大圆周长以及每一水平面的小圆数量;4.设定每一圈的角度初始值以及步进值;5.利用while循环,求出每一圈的每个小圆的圆心;6.根据圆心与原点的向量,获取圆心处的切平面;7.在切平面上绘制小圆;#ghpython#...

2020-05-13 15:30:26 962

原创 grasshopper_编织结构

今天分享一个横纵交织的编织结构小案例,其实这个案例以前就被种草在了咱们的知识星球,今天为啥又重新拿出来呢,主要是老案例,却有新思路,这也是gh很有趣的地方,往往一道题能有多重解法,多种思路的碰撞,十分得劲。这是以前分享过的思路地址:https://t.zsxq.com/nIMfMzj今天的做法呢,十分讨巧,他就是不需要将树形数据的奇偶分支分流,分别操作,而是巧妙第利用1和-1列表和列表的shift来达到对树形数据的统一操作。1.将1和-1组成的列表按树形数据的每一个分支长度进行repeat,这样就得

2020-05-12 20:28:49 1355

原创 ghpython_曲面表面生成细分曲面

1.提取曲面的uv方向区间;2.根据uv方向细分数得到区间的步进值;3.用嵌套while循环分别对uv值进行递增,根据uv值提取曲面的uv点;4.判定uv点与曲面的距离,主要是判断点是否在修剪后的曲面上;5.对修剪后的曲面上的点生成曲面平面,在平面上绘制曲面。#ghpython#...

2020-05-11 07:54:44 1221

原创 grasshopper_矩形点阵Z型连线_三种思路

今天分享一个很简单,很常见而又很有益于理解gh的树形数据处理思路的小案例。就是将矩形点阵进行Z型连线。其实目的很明确,怎么才能将奇偶分支分开,然后对其中一个分支数据反向,两个分支再重组即可。思路1:将每个分支奇偶分流,对分流后的矩阵翻转,对其中一个分支的列表数据反向,然后再和另一个分支编织成一个树形数据列表;以上思路中,将分流后的分支翻转,相当于原来以纵向为组,切换为以横向为组,也就达到了横向奇偶分支分开的目的;思路2:首先将树形数据翻转,通过Tree Statistics读取树形数据的分支路径,对

2020-05-10 21:25:31 4148

原创 ghpython_曲面表面生成最短路径

在曲面表面设定起点和终点,绘制起点和终点之间的最短路径线。1.函数1:建立起点和终点之间在曲面上的uv点;2.函数2:得到所有点的连线长度,返回总长度;3.函数3:将所有顶点进行平滑,返回平滑后的点;4.函数4:将点投影到曲面,返回投影点列表;5.函数5:将点向曲面靠近,返回靠近后的点;6.函数6:在相邻两点之间创建中点,将点进行细分;7.函数7:主函数,建立起点和终点之间的最短路径点。通过该案例,可以看到在实际编程的时候,一般一个函数只需要解决单一问题,一个复杂的问题可以用多个不同的函数相

2020-05-09 20:40:40 1277 1

原创 grasshopper_渐变波纹_单点+多点

通过grasshopper生成波纹叠加效果。

2020-05-09 14:29:37 3004

原创 grasshopper_筛选点云中最近三个点

需求:从一堆点中选择与每个点最近的三个点为一组。1.通过Closest Points对随机点云进行运算,得到每三个最近点为一组的树形数据;2.对每组点连线、封面;3.对所有线去重后,用Mesh Pipe成管。今天在做这个案例的时候,发现通过Closest Points得到的分组点有大量的重复,也就是说由于点云未变,一个点有可能是既是A组的最近点,也是B组的最近点……然后用ghpython进行了一个尝试,还是从点云中取每个点的最近三个点,但是如果一个点满足最近点要求后,就会从点云中剔除,这样所有的点

2020-05-09 13:27:40 4379

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除