Mayaviパイプラインを構成するオブジェクト¶
ここでは,Mayaviパイプラインの主要なオブジェクトについて簡単に説明します.
注釈
Mayaviオブジェクトを指定すると,重要な属性を簡単に確認することができます.このオブジェクトを表示して print_traits()
という名前を付けます.特定のオブジェクトの場合,IPythonで使用すると,IPythonでのスレッド化の問題のためにセグメント・フォールトが発生することがあります.
Scene¶
キーアトリビュート |
|
---|---|
|
すべてのレンダリングが行われる |
|
|
Scene
クラスは mayavi.core.scene
モジュールで定義されています.
参考
Scene
クラスのAPIリファレンスです.
Source¶
データソース,ファイルリーダ,パラメトリックサーフェスなどはすべて Source
クラスのサブクラスです.
キーアトリビュート |
|
---|---|
|
|
|
ソースによって生成された出力の |
Source
クラスは mayavi.core.source
モジュールで定義されています.
参考
Source
クラスのAPIリファレンスです.
Filter¶
Filters セクションに記述されているすべての Filters
は,このクラスのサブクラスです.
キーアトリビュート |
|
---|---|
|
|
|
フィルタに入力するTVTKデータセットオブジェクトの |
|
フィルタによって生成された出力のリストです.これらはTVTKのデータセットであり, Mayaviでのデータ表現 の章で説明されています. |
キーメソッド |
|
---|---|
|
必要に応じて,基礎となるTVTKパイプラインオブジェクトの作成に使用します. |
|
上流のパイプラインが変更された場合,すなわち上流のオブジェクトが |
|
上流パイプラインが変更されてい ない が,パイプラインのデータが変更された場合に呼び出されます.これは,上流のオブジェクトが |
フィルタクラスは mayavi.core.filter
モジュールで定義されています.
参考
Filter
クラスのAPI参照です.
ModuleManager: カラーと凡例ノード¶
このオブジェクトは,UIのツリービューでは Colors and legends と呼ばれています.このオブジェクトの主な目的は,管理する Modules
でデータをカラー表示する方法を制御することです.通常,すべてのモジュールは,意味のある視覚化を行うためにルックアップテーブル(LUT)を使用します.このルックアップテーブルは,モジュールマネージャによって管理される.
キーアトリビュート |
|
---|---|
|
このオブジェクトの入力である |
|
それが管理する |
|
これは視覚化においてスカラー値から色へのカラーマッピングを基本的に管理する |
|
視覚化におけるベクトル値から色へのカラーマッピングを管理する |
|
|
このクラスは mayavi.core.module_manager
モジュールで定義されています.
参考
ModuleManager
クラスのAPIリファレンスです.
Module¶
これらのオブジェクトは,通常,シーンに視覚化を生成するオブジェクトです. モジュール セクションで定義されている全てのモジュールはこのサブクラスです.
モジュールは通常,mlab 3D plotting functions によって返されます.
キーアトリビュート |
|
---|---|
|
この |
|
モジュールのTVTKアクター,つまりシーンに表示されるオブジェクト.ここにスケーリングやGLマテリアルプロパティなどのプロパティがあります. |
|
モジュールで使用される再利用可能な各種コンポーネントのリスト.これらは通常,ユーザーが直接使用することはありません.ただし,新しいモジュールを作成するときには非常に便利です. |
キーメソッド |
|
---|---|
|
必要に応じて,基礎となるTVTKパイプラインオブジェクトの作成に使用します. |
|
上流のパイプラインが変更された場合,すなわち上流のオブジェクトが |
|
上流パイプラインが変更されてい ない が,パイプラインのデータが変更された場合に呼び出されます.これは,上流のオブジェクトが |
mayavi.core.module
モジュールで定義されている.
参考
Module
クラスのAPIリファレンスです.
Engine¶
Mayaviエンジンは,可視化オブジェクトとシーンのライフサイクル,およびパイプラインの接続と更新を処理する中心的なオブジェクトです.これはパイプラインのルートにあり,パイプラインビューには表示されません.
コンテクスト操作のために,エンジンは 'current object' と 'current scene' の概念を持っていて, Filter/Source/Module
インスタンスをそれに追加することができるいくつかの方法を特徴とします.コンテキスト操作は,メニュー方式のグラフィカル・ユーザー・インターフェースにおいて重要です.
新しいシーンを作成して削除することができます.また,視覚化全体をロードおよび保存するメソッドもあります.
mlabを使用する場合,mlabで使用されるエンジンは mlab.get_engine()
を使用して取得できます.
キーアトリビュート |
|
---|---|
|
|
|
|
|
デフォルトでデータソースが追加されるシーン. |
|
パイプラインビューで選択されているオブジェクト. |
キーメソッド |
|
---|---|
|
新しいシーンを作成するために呼び出されるメソッドです.サブクラスはこのメソッドをオーバーライドします. |
重要なサブクラス |
|
---|---|
|
|
|
|
|
|
Engine ベースクラスは mayavi.engine
モジュールで定義されています.
参考
Engine
クラスのAPI参照です.
Baseクラス: PipelineBase¶
PipelineBase
は,(実際にはpipelineの 中 ではありませんがpipelineを含む) Scene
と Engine
を除く,mayaviパイプライン内のすべてのオブジェクトの基本クラスです. mayavi.core.pipeline_base
モジュールで定義されます.共通の機能を抽象化するだけの Base
から派生します.
キーアトリビュート |
|
---|---|
|
これは object.pipeline_changed = True
|
|
同様に, |
|
オブジェクトによって生成された出力のリスト. |
|
オブジェクトがアタッチされているシーン. |
|
オブジェクトとその下流パイプラインの非表示/表示ステータスを切り替えるブール値. |
キーメソッド |
|
---|---|
|
を使用して,mayaviパイプラインから(追加されている場合)オブジェクトを削除できます. |
参考
PipelineBase
クラスのAPIリファレンスです.
クラス階層¶
次の図は,関連するさまざまなオブジェクトのクラス階層を示しています.
この階層は, ``Base`` オブジェクト, ``Scene`` ,``PipelineBase`` ,および ``ModuleManager`` を表します.
この階層は, ``PipelineBase`` オブジェクト, ``Source`` , ``Filter`` ,および ``Module`` と ``Component`` を表します.