ghpython
彦页走召
这个作者很懒,什么都没留下…
展开
-
ghpython_起点、终点、起点切线绘制圆弧
今天继续聊rhinopython101里的案例,根据起点、终点、起点切线绘制圆弧,其实这种绘制圆弧的方式,在现在的ghpython里的rhinoscriptsyntax模块已经有了这种方法,这里,咱们主要是学习编程的思路、内在逻辑和敲代码的肌肉训练。1.构建由起点指向中点的向量,并将其单位化;2.将起点的切线向量也进行单位化;3.将以上两个单元向量求和,并将求和后的向量单位化;4.将相加的单位向量与切线的单位向量进行点乘,注意这里得到结果其实是两个向量的夹角的余弦值,又由于两个向量均为单位向量,所以原创 2020-05-17 20:12:15 · 2000 阅读 · 0 评论 -
ghpython_根据曲线曲率向量和切向量绘制椭圆
今天继续聊rhinopython101里的案例,根据曲线的曲率向量和切向量绘制椭圆,其实就是通过椭圆的走向来反应曲线的扭转情况。1.求出曲线的区间值;2.设定t值初始值为曲线起点处,根据采样点数,求得曲线t值的步进值;3.利用while循环对t值进行迭代,分别求得每个t值处的取虑点、切向量、曲率向量,曲率向量和切向量叉乘,可以得到法向量;4.根据法向量和曲率向量构建平面,在平面上绘制椭圆;5.为了最后对曲率椭圆进行着色,这里将曲率半径也作为参数列表输出,用来映射颜色值。#ghpython原创 2020-05-17 20:06:54 · 1102 阅读 · 0 评论 -
ghpython_球体表面分布小圆
继续分享rhinopython101里的案例,今天分享的是在球体表面布置同一半径大小的圆。1.根据球体半径,计算小圆在垂直方向的圈数;2.设定垂直角度的初始值以及步进值;3.求出每一层小圆圆心所在的大圆周长以及每一水平面的小圆数量;4.设定每一圈的角度初始值以及步进值;5.利用while循环,求出每一圈的每个小圆的圆心;6.根据圆心与原点的向量,获取圆心处的切平面;7.在切平面上绘制小圆;#ghpython#...原创 2020-05-13 15:30:26 · 968 阅读 · 0 评论 -
ghpython_曲面表面生成细分曲面
1.提取曲面的uv方向区间;2.根据uv方向细分数得到区间的步进值;3.用嵌套while循环分别对uv值进行递增,根据uv值提取曲面的uv点;4.判定uv点与曲面的距离,主要是判断点是否在修剪后的曲面上;5.对修剪后的曲面上的点生成曲面平面,在平面上绘制曲面。#ghpython#...原创 2020-05-11 07:54:44 · 1221 阅读 · 0 评论 -
ghpython_曲面表面生成最短路径
在曲面表面设定起点和终点,绘制起点和终点之间的最短路径线。1.函数1:建立起点和终点之间在曲面上的uv点;2.函数2:得到所有点的连线长度,返回总长度;3.函数3:将所有顶点进行平滑,返回平滑后的点;4.函数4:将点投影到曲面,返回投影点列表;5.函数5:将点向曲面靠近,返回靠近后的点;6.函数6:在相邻两点之间创建中点,将点进行细分;7.函数7:主函数,建立起点和终点之间的最短路径点。通过该案例,可以看到在实际编程的时候,一般一个函数只需要解决单一问题,一个复杂的问题可以用多个不同的函数相原创 2020-05-09 20:40:40 · 1277 阅读 · 1 评论