热门标签

打印 上一主题 下一主题

[教学] 解决 GhPython 编译以后无法使用 ghdoc 的问题

[复制链接]
查看: 4605|回复: 1

4

主题

34

帖子

158

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
158
跳转到指定楼层
楼主
发表于 2019-3-23 13:41:15 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
问题描述

在用 GhPython 写代码时,有时需要把 scriptcontext.doc 切换到当前的 Rhino 文档,代码执行完毕后再切换回来:

[Python] 纯文本查看 复制代码
import scriptcontext as sc
import Rhino
sc.doc = Rhino.RhinoDoc.ActiveDoc
"""
do something
……
……
"""
sc.doc = ghdoc

直接在 Grasshopper 中的 GhPython Script 电池中使用这个脚本是没有问题的。但当我们编译成看不到源代码的电池以后,就出现了问题:



找不到全局变量 ghdoc

解决方法
造成这个问题的原因是找不到 ghdoc 这个全局变量,所以我们在这里手工初始化 ghdoc:
在 sc.doc = ghdoc 前面加上:
[Python] 纯文本查看 复制代码
import GhPython
ghdoc = GhPython.DocReplacement.GrasshopperDocument()

最后修改过的代码如下:
[Python] 纯文本查看 复制代码
import scriptcontext as sc
import Rhino
import GhPython
sc.doc = Rhino.RhinoDoc.ActiveDoc
"""
do something
……
……
"""
ghdoc = GhPython.DocReplacement.GrasshopperDocument()
sc.doc = ghdoc

现在去编译就不会再有问题了。

评分

参与人数 1金币 +4 经验 +2 收起 理由
Simon + 4 + 2 很给力!

查看全部评分

收藏 分享
回复

使用道具 举报

18

主题

166

帖子

984

积分

超级版主

Rank: 8Rank: 8

积分
984
沙发
发表于 2019-3-25 12:18:57 | 只看该作者
学习了学习了
[db:签名]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩推荐

Rhino 6 的授权管理模式的调整与转换

2020-08-20 图文教学

2020冬季 Rhino 建筑造型系统面授课程

2020-03-21 面授课程

课程介绍|Rhino工业/艺术设计曲面造型高级

2020-03-20 面授课程

2020暑期 Grasshopper参数化系统面授课程

2020-03-20 面授课程

VisualARQ 2.7 发布更新

2020-02-17 新闻

VisualARQ 2.6 发布更新

2019-12-12 新闻

ShapeMap–复杂形体的表面纹理贴合参数化插

2019-11-04 新闻

图文教学 | Rhino 6 细分建模 BARCELONA 椅

2019-06-30 图文教学

Rhino3D(犀牛)中文网

  • 深圳:0755-29642189
  • 上海:021-56496412
  • 成都:028-61592400
  • support@shaper3d.com

关注我们

Copyright   ©2007-2017  Rhino3D犀牛中文网  Powered by©Discuz!     ( 粤ICP备12051517号-5