教程 | Rhino Compute Sevice介绍及环境搭建

compute.rhino3d:基于RhinoCommon和无头Rhino的REST几何服务器 Rhino计算服务器 用于RhinoCommon和Grasshopper的REST API 有关更多信息,请参见 。 Compute构建在Windows Rhino 7之上,并且可以在任何适用于Windows的Rhino 7上运行。 :hammer_and_wrench: 从开始,在本地运行Compute以进行测试和调试。 :satellite_antenna: 请参阅以设置自己的Compute服务器。 立即下载
AI摘要

本文介绍了Rhino Compute Service,它可让普通开发环境调用Rhino图形库。阐述其官方定义、潜在用途,以Python为例讲解安装步骤,还说明了搭建本地Server服务器的方法及加快运行速度的作用,最后介绍了加载Grasshopper文件时在Python中传递数据的要点。

Rhino Compute Service

1. 前言

7月份参加了一个比赛,小组做了一个建筑生成类的产品,需要用到Rhino+Grasshopper平台进行开发。由于小组来自不同专业:土建类、通信、计算机等,短时间熟悉Rhino不切实际。但完全脱离它,图形的输入与输出又困难重重。
在拓展思路的技术预研阶段,了解到了Rhino Compute Service这种通过云端或者搭建本地Web服务器来从普通的开发环境中调用rhino的图形库,并且可以读取、输入、输出ghx(grasshopper支持utf-8的文件格式。)
考虑到中文互联网几乎没有对其介绍与应用,笔者当个搬运工,讲解如何搭建环境以及如何调用库函数等步骤。

2. 简介

2.1 官方定义

Rhino Compute针对研发人员的云端存取几何计算机,简单来说可以借助其在一般开发环境中调用Rhino的图形库函数,无需在Rhino里通过IronPython里编写(太多Python常用库无法import)。
官方网址: https://www.rhino3d.com/compute

Compute 是一个实验项目,允许通过 REST API 访问 McNeel 云计算服务中的 Rhino 几何图形库。Compute 是基于 Rhino Inside™ 技术的,运行于在线 Web 服务器当中。
Compute 可以看做是 Rhino3dm 项目的附加几何延伸。
Compute 潜在用途:
* 通过基于 REST API 的云端服务进行几何运算。
* 在 Rhino 外部调用 2400+ RhinoCommon API 。
* 访问无法在 OpenNurbs 库中调用的附加 RhinoCommon 函数,包括:
* 最近点计算
* 相交计算
* 曲面细分 (网格划分)
* 插值运算
* 布尔运算
* 面积与质量属性计算
* 其他各种各样的几何计算
* 客户端函数库可以使用独立的 C#(.NET)、Python、JavaScript 等语言。
* 运行在本地的 Compute 服务器可以用作私有计算实例或并行计算农场节点。

3. 安装Compute

Rhino Compute目前支持C#/ Python/ JavaScript,本文将以Python为例。

pip install rhino3dm
pip install compute-rhino3d

3.1 rhino3dm.py- 是Rhino3dm库的一部分。这是OpenNurbs的Python封装,其中包含读取和写入Rhino Geometry Objects的功能。

3.2 compute - rhino3d.py- 是一个封装包,用于添加RhinoCommon中可用的类,它无法通过rhino3dm.py获得。Compute-rhino3d通过调用McNeel Cloud Compute服务器以实现这些功能。它处理所有授权和JSON数据转换。

import rhino3dm
import compute_rhino3d
compute_rhino3d.Util.authToken = auth_token
auth_token =''

在不搭建本地服务器的情况下,需要需要申请秘钥请求访问Rhino Compute的服务器,在大陆特殊的网络情况下,通常会很慢。
申请网址:https://www.rhino3d.com/compute/login(可能需梯子)

3.3 一个简单的案例:

import rhino3dm
import random
compute_rhino3d.Util.authToken = ""  #申请访问云服务器秘钥
model = rhino3dm.File3dm(
GH-UnitTest-by-RhinoCompute:示例如何使用RhinoCompute直接从MsTest和其他来源的Grasshopper中测试Grasshopper组件 GH-UnitTest-byRhinoCompute 无法对Grasshopper组件本身进行单元测试。 但是,此存储库是如何使用RhinoCompute直接在MsTest和其他来源的Grasshopper中测试Grasshopper组件的示例。 这将使您能够为RhinoCommon和Grasshopper依赖的实现编写测试。 立即下载

相关推荐

compute.rhino3d.appserver:用于在Rhino Compute上解决Grasshopper定义的node.js服务器

Rhino Compute AppServer 一个node.js服务器,充当客户端应用程序和私有compute.rhino3d服务器之间的桥梁。 此应用旨在承载一个或多个自定义草hopper定义,并充当客户端应用程序可以调用以使用修改后的输入参数解决定义的API。 特征 易于入门:将这个仓库分叉/克隆并在本地运行以进行测试,或者将其推送到诸如Heroku的服务中以用于生产Web服务器 易于定制:分叉此存储库,将自定义的蚱place定义放置在files目录中,现在您将拥有一个用于定义的自定义AppServer。 缓存:假设提供相同的输入集时定义产生的结果相同,则appserver将所有结果缓存在内存中以加快响应时间。 时间:将服务器时间标头返回给客户端,以帮助诊断定义解决过程中的瓶颈。 入门 分叉此回购 按照在计算机上进行测试和调试 按照将自定义的AppServer推送到用于生产W

import_3dm:Rhinoceros 3D文件的Blender导入程序脚本

在Blender中导入Rhinoceros 3D文件 该插件使用rhino3dm.py模块( )读取3dm文件。 要求 此加载项与Blender 2.83及更高版本一起使用。 安装 在Windows和MacOS上,您需要从下载正确的ZIP存档。 下载ZIP档案 打开Blender首选项 打开附加组件部分 单击安装...按钮 选择下载的ZIP存档 点击安装 启用附加组件

rhino3dm:基于具有 RhinoCommon 风格的 OpenNURBS 的库

犀牛3dm rhino3dm是一组基于几何库的库,具有风格。 这提供了通过独立于 Rhino 的 .NET、Python 或 JavaScript 应用程序访问和操作几何图形的能力。 功能包括 创建、查询和存储 Rhino 支持的所有几何类型。 这包括点、点云、NURBS 曲线和曲面、多重曲面 (B-Reps)、网格、注释、挤出和 SubD。 使用 Rhino 支持的非几何类,如图层、对象属性、变换和视口 从.3dm文件格式读取和写入上述所有信息 用作客户端调用以进行几何对象的高级操作 适用于大多数平台(Windows、macOS、Linux) rhino3dm.py (Python) rhino3dm.py是一个 python 包,可以在所有当前版本的 CPython(2.7 和 3.7+)上使用,并且可以在所有平台(Windows、macOS、Linux)上。 pip ins

新手避坑指南:从GEO数据库下载单细胞测序数据的5个关键步骤(附实操截图)

本文为单细胞测序数据下载新手提供5个关键避坑步骤,涵盖数据搜索准备、样本量评估、文件选择决策、元数据诊断及高效下载技术。通过实操截图和代码示例,帮助研究者快速锁定GEO数据库中的优质单细胞测序数据,避免常见错误。

weixin_30296405的博客 667

InterSystems IRIS 数据库数据平台安装

下载地址:安装包:IRIS_Community-2024.1.0.267.2-win_x64.exe。

yuguang的博客 2373

HC32F460 SPI DMA 实现高效TFT屏幕刷新的实战解析

本文针对HC32F460 MCU驱动TFT屏幕时刷新卡顿的问题,深入解析了SPI DMA技术的实战应用。通过对比传统查询模式与DMA模式的性能数据,详细阐述了如何配置SPI与DMA资源、构建核心驱动框架,并提供了避坑指南与进阶优化思路,最终实现高效、流畅的屏幕刷新,显著降低CPU占用率。

weixin_29163797的博客 151

PredFormer实战:用Transformer搞定交通流量预测(附TaxiBJ数据集代码)

本文详细介绍了如何利用PredFormer这一基于Transformer的先进模型进行交通流量预测,特别针对TaxiBJ数据集提供了完整的实战代码和优化策略。PredFormer通过门控Transformer块(GTB)的创新设计,在时空预测任务中展现出显著优势,相比传统方法将MSE降低33.1%,推理速度提升4.4倍。文章还涵盖了模型轻量化、部署优化等实用技巧,为智慧城市建设中的交通预测提供了高效解决方案。

weixin_29194817的博客 447

相机图像质量研究(15)常见问题总结:光学结构对成像的影响--暗角

老式相机的暗角往往比较明显,周围一圈能够明显感觉到亮度下降的很多,当然有些电源模仿手持相机的摄影效果,也能看到周围明显的亮度下降。一、

xiaoshixiu的专栏 1124

【文献阅读笔记】之基于注意力机制的深度学习路面裂缝检测

中文,计算机辅助设计与图形学学报,第 32 卷 第 8 期,2020 年 8 月。 DOI: 10.3724/SP.J.1089.2020.18059 摘要: 为实现自动准确地检测路面裂缝, 提升路面裂缝检测效果, 提出了一种基于注意力机制的裂缝检测网络 (attention-based crack networks, ACNet). 该网络采用编码器-解码器网络构架, 编码器采用 ResNet34 为骨干网, 提取路面裂缝特征; 在编码器和解码器间加入基于注意力机制的特征模块(attention-b

qq_44785998的博客 7593

【100%通过率】华为OD机试真题 Java&Go 实现【微服务的集成测试】【2023 Q1 | 100分】

现在有n个容器服务,服务的启动可能有一定的依赖性(有些服务启动没有依赖),其次服务自身启动加载会消耗些时间。给你一个nxn 的二维矩阵 useTime,其中 useTime=10 表示服务i自身启动加载需要消耗10s,useTimeli[j]=1 表示服务i 启动依赖服务i 启动完成,useTimei[k]=0,表示服务i 启动不依赖服务 k其实 0

MISAYAONE的博客 1万+

YOLOv13改进策略【多YAML融合】| HWD + DSC3k2_PConv + Detect_MBConv

本文记录的是利用HWD + DSC3k2_PConv + Detect_MBConv改进YOLOv13,分别涉及骨干、颈部和检测头部分的改进。一方面按照此配置,其工作量及创新程度能够满足论文发表的需求,另一方面是一些难以融合多个YAML的举例,以帮助大家理解如何将多个YAML整合到一个YAML中。小波下采样:一个简单但有效的语义分割下采样模块。块由两个主要块组成:无损特征编码块和特征表示学习块。HWD模块与其他下采样模块对比:保留信息能力:传统的下采样方法(如最大池化、平均池化和步幅卷积等)会导致信息丢失,

Limiiiing的博客 496

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

上一篇: 学习 | 针对学生及刚从业建筑人员对常用三款建筑建模软件的用户体验调研和竞品分析
LeonNode
博客等级 码龄7年 10粉丝 3原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值