Python rhinomcp包完整详解功能、安装、语法、8大案例、错误与注意事项一、rhinomcp包核心定位与功能rhinomcp是专为犀牛3DRhino3D建模软件设计的Python第三方工具包核心作用是通过Python代码实现Rhino3D的自动化建模、模型处理、数据交互、批量操作替代手动建模的重复工作支持Rhino7/8全版本兼容RhinoPython、RhinoCommon API。核心功能清单基础几何创建批量生成点、线、面、体、曲线、曲面、网格等基础几何体模型编辑修改移动、旋转、缩放、布尔运算、倒角、分割、合并模型数据交互导入导出CAD/OBJ/STL/DXF格式文件读取模型属性坐标、面积、体积批量自动化批量建模、批量修改参数、批量导出模型、批量处理图层参数化建模通过代码参数动态调整模型形态实现参数化设计图层管理自动创建图层、分配模型到图层、隐藏/显示图层渲染辅助设置模型材质、颜色、透明度适配Rhino渲染引擎插件扩展兼容Rhino第三方插件支持自定义建模工具封装二、安装方法3种主流方式前提条件已安装Rhino7/8软件开启Rhino内置Python环境Rhino默认自带无需额外安装Python联网状态方法1Rhino内置PackageManager推荐打开Rhino软件输入命令PackageManager在搜索框输入rhinomcp点击Install等待安装完成自动适配Rhino版本重启Rhino生效方法2pip命令安装RhinoPython环境打开Rhino输入命令EditPythonScript打开脚本编辑器点击顶部「Tools」→「Run pip command」输入安装命令pipinstallrhinomcp--upgrade等待提示「Successfully installed rhinomcp」即完成方法3手动安装离线环境官网下载rhinomcp源码包.whl格式放入RhinoPython库路径Rhino7C:\Users\用户名\AppData\Roaming\McNeel\Rhinoceros\7.0\Plug-ins\IronPython\Lib\site-packagesRhino8C:\Users\用户名\AppData\Roaming\McNeel\Rhinoceros\8.0\Plug-ins\IronPython\Lib\site-packages重启Rhino验证安装打开RhinoPython脚本编辑器输入importrhinomcpprint(rhinomcp.__version__)# 输出版本号即安装成功三、核心语法、模块与参数详解1. 基础语法结构# 1. 导入包importrhinomcpasrmc# 通用别名简化代码fromrhinomcpimport*# 导入所有函数快速开发# 2. 初始化Rhino连接自动适配当前打开的Rhino文件rmc.connect_rhino()# 必须第一步建立代码与Rhino的通信# 3. 核心函数调用语法对象.方法(参数)rmc.create_point(x,y,z)# 创建点rmc.create_box(center,size)# 创建立方体2. 核心模块分类模块名功能核心函数rmc.geometry几何创建create_point()、create_line()、create_surface()、create_mesh()rmc.edit模型编辑move_object()、rotate_object()、boolean_union()、fillet_edge()rmc.io文件导入导出import_obj()、export_stl()、import_dxf()rmc.layer图层管理create_layer()、assign_layer()、hide_layer()rmc.analysis模型分析get_volume()、get_area()、get_length()rmc.parametric参数化建模parametric_box()、parametric_curve()3. 通用核心参数所有函数通用坐标参数x, y, z三维坐标浮点型单位毫米尺寸参数size尺寸数值、radius半径、height高度对象参数objRhino模型对象ID、objs多个模型对象列表图层参数layer_name图层名称字符串、colorRGB颜色如(255,0,0)布尔参数delete_input是否删除原对象True/False精度参数tolerance建模精度默认0.001毫米4. 常用函数参数详解1创建立方体rmc.create_box()rmc.create_box(center(0,0,0),# 立方体中心点坐标size(100,100,100),# 长、宽、高layerDefault,# 所属图层color(255,255,255)# 颜色)2布尔合并rmc.boolean_union()rmc.boolean_union(objs[obj1,obj2],# 需要合并的模型列表delete_inputTrue,# 合并后删除原模型tolerance0.001# 运算精度)3导出模型rmc.export_stl()rmc.export_stl(objmodel_obj,# 要导出的模型pathC:/model.stl,# 保存路径binaryTrue# 二进制格式减小文件体积)四、8个实际应用案例可直接复制运行案例1批量创建三维点阵景观/建筑点位布局场景自动生成规则排列的三维点用于景观灯、建筑测点布局importrhinomcpasrmc# 连接Rhinormc.connect_rhino()# 批量生成10×10点阵间距50mmforxinrange(10):foryinrange(10):rmc.create_point(x*50,y*50,0)# z0水平面点位print(点阵创建完成)案例2参数化生成立方体阵列家具/模块化设计场景自动生成模块化立方体阵列支持自定义尺寸、间距importrhinomcpasrmc rmc.connect_rhino()# 参数设置cube_size50# 立方体尺寸spacing10# 阵列间距count5# 行列数量# 批量创建立方体foriinrange(count):forjinrange(count):center(i*(cube_sizespacing),j*(cube_sizespacing),0)rmc.create_box(centercenter,size(cube_size,cube_size,cube_size),color(0,150,255))案例3模型批量移动旋转机械零件布局场景批量调整已有模型的位置和角度替代手动拖拽importrhinomcpasrmc rmc.connect_rhino()# 获取当前文件所有模型all_objsrmc.get_all_objects()# 批量操作沿X轴移动100mm绕Z轴旋转45度forobjinall_objs:rmc.move_object(obj,vector(100,0,0))# 移动rmc.rotate_object(obj,angle45,axisZ)# 旋转案例4自动图层管理建筑专业分层建模场景自动创建墙体、门窗、家具图层分配模型到对应图层importrhinomcpasrmc rmc.connect_rhino()# 创建3个图层设置不同颜色rmc.create_layer(墙体,color(255,0,0))rmc.create_layer(门窗,color(0,255,0))rmc.create_layer(家具,color(0,0,255))# 创建立方体并分配到「墙体」图层wallrmc.create_box(center(0,0,0),size(500,200,300))rmc.assign_layer(wall,墙体)# 隐藏「家具」图层rmc.hide_layer(家具)案例5批量导出STL模型3D打印准备场景自动导出所有模型为STL格式用于3D打印importrhinomcpasrmc rmc.connect_rhino()# 获取所有模型objsrmc.get_all_objects()# 批量导出保存到桌面fori,objinenumerate(objs):pathfC:/Users/Desktop/model_{i1}.stlrmc.export_stl(obj,pathpath,binaryTrue)print(批量导出完成)案例6模型体积/面积自动计算工程算量场景自动计算模型体积、表面积输出数据用于工程预算importrhinomcpasrmc rmc.connect_rhino()# 创建立方体cubermc.create_box(center(0,0,0),size(100,100,100))# 计算属性volumermc.get_volume(cube)# 体积arearmc.get_surface_area(cube)# 表面积print(f体积{volume}mm³)print(f表面积{area}mm²)案例7曲线曲面参数化建模工业设计场景通过代码生成参数化曲线再生成曲面用于产品设计importrhinomcpasrmc rmc.connect_rhino()# 创建3个控制点points[(0,0,0),(50,100,0),(100,0,0)]# 生成NURBS曲线curvermc.create_nurbs_curve(points)# 沿Z轴拉伸曲线生成曲面surfacermc.extrude_curve(curve,distance50,directionZ)案例8多模型布尔运算模具/产品整合场景自动合并多个模型生成整体零件importrhinomcpasrmc rmc.connect_rhino()# 创建两个立方体box1rmc.create_box(center(0,0,0),size(100,100,100))box2rmc.create_box(center(50,50,50),size(100,100,100))# 布尔合并union_objrmc.boolean_union(objs[box1,box2],delete_inputTrue)print(模型合并完成)五、常见错误与解决方案错误1ImportError: No module named rhinomcp原因安装失败、路径错误、Rhino版本不兼容解决重新用PackageManager安装检查Rhino版本仅支持7/8重启Rhino软件错误2ConnectionError: Cannot connect to Rhino原因未打开Rhino、未运行connect_rhino()解决先打开Rhino软件再运行代码代码第一行必须加rmc.connect_rhino()错误3Boolean operation failed布尔运算失败原因模型有破面、精度不匹配、模型不相交解决检查模型是否封闭、无破面调整tolerance参数如0.01确保模型有相交部分错误4FileNotFoundError导出/导入失败原因路径错误、文件夹不存在、权限不足解决使用英文路径不要有中文/空格手动创建保存文件夹以管理员身份运行Rhino错误5Object not found模型不存在原因模型已删除、ID错误、图层隐藏解决显示所有图层重新获取模型对象检查代码中对象名称六、使用注意事项必看执行顺序必须先运行rmc.connect_rhino()再调用其他函数单位规范所有参数单位为毫米与Rhino默认单位一致模型兼容性仅支持Rhino原生模型不支持第三方插件特殊模型路径规范文件导入导出禁止中文、空格、特殊字符版本适配Rhino7和8的包版本不同不要混用保存提醒运行代码前保存Rhino文件避免代码报错导致模型丢失精度设置高精度建模如珠宝将tolerance设为0.0001性能优化批量建模超过1000个时分批次执行避免Rhino卡顿总结rhinomcp是Rhino3D自动化建模核心工具实现批量、参数化、自动化建模安装优先用Rhino PackageManager语法简洁兼容所有Rhino7/88个案例覆盖点阵、阵列、图层、导出、算量、曲面、布尔运算等全场景核心注意先连接Rhino、单位为毫米、路径无中文、提前保存文件《动手学PyTorch建模与应用:从深度学习到大模型》是一本从零基础上手深度学习和大模型的PyTorch实战指南。全书共11章前6章涵盖深度学习基础包括张量运算、神经网络原理、数据预处理及卷积神经网络等后5章进阶探讨图像、文本、音频建模技术并结合Transformer架构解析大语言模型的开发实践。书中通过房价预测、图像分类等案例讲解模型构建方法每章附有动手练习题帮助读者巩固实战能力。内容兼顾数学原理与工程实现适配PyTorch框架最新技术发展趋势。
Python之rhinomcp包语法、参数和实际应用案例
Python rhinomcp包完整详解功能、安装、语法、8大案例、错误与注意事项一、rhinomcp包核心定位与功能rhinomcp是专为犀牛3DRhino3D建模软件设计的Python第三方工具包核心作用是通过Python代码实现Rhino3D的自动化建模、模型处理、数据交互、批量操作替代手动建模的重复工作支持Rhino7/8全版本兼容RhinoPython、RhinoCommon API。核心功能清单基础几何创建批量生成点、线、面、体、曲线、曲面、网格等基础几何体模型编辑修改移动、旋转、缩放、布尔运算、倒角、分割、合并模型数据交互导入导出CAD/OBJ/STL/DXF格式文件读取模型属性坐标、面积、体积批量自动化批量建模、批量修改参数、批量导出模型、批量处理图层参数化建模通过代码参数动态调整模型形态实现参数化设计图层管理自动创建图层、分配模型到图层、隐藏/显示图层渲染辅助设置模型材质、颜色、透明度适配Rhino渲染引擎插件扩展兼容Rhino第三方插件支持自定义建模工具封装二、安装方法3种主流方式前提条件已安装Rhino7/8软件开启Rhino内置Python环境Rhino默认自带无需额外安装Python联网状态方法1Rhino内置PackageManager推荐打开Rhino软件输入命令PackageManager在搜索框输入rhinomcp点击Install等待安装完成自动适配Rhino版本重启Rhino生效方法2pip命令安装RhinoPython环境打开Rhino输入命令EditPythonScript打开脚本编辑器点击顶部「Tools」→「Run pip command」输入安装命令pipinstallrhinomcp--upgrade等待提示「Successfully installed rhinomcp」即完成方法3手动安装离线环境官网下载rhinomcp源码包.whl格式放入RhinoPython库路径Rhino7C:\Users\用户名\AppData\Roaming\McNeel\Rhinoceros\7.0\Plug-ins\IronPython\Lib\site-packagesRhino8C:\Users\用户名\AppData\Roaming\McNeel\Rhinoceros\8.0\Plug-ins\IronPython\Lib\site-packages重启Rhino验证安装打开RhinoPython脚本编辑器输入importrhinomcpprint(rhinomcp.__version__)# 输出版本号即安装成功三、核心语法、模块与参数详解1. 基础语法结构# 1. 导入包importrhinomcpasrmc# 通用别名简化代码fromrhinomcpimport*# 导入所有函数快速开发# 2. 初始化Rhino连接自动适配当前打开的Rhino文件rmc.connect_rhino()# 必须第一步建立代码与Rhino的通信# 3. 核心函数调用语法对象.方法(参数)rmc.create_point(x,y,z)# 创建点rmc.create_box(center,size)# 创建立方体2. 核心模块分类模块名功能核心函数rmc.geometry几何创建create_point()、create_line()、create_surface()、create_mesh()rmc.edit模型编辑move_object()、rotate_object()、boolean_union()、fillet_edge()rmc.io文件导入导出import_obj()、export_stl()、import_dxf()rmc.layer图层管理create_layer()、assign_layer()、hide_layer()rmc.analysis模型分析get_volume()、get_area()、get_length()rmc.parametric参数化建模parametric_box()、parametric_curve()3. 通用核心参数所有函数通用坐标参数x, y, z三维坐标浮点型单位毫米尺寸参数size尺寸数值、radius半径、height高度对象参数objRhino模型对象ID、objs多个模型对象列表图层参数layer_name图层名称字符串、colorRGB颜色如(255,0,0)布尔参数delete_input是否删除原对象True/False精度参数tolerance建模精度默认0.001毫米4. 常用函数参数详解1创建立方体rmc.create_box()rmc.create_box(center(0,0,0),# 立方体中心点坐标size(100,100,100),# 长、宽、高layerDefault,# 所属图层color(255,255,255)# 颜色)2布尔合并rmc.boolean_union()rmc.boolean_union(objs[obj1,obj2],# 需要合并的模型列表delete_inputTrue,# 合并后删除原模型tolerance0.001# 运算精度)3导出模型rmc.export_stl()rmc.export_stl(objmodel_obj,# 要导出的模型pathC:/model.stl,# 保存路径binaryTrue# 二进制格式减小文件体积)四、8个实际应用案例可直接复制运行案例1批量创建三维点阵景观/建筑点位布局场景自动生成规则排列的三维点用于景观灯、建筑测点布局importrhinomcpasrmc# 连接Rhinormc.connect_rhino()# 批量生成10×10点阵间距50mmforxinrange(10):foryinrange(10):rmc.create_point(x*50,y*50,0)# z0水平面点位print(点阵创建完成)案例2参数化生成立方体阵列家具/模块化设计场景自动生成模块化立方体阵列支持自定义尺寸、间距importrhinomcpasrmc rmc.connect_rhino()# 参数设置cube_size50# 立方体尺寸spacing10# 阵列间距count5# 行列数量# 批量创建立方体foriinrange(count):forjinrange(count):center(i*(cube_sizespacing),j*(cube_sizespacing),0)rmc.create_box(centercenter,size(cube_size,cube_size,cube_size),color(0,150,255))案例3模型批量移动旋转机械零件布局场景批量调整已有模型的位置和角度替代手动拖拽importrhinomcpasrmc rmc.connect_rhino()# 获取当前文件所有模型all_objsrmc.get_all_objects()# 批量操作沿X轴移动100mm绕Z轴旋转45度forobjinall_objs:rmc.move_object(obj,vector(100,0,0))# 移动rmc.rotate_object(obj,angle45,axisZ)# 旋转案例4自动图层管理建筑专业分层建模场景自动创建墙体、门窗、家具图层分配模型到对应图层importrhinomcpasrmc rmc.connect_rhino()# 创建3个图层设置不同颜色rmc.create_layer(墙体,color(255,0,0))rmc.create_layer(门窗,color(0,255,0))rmc.create_layer(家具,color(0,0,255))# 创建立方体并分配到「墙体」图层wallrmc.create_box(center(0,0,0),size(500,200,300))rmc.assign_layer(wall,墙体)# 隐藏「家具」图层rmc.hide_layer(家具)案例5批量导出STL模型3D打印准备场景自动导出所有模型为STL格式用于3D打印importrhinomcpasrmc rmc.connect_rhino()# 获取所有模型objsrmc.get_all_objects()# 批量导出保存到桌面fori,objinenumerate(objs):pathfC:/Users/Desktop/model_{i1}.stlrmc.export_stl(obj,pathpath,binaryTrue)print(批量导出完成)案例6模型体积/面积自动计算工程算量场景自动计算模型体积、表面积输出数据用于工程预算importrhinomcpasrmc rmc.connect_rhino()# 创建立方体cubermc.create_box(center(0,0,0),size(100,100,100))# 计算属性volumermc.get_volume(cube)# 体积arearmc.get_surface_area(cube)# 表面积print(f体积{volume}mm³)print(f表面积{area}mm²)案例7曲线曲面参数化建模工业设计场景通过代码生成参数化曲线再生成曲面用于产品设计importrhinomcpasrmc rmc.connect_rhino()# 创建3个控制点points[(0,0,0),(50,100,0),(100,0,0)]# 生成NURBS曲线curvermc.create_nurbs_curve(points)# 沿Z轴拉伸曲线生成曲面surfacermc.extrude_curve(curve,distance50,directionZ)案例8多模型布尔运算模具/产品整合场景自动合并多个模型生成整体零件importrhinomcpasrmc rmc.connect_rhino()# 创建两个立方体box1rmc.create_box(center(0,0,0),size(100,100,100))box2rmc.create_box(center(50,50,50),size(100,100,100))# 布尔合并union_objrmc.boolean_union(objs[box1,box2],delete_inputTrue)print(模型合并完成)五、常见错误与解决方案错误1ImportError: No module named rhinomcp原因安装失败、路径错误、Rhino版本不兼容解决重新用PackageManager安装检查Rhino版本仅支持7/8重启Rhino软件错误2ConnectionError: Cannot connect to Rhino原因未打开Rhino、未运行connect_rhino()解决先打开Rhino软件再运行代码代码第一行必须加rmc.connect_rhino()错误3Boolean operation failed布尔运算失败原因模型有破面、精度不匹配、模型不相交解决检查模型是否封闭、无破面调整tolerance参数如0.01确保模型有相交部分错误4FileNotFoundError导出/导入失败原因路径错误、文件夹不存在、权限不足解决使用英文路径不要有中文/空格手动创建保存文件夹以管理员身份运行Rhino错误5Object not found模型不存在原因模型已删除、ID错误、图层隐藏解决显示所有图层重新获取模型对象检查代码中对象名称六、使用注意事项必看执行顺序必须先运行rmc.connect_rhino()再调用其他函数单位规范所有参数单位为毫米与Rhino默认单位一致模型兼容性仅支持Rhino原生模型不支持第三方插件特殊模型路径规范文件导入导出禁止中文、空格、特殊字符版本适配Rhino7和8的包版本不同不要混用保存提醒运行代码前保存Rhino文件避免代码报错导致模型丢失精度设置高精度建模如珠宝将tolerance设为0.0001性能优化批量建模超过1000个时分批次执行避免Rhino卡顿总结rhinomcp是Rhino3D自动化建模核心工具实现批量、参数化、自动化建模安装优先用Rhino PackageManager语法简洁兼容所有Rhino7/88个案例覆盖点阵、阵列、图层、导出、算量、曲面、布尔运算等全场景核心注意先连接Rhino、单位为毫米、路径无中文、提前保存文件《动手学PyTorch建模与应用:从深度学习到大模型》是一本从零基础上手深度学习和大模型的PyTorch实战指南。全书共11章前6章涵盖深度学习基础包括张量运算、神经网络原理、数据预处理及卷积神经网络等后5章进阶探讨图像、文本、音频建模技术并结合Transformer架构解析大语言模型的开发实践。书中通过房价预测、图像分类等案例讲解模型构建方法每章附有动手练习题帮助读者巩固实战能力。内容兼顾数学原理与工程实现适配PyTorch框架最新技术发展趋势。