犀牛导入曲面使其接近于平行xy平面

犀牛里将导入的曲面进行自动校准,使其接近于水平(平行于xy平面)

该回答引用GPT:
在犀牛中导入的曲面有可能会出现不平行于xy平面的情况,为了便于后续的操作和设计,我们需要将其自动校准,使其接近水平(平行于xy平面)。

实现该功能的方法是通过RhinoScript语言编写脚本,利用犀牛的TransFrom方法,将曲面沿着x、y、z轴或者任意自定义的方向进行比例缩放或旋转,使其变得平行于xy平面。

例如,我们可以使用以下代码将选中的曲面沿着x、y轴进行贴地:

import rhinoscriptsyntax as rs
import Rhino.Geometry as rg

# 获取选中的曲面
surface = rs.GetObject("Select surface", rs.filter.surface)

# 计算曲面的法线
surface_normal = rs.SurfaceNormal(surface)

# 定义一个向量,表示曲面需要旋转的方向
rotation_vector = rg.Vector3d(-surface_normal.X, -surface_normal.Y, -surface_normal.Z)

# 计算曲面需要旋转的角度
angle = rg.Vector3d.VectorAngle(surface_normal, rg.Vector3d.ZAxis, rg.Plane.WorldXY)

# 进行旋转变换
rotation_transform = rg.Transform.Rotation(angle, rotation_vector, rg.Point3d.Origin)
scaled_transform = rg.Transform.Scale(rg.Point3d.Origin, 1, 1, 0)
transform = rotation_transform * scaled_transform
rs.TransformObjects(surface, transform, False)

当然,以上代码仅仅是一个示例,具体的方向、角度和缩放比例等还需要根据具体情况进行调整。

总之,通过编写自定义的RhinoScript脚本,我们可以将曲面自动校准,使其平行于xy平面,为后续的设计操作提供便利。
如还有疑问,可留言帮助解决。

该回答引用chatgpt:
你可以使用Rhino3D的Python API来导入犀牛文件并调整曲面使其接近于平行xy平面。具体步骤如下:

首先安装Rhino3D和Python插件,然后在Python中导入Rhino3D API。


import rhino3dm

使用rhino3dm.File3dm类打开犀牛文件。


file = rhino3dm.File3dm.Read("path/to/rhino/file.3dm")

获取曲面对象并进行调整。你可以使用Rhino3D的几何计算功能来将曲面调整为接近于平行xy平面。


# 获取第一个曲面对象
surface = file.Objects.FindByObjectType(rhino3dm.ObjectType.Surface).Geometry

# 将曲面旋转至平行于xy平面
plane = rhino3dm.Plane.WorldXY
xform = rhino3dm.Transform.Rotation(-surface.Normal.AngleTo(rhino3dm.Vector3d.ZAxis), plane.Normal, plane.Origin)
surface.Transform(xform)

保存调整后的文件。


file.Write("path/to/output/file.3dm", rhino3dm.File3dmWriteOptions.Default)

这样,你就可以使用Python和Rhino3D API将曲面对象导入并调整为接近于平行xy平面的形状。

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7578307
  • 除此之外, 这篇博客: 四年手动软件测试,裸辞后找不到工作怎么办?中的 问题三:目标薪资的测试岗位需要什么技能?(目标水平和当前自己水平的差距) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 做了软件测试4年了,证明这个行业对于你来说,还是有一定的吸引力在。不错的薪资待遇、相对不错的工作环境、更充沛的自主时间......不管是处于什么原因。总之你选择软件测试还做了这么长时间,还是期望在这个行业有更好的发展拿到更好的收入。这个行业还是不错的,做了4年应该也可以在周边环境中了解到对应的情况,这里不多啰嗦。

    再回到主题,裸辞的原因是什么?无非几种情况,1钱不够,2加班多压力大,3没发展,4其它的外在因素。那么想改变这些原因要就要做好对应的规划:

    1、钱不够:能力与期望薪资不匹配,那就提升能力

    没事就去查看招聘网站,多去看看岗位需求。有时间就去面面试。看看满足自己期望薪资的岗位到底有什么要求,然后按照下面4个方面去梳理:

    1)代码能力
    2)管理能力
    3)自动化技术能力
    4)专项测试能力

    梳理完后,认识到了差距,才有前进的动力,请加油。

    相信你在招聘网站上搜测试工作的时候,会发现了很多企业开始招聘测试开发了,若你对“什么是测试,什么是测试开发,怎么走上测试开发道路”不清楚的话【个人预测:测试开发将是未来几年企业对测试人员的要求】,请狠狠点击下方链接:

    图标

     

    2、加班多压力大:互联网常规状态,和管理层有直接的关系,跟自身的能力也有关系。

    1)若是管理混乱那就争取自己做上去。
    2)能力不够,无效加班,提高自身能力。当然能力越大,责任越大,相对的压力也会越大。

    3、测试岗位没有发展:没有没有发展的岗位,只有没有发展的人。

    将上面的问题1和问题2,认真再看一遍,然后总结下:
    1. 自己会什么;
    2. 自己会的处于行业什么水平;
    3. 当前测试岗位高薪资的要求有哪些,自己差距在哪。
    4. 自己准备怎么努力?自学还是在线培训还是脱产培训?

     

  • 您还可以看一下 洪青霞老师的从零开始开发3D跑酷游戏教程课程中的 水平控制小节, 巩固相关知识点