Clarisse 3.6 python api

Posted mightyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Clarisse 3.6 python api相关的知识,希望对你有一定的参考价值。

摘要

由于特殊原因,需要整一下 clarisse,所以需要整理下它的 python api,方便写脚本。按照管理,先提供下官方文档的基本介绍内容(翻译)。

官方文档

Clarisse Object 模型的介绍
这个章节介绍 Clarisse Object 模型,它是学习 Clarrise API 的关键内容。

Clarisse 项目工程里存放的什么东西

在 Clarisse 里,一个项目工程是一些不同类型的 OfObject 或者 OfClass 实例(instance) 的集合,存放在一种以层级关系作为结构的 OfContext 中。一个 context 类似于文件系统中的文件夹,它也可以控制可见性。想要了解更多有关 context 的内容,请参考用户手册。
整个项目的入口是通过 OfObjectFactory 这个对象工厂进行访问的。在 Python 里,你可以通过调用 ix.application.get_factory()来获取对象工厂,而 C++ 里则通过 AppObject::get_factory 来实现。(从这里可以猜测,想要查看 ix.application 有哪些属性和方法供 Python 调用,直接查看文档里 AppObject 即可,帮助文档没有直接提供 Python 的内容)

什么是类型(classes)?

某一项(item)的类型,是通过该项的 OfClass 进行定义的。它们也可以决定 Clarisse 对它们进行处理的时候进行哪些操作。类与它们的属性、可调用的属性,可以被继承。例如,在 Clarisse 里,OfClass|ProjectItem 是非常重要的类型。当一个类的实例直接或者间接的从 OfClass|ProjectItem 类继承,它就会被自动的保存在项目工程文件里。

注意
为了避免在 C++ 的类型与 OfClass 之间产生混淆,我们已经将文档中所有有关自 OfClass 的内容都加上了 OfClass 的前缀。比如 OfClass GeometryPolyMesh 将会显示为 OfClass|GeometryPolymesh。

例如,OfClass|GeometryPolyfile 类定义了一个多边形面,被保存在一个继承自 OfClass|ProjectItem 的外部文件中。这句话解释了为什么 OfClass|GeometryPolyfile 的项被保存在项目工程文件里。如果你想要在 Clarisse 里看到所有类型的层级关系图,你可以使用 Class Explorer 部件(窗口)进行查看。只需要点击主窗口菜单 Window > Class Explorer... 。

注意
Class Explorer 并不会显示 OfClass 的真实名称。而是根据它们的真实名称,以一种更为人类所能理解的方式进行显示。如果想要显示这些项真实的类型名称,只需要启用浏览器的 类型(Type)列即可。想要启用或者禁用这个列,在浏览器的右边,右击列表头的空白区域勾选即可。

如果想要查看 Polyfile(OfClas|GeometryPolyfile)的类型层级图,你可以看到如下内容:
Polyfile (OfClass|GeometryPolyfile) < Polymesh (OfClass|GeometryPolymesh) < OfClass|Geometry < OfClass|SceneObject < Scene Item ( OfClass|SceneItem) < Project Item (OfClass|ProjectItem)

OfClass|GeometryPolyfile 是通过一个外部文件定义的专门用于定义多边形面的类型。OfClass|GeometryPolymesh 定义了一种特殊的集合体类型,用于定义一些常规的几何体面。OfClass|Geometry 定义了几何体的概念。OfClass|SceneObject 定义了提供给 Clarisse 渲染器的所有可渲染物体。

以上是关于Clarisse 3.6 python api的主要内容,如果未能解决你的问题,请参考以下文章

CG工具集Isotropix Clarisse iFX 4.0SP2b安装教程

python 3.6 setup

在 conda 中将 python 从 3.5 更新到 3.6

使用conda升级到python 3.6

谷歌云:需要 python 3.6,在 ssh 中是 3.6,但在 jupyter notebook 中仍然是 3.5

在 slim python 3.6 docker 映像上运行 python mysql 客户端