Inheritence |
|
メソッド
現行選択
currentGeometrySelection()
→ hou.GeometrySelection
ビューアがジオメトリ選択モードの場合は現在のジオメトリ選択を返し、 それ以外の場合はNoneを返します。
setCurrentGeometrySelection(geometry_type, nodes, selections)
ビューアがジオメトリ選択モードの場合は現在のジオメトリ選択を置換し、
それ以外の場合はhou.NotAvailableを引き起こします。
指定した選択がgeometry_type
に合致していない場合は、可能な限りそのgeometry_type
に自動的に変換されます。
currentSceneGraphSelection()
→ tuple of string
setCurrentSceneGraphSelection(selection)
選択のプロンプト
selectObjects(prompt='Select objects', sel_index=0, allow_drag=False, quick_select=False, use_existing_selection=True, allow_multisel=True, allowed_types=('*',), icon=None, label=None, prior_selection_paths=[], prior_selection_ids=[], prior_selections=[])
→ tuple of Nodes
selectGeometry(prompt='Select geometry', sel_index=0, allow_drag=False, quick_select=False, use_existing_selection=True, initial_selection = None, initial_selection_type = None, ordered=False, geometry_types=(), primitive_types=(), allow_obj_sel=True, icon=None, label=None, prior_selection_paths=[], prior_selection_ids=[], prior_selections=[], allow_other_sops=True, consume_selections=True)
→ GeometrySelection
selectPositions(prompt='Click to specify a position', number_of_positions=1, min_number_of_positions=-1, connect_positions=True, show_coordinates=True, bbox=BoundingBox(), position_type=positionType.WorldSpace, icon=None, label=None)
→ tuple of Vector3s
selectOrientedPositions(prompt='Click to specify a position', number_of_positions=1, min_number_of_positions=-1, connect_positions=True, show_coordinates=True, bbox=BoundingBox(),icon=None, label=None)
→ tuple of (Vector3, Matrix3) tuples
このメソッドは、hou.SceneViewer.selectPositions()に非常に似ていますが、位置のタイプが常にワールド空間で、位置のタプルではなく、
(position, orientation)
のペアのタプルを返します。このposition
はhou.Vector3で、orientation
はhou.Matrix3です。
これによって、基準平面や整列などの向きの補助が必要な時に、ユーザに向きと位置を促すことができます。
selectDynamics(prompt='Select dynamics objects', sel_index=0, allow_objects=True, allow_modifiers=False, quick_select=False, use_existing_selection=True, allow_multisel=True, icon=None, label=None, prior_selection_paths=[], prior_selection_ids=[], prior_selections=[])
→ tuple of hou.DopData
selectDynamicsPoints(prompt='Select dynamics points', sel_index=0, quick_select=False, use_existing_selection=True, allow_multisel=True, only_select_points=True, object_based_point_selection=False, use_last_selected_object=False, icon=None, label=None, prior_selection_paths=[], prior_selection_ids=[], prior_selections=[])
→ tuple of (hou.DopData, hou.GeometrySelection)
selectDynamicsPolygons(prompt='Select dynamics polygons', sel_index=0, quick_select=False, use_existing_selection=True, object_based_point_selection=False, use_last_selected_object=False, icon=None, label=None, prior_selection_paths=[], prior_selection_ids=[], prior_selections=[])
→ tuple of (hou.DopData, hou.GeometrySelection)
selectSceneGraph(prompt, preselection, prim_mask, quick_select, use_existing_selection, confirm_existing, allow_multisel, allow_drag, propagate_selection, path_prefix_mask, prim_kind)
→ tuple of string
selectSceneGraphInstances(prompt, preselection, quick_select, use_existing_selection, confirm_existing, allow_multisel, allow_drag, path_prefix_mask, instance_level, instance_indices_only)
→ tuple of string
stageSerial()
→ int
Scene Graph Viewデータが変更される度に増加する整数。 大きな変更が起きた場合にのみ数値が上がり、無駄に1が増えるわけではありません。
locateSceneGraphPrim(x, y)
→ (float, string)
指定したピクセル座標に位置するプリミティブを検索します。 当たった位置におけるスクリーン深度とプリミティブパスのタプルを返します。 何もプリミティブが見つからなかった場合は(-1, "")を返します。
Viewerステート
currentState()
→ string
ビューアの現行ツール状態の名前を返します。
setCurrentState(state, wait_for_exit=False, generate=hou.stateGenerateMode.Insert, request_new_on_generate=True)
ビューアの現行ツール状態を設定します。 wait_for_exitがTrueなら、この関数は、ビューアがツールを抜けるまで戻りません。
generate
新しいノードの生成方法、インラインまたは新しい分岐への挿入方法を指定したhou.stateGenerateMode列挙値。
request_new_on_generate
いくつかの状態は、可能な限り現行ノードを再使用します。この引数をTrueに設定すると、そのような状態が新しいノードを生成するように要求します。
enterCurrentNodeState(wait_for_exit=False)
ビューアを、最後に選択したノードのノード固有のツール状態にします。 wait_for_exitがTrueなら、この関数はビューアがツールを抜けるまで戻りません。
enterViewState(wait_for_exit=False)
ビューアをビューツール状態にします。 wait_for_exitがTrueなら、この関数はビューアがツールを抜けるまで戻りません。
enterTranslateToolState(wait_for_exit=False)
ビューアを移動ツール状態にします。 これは、移動ツールをサポートしているノードコンテキストでのみ利用可能です。 wait_for_exitがTrueなら、この関数はビューアがツールを抜けるまで戻りません。
enterRotateToolState(wait_for_exit=False)
ビューアを回転ツール状態にします。 これは、移動ツールをサポートしているノードコンテキストでのみ利用可能です。 wait_for_exitがTrueなら、この関数はビューアがツールを抜けるまで戻りません。
enterScaleToolState(wait_for_exit=False)
ビューアをスケールツール状態にします。 これは、移動ツールをサポートしているノードコンテキストでのみ利用可能です。 wait_for_exitがTrueなら、この関数はビューアがツールを抜けるまで戻りません。
beginStateUndo(label)
現行のViewer StateでUndo可能な処理を実行するためにUndoブロックを開きます。 これを開いた後に実行されたすべての処理がUndoスタック上に1個の処理として記録されます。 開いたブロックを閉じるには、hou.SceneViewer.endStateUndo()を使用します。
beginStateUndo
とendStateUndo
を使用することで、ある関数で開始して他の関数で終了するUndoブロックを管理することができます。
一連のUndo可能な処理では、1個のUndoブロックしか対応していません。
UndoブロックをendStateUndo
で閉じる前に2番目のbeginStateUndo
コールが検出されると、例外が引き起こされます。
有効なUndoブロックのPythonステートの例:
def onMouseEvent(self, kwargs): ui_event = kwargs["ui_event"] node = kwargs["node"] if ui_event.reason() == hou.uiEventReason.Start: # 左マウスボタンが押された場合 self.scale = node.parent().parm("scale").evalAsFloat() self.scene_viewer.beginStateUndo('scale') if ui_event.reason() == hou.uiEventReason.Active: # 左マウスボタンを押したままマウスを動かしている場合 self.scale *= 1.01 node.parent().parm("scale").set(self.scale) if ui_event.reason() == hou.uiEventReason.Changed: # 左マウスボタンが離された場合 self.scene_viewer.endStateUndo()
例外を引き起こす無効なUndoブロックの例:
def onMouseEvent(self, kwargs): ui_event = kwargs["ui_event"] node = kwargs["node"] if ui_event.reason() == hou.uiEventReason.Start: # 左マウスボタンが押された場合 self.tx = node.parent().parm("tx").evalAsFloat() self.scale = node.parent().parm("scale").evalAsFloat() self.scene_viewer.beginStateUndo('scale') if ui_event.reason() == hou.uiEventReason.Active: # 左マウスボタンを押したままマウスを動かしている場合 self.scale *= 1.01 node.parent().parm("scale").set(self.scale) self.scene_viewer.beginStateUndo('move x') self.tx += 0.2 node.parent().parm("tx").set(self.tx) self.scene_viewer.endStateUndo() if ui_event.reason() == hou.uiEventReason.Changed: # 左マウスボタンが離された場合 self.scene_viewer.endStateUndo()
label
EditメニューのUndo操作の表示に使用するUndoブロックのラベル。このラベルが空っぽの場合は例外が引き起こされます。
endStateUndo()
hou.SceneViewer.beginStateUndo()で以前に開いたUndoブロックを閉じます。
endStateUndo
は、beginStateUndo
の前にコールされると例外を引き起こします。
showHandle(name, value)
現行のツールステートにリンクされた表示ハンドルを表示または非表示にします。
このAPIは、通常ではPythonステートで使用し、少し注意が必要ですが、どのPythonステートコールバックからでもコールすることができます。
PythonステートコンストラクタからshowHandle
をコールしないようにしてください。コールしてしまうと、ランタイムエラーが発生してしまいます。
hou.Handle.show()も参照してください。
name
hou.ViewerStateTemplate.bindHandle()で指定したハンドルの名前。
value
Bool
値。ハンドルを表示するならTrue
、非表示にするならFalse
を設定します。
openVisualizerEditor(visualizer)
指定したViewportVisualizerが存在している場合、そのビジュアライザのインタラクティブビジュアライザエディタダイアログを開きます。
triggerStateSelector(action, name=None)
現行ステートのセレクターに対してアクションをトリガーします。 このステートはPythonステートタイプでなければなりません。 そうでない場合は例外が発生します。
action
hou.triggerSelectorActionで指定したとおりにトリガーさせるアクションのタイプ。
name
トリガーさせるセレクターの名前。 この名前は、セレクターの登録に使用した名前に合わせてください。 詳細は、hou.ViewerStateTemplate.bindGeometrySelector()またはhou.ViewerStateTemplate.bindObjectSelector()を参照してください。
最初に登録されたステートのセレクターをトリガーさせたいのであれば、ここを空っぽ(デフォルト)のままにします。
指定したname
が不明なセレクターであれば例外が発生します。
currentStateSelector()
→ string
現行ステートのセレクターの名前を返します。 セレクターがアクティブでない場合は、空っぽの文字列が返されます。 このステートはPythonステートタイプでなければなりません。 そうでない場合は例外が発生します。
runStateCommand(name, args=None)
アクティブなPythonステートによって実装されたコマンドを実行します。 名前識別子と入力引数を一緒に指定することで、ステートコマンドを呼び出すことができます。
そのステートがPythonステートタイプでない、または、そのステートが実行中でない場合には例外が引き起こされます。
name
コマンド名識別子。
args
コマンド固有の引数を保持したpython
オブジェクト。デフォルトはNoneです。
ステートコマンドを実装したサンプル。
import hou import viewerstate.utils as su class State(object): def __init__(self, state_name, scene_viewer): self.state_name = state_name self.scene_viewer = scene_viewer self.text_size = 5 self.text_color = 'yellow' # ビューポート内にテキスト文字列を描画するためのDrawable self.text_drawable = hou.TextDrawable(self.scene_viewer, 'text_drawable_name', params = {'margins': (10.0,-10.0), 'origin' : hou.drawableTextOrigin.UpperLeft, 'multi_line' : True} ) self.text_drawable.show(True) def onCommand( self, kwargs ): # ビューポートテキストを更新するコマンド name = kwargs['command'] args = kwargs['command_args'] state_parms = kwargs['state_parms'] if name == 'update_text': # 設定を更新 state_parms['text']['value'] = args['text']; self.text_color = args['color'] self.text_size = args['size'] # ビューポートを再描画 self.scene_viewer.curViewport().draw() def onDraw( self, kwargs ): # ビューポートの左上にテキストを描画 handle = kwargs['draw_handle'] state_parms = kwargs['state_parms'] (x,y,width,height) = self.scene_viewer.curViewport().size() text = '<font color="%s", size=%d>%s</font>' % (self.text_color, self.text_size, state_parms['text']['value']) self.text_drawable.draw( handle, params = {'text': text, 'translate': (0.0, height, 0.0)} ) def registerState(): state_typename = kwargs['type'].definition().sections()['DefaultState'].contents() state_label = "State command demo" state_cat = hou.objNodeTypeCategory() template = hou.ViewerStateTemplate(state_typename, state_label, state_cat) template.bindFactory(State) template.bindParameter( hou.parmTemplateType.String, name="text", label="Text", default_value="Lorem ipsum dolor sit amet." ) hou.ui.registerViewerState(template) def unregisterState(): state_typename = kwargs['type'].definition().sections()['DefaultState'].contents() try: hou.ui.unregisterViewerState(state_typename) except hou.StateNotRegistered: pass except: raise
以下のコードは、コマンドの呼び出し方の例です。
import toolutils args = { 'text': text, 'color': color, 'size': size } toolutils.sceneViewer().runStateCommand( 'update_text', args = args )
モデリング
constructionPlane()
→ hou.ConstructionPlane
このビューアのペースペクティブビューポート内の基準平面(またはグリッド)を返します。
詳細は、hou.ConstructionPlaneを参照してください。
referencePlane()
→ hou.ReferencePlane
このビューアのPerspectiveビューポート内の基準平面(またはグリッド)を返します。
詳細は、hou.ReferencePlaneを参照してください。
showCurrentSopGeometry(value)
現行SOPノードのジオメトリディスプレイフラグを有効/無効に設定します。 このフラグが有効な場合、ビューポートは、そのノードに取り付けられているジオメトリを表示します。 無効な場合、ジオメトリを非表示にします。 SOPステートに入ると、デフォルトではこのフラグは有効になっています。
下流ノードに対してディスプレイフラグをTrueに設定し、そして上流ノードを選択するという状況を考えてみましょう。
ノードのステートに入ると、通常ではビューポートは上流ノードのジオメトリをワイヤーフレームで表示し、ディスプレイノードをシェーディングします。
一部の場合では、ステートに入れば、下流ノードで結果が非常に上手く可視化される選択ノードのパラメータを設定したいです。
この場合だと、showCurrentSopGeometry
を使用することで、上流ノードのジオメトリの表示をオフにすることができます。
Note
SOP Pythonステートに関しては、Houdiniは、そのステートに入った時に現行ノードのジオメトリディスプレイフラグを思い出し、ステートから出た時に元の値に設定を戻します。
isShowingCurrentSopGeometry(value)
→ bool
現行ノードのジオメトリディスプレイフラグを返します。hou.SceneViewer.showCurrentSopGeometry()を参照してください。
ビュー分割
curViewport()
→ hou.GeometryViewport
このビューアの現行ビューポートを返します。現行ビューポートは、マウスカーソルを含んだビューポートです。 このカーソルがビューポートになかった場合は、選択またはアクティブなビューポートが返されます。
setCurViewport(viewport)
linkOrthoViewports()
setLinkOrthoViewports(on)
viewportLayout()
→ hou.geometryViewportLayout
現在のビューポートレイアウトをhou.geometryViewportLayout値として返します。
setViewportLayout(layout, single=-1)
ビューアのビューポートレイアウトを設定します。
layout
hou.geometryViewportLayout値。例えば、ビューアに四画面ビューポートを表示させるには:
viewer_pane.setViewportLayout(hou.geometryViewportLayout.Quad)
single
/hom/hou/hou.geometryViewportLayout#Singleレイアウトを指定した場合、この引数には、四画面ビューポートから単一ビューポートとして表示させるビューポートを指定することができます。
|
現在のビューポートを使用します(マウス下のビューポート)。 |
|
四画面レイアウトから左上ビューポートを使用します(通常はTopビュー)。 |
|
四画面レイアウトから右上ビューポートを使用します(通常はPerspectiveビュー)。 |
|
四画面レイアウトから左下ビューポートを使用します(通常はFrontビュー)。 |
|
四画面レイアウトから右下ビューポートを使用します(通常はRightビュー)。 |
appliesToAllSplitViews()
setApplyToAllSplitViews(on)
setPromptMessage(msg, msg_type=promptMessageType.Prompt)
スクリーンの下部にメッセージを表示するビューポートを設定します。
msg
表示するテキストメッセージ。
msg_type
表示するメッセージのタイプを表現したhou.promptMessageType値。 デフォルトはhou.promptMessageType.Promptです。
clearPromptMessage()
hou.SceneViewer.setPromptMessage()を使って以前に設定したプロンプトメッセージをクリアします。
スナップ
snappingMode()
setSnappingMode(snapping_mode)
isSnappingToTemplates()
setSnapToTemplates(on)
isSnappingToOtherObjects()
setSnapToOtherObjects(on)
isSnappingToGuides()
→ bool
現行スナップモードに対してガイドへのスナップが有効かどうかを返します。
setSnapToGuides(on)
現行スナップモードに対してガイドへのスナップを有効にするかどうかを設定します。
isDepthSnapping()
setDepthSnapping(on)
isOrientingOnSnap()
setOrientOnSnap(on)
snappingGravity()
: → float
現在のスナッピングモードの重力値を返します。
snappingPriorities()
: → tuple of hou.snappingPriority values
現行スナップモードのhou.snappingPriority値のタプルを返します。 これらの値は、Snap Optionsウィンドウで設定された優先度の順番(降順)で並んでいます。 そのモードに優先度がなければ、空っぽのタプルを返します。
ビューオプション
isPickingVisibleGeometry()
領域ベースの選択を実行した時、ビューアが可視コンポーネントだけをピックするように設定されていればTrueを返します。 このオプションは、コンポーネント選択ボタンのコンテキストメニュー内のマッチングチェックボックスに相当します。
setPickingVisibleGeometry(on)
ボックスやブラシのピックのような領域ベースの選択を実行した時に可視コンポーネントだけを選択するオプションをオン/オフします。
isPickingContainedGeometry()
領域ベースの選択を実行した時、ビューアが、そこに完全に含まれているコンポーネントだけをピックするように設定されていればTrueを返します。 このオプションは、コンポーネント選択ボタンのコンテキストメニュー内のマッチングチェックボックスに相当します。
setPickingContainedGeometry(on)
ボックスやブラシのピックのような領域ベースの選択を実行した時に完全に含まれているコンポーネントだけを選択するオプションをオン/オフします。
setSelectionMode(selection_mode)
このビューの選択モードを設定します。 'selection_mode'の値は、hou.selectionModeからの値でなければなりません。
isGroupPicking()
グループ、アトリビュート、接続性情報を使用して、このビューア内で行なった選択を自動的に広げるならTrueを返します。 このオプションは、コンポーネント選択ボタンのコンテキストメニュー内のマッチングチェックボックスに相当します。
setGroupPicking(on)
ピックベースのグループ、アトリビュート、接続性をオン/オフします。オンの時、グループリストガジェットが自動的に可視になります。
isWholeGeometryPicking()
このビューア内で行なった選択が全体のジオメトリを含むように自動展開するなら、Trueを返します。 このオプションは、コンポーネント選択ボタンのコンテキストメニュー内のマッチングチェックボックスに相当します。
setWholeGeometryPicking(on)
このビューア内で行なった選択を全体のジオメトリを含むように展開するオプションをオン/オフします。
isSecureSelection()
このビューア内で安全選択が有効であればTrueを返します。 このオプションは、選択ツールのコンテキストメニュー内のSecure Selectionオプションに相当します。
setSecureSelection(on)
このビューア内でSecure Selectionオプションをオン/オフします。
isPickingCurrentNode()
このビューア内で行なった選択をCurrent SOPからピックする場合はTrueを返します。 Falseなら、ピックはDisplay SOPに対して行ないます。 このオプションは、コンポーネント選択ボタンのコンテキストメニュー内のcurrent/displayオプションに相当します。
setPickingCurrentNode(on)
このビューアにピックをCurrent SOPに対して行なうのかDisplay SOPに対して行なうのか伝えます。
pickGeometryType()
このビューア内でピックされるジオメトリのタイプを返します。 このオプションは、コンポーネント選択ボタンのコンテキストメニュー内で選択可能なコンポーネントタイプに相当します。
setPickGeometryType(geometry_type)
このビューア内でピックされるジオメトリのタイプを設定します。 この値はユーザによって、またはセレクターが読み出された時にいつでも変更することができます。
pickStyle()
このビューアで現在使用されている領域ピックのスタイルを返します。 このオプションは、選択ツールのコンテキストメニューで指定したピックスタイルに相当します。
setPickStyle(style)
このビューアで使用する領域ピックのスタイルを設定します。
pickModifier()
既存選択と組み合わせられる追加選択の方法を返します。 このオプションは、選択ツールのコンテキストメニュー内のピックモディファイヤに相当します。
setPickModifier(modifier)
新しく選択をした時の既存選択の修正に使用するメソッドを設定します。
さらに修飾キーを使用することで、この挙動を変更することができます。
デフォルトの操作(修飾キーなし)のみがこの設定の影響を受けます。
選択状態は、終了時にデフォルトのピック修飾子に戻るので、この状態を維持させるには、setDefaultPickModifier()
を使って、このデフォルトの挙動を変更する必要があります。
defaultPickModifier()
選択状態が終了した後にHoudiniが戻すデフォルトのピック修飾子を返します。
setDefaultPickModifier(modifier)
選択状態が終了した後にHoudiniが戻すデフォルトのピック修飾子を設定します。
pickFacing()
ユーザが正面または背面、それとも両方のコンポーネントをピックできるのかを示した値を返します。 このオプションは、コンポーネント選択ボタンのコンテキストメニューのFront and Back Facingオプションに相当します。
setPickFacing(facing)
選択を正面、背面、それとも両方のコンポーネントに制限するかどうかのオプションを設定します。
isShowingObjectsAtSopLevel()
setShowObjectsAtSopLevel(on)
isCreateInContext() -> bool
isWorldSpaceLocal() -> bool
本来ならワールド空間の値が実際には現行オブジェクトのローカル空間である場合にTrueを返します。 これは、selectPositions(), hou.GeometryViewport::mapToScreen(), hou.GeometryViewport::mapToWorld(), hou.GeometryViewport().viewPivot()などの戻り値が該当します。
displayedNodeBehavior()
setDisplayedNodeBehaviour(behavior)
isViewingSceneGraph()
→ bool
シーンビューアがLOPsでUSDステージをビューイングしていればTrue
を返します。
stage()
→ Usd.Stage
シーンビューアがLOPsをビューイングしていれば、表示されているUSDステージを返します。
setShowGeometry(show)
LOPsをビューイングした時にシーンジオメトリを表示または非表示にします。
showGeometry()
→ bool
LOPsをビューイングした時にシーンジオメトリが表示されるかどうかを照会します。
setShowCameras(show)
LOPsをビューイングした時にカメラガイドを表示または非表示にします。
showCameras()
→ bool
LOPsをビューイングした時にカメラガイドが表示されるかどうかを照会します。
setShowLights(show)
LOPsをビューイングした時にライトガイドを表示または非表示にします。
showLights()
→ bool
LOPsをビューイングした時にライトガイドが表示されるかどうかを照会します。
setShowSelection(show)
LOPsをビューイングした時に選択ハイライトを表示します。
showSelection()
→ bool
LOPsをビューイングした時に選択ハイライトが表示されるかどうかを照会します。
showRenderStats()
→ bool
LOPsをビューイングした時にレンダラー統計情報が表示されるかどうかを照会します。すべてのレンダラーでこの情報を表示できるわけではありません。
showRenderStats(show)
LOPsをビューイングした時にレンダラー統計情報を表示または非表示にします。
showRenderTime()
→ bool
LOPsをビューイングした時にレンダリング時間と進捗率が表示されるかどうかを照会します。すべてのレンダラーでこの情報を表示できるわけではありません。
showRenderStats(show)
LOPsをビューイングした時にレンダリング時間と進捗率が表示されるかどうかを照会します。
selectionKind()
→ str
ユーザが選択ステートに入った時に選択される現行プリミティブの種類を照会します。これは、リーフプリミティブが選択されるとNull文字列を返します。
isSelectingPointInstances()
→ bool
現行選択ステートがポイントインスタンスを選択していればTrue
を返し、プリミティブを選択していればFalse
を返します。
isSelectingTopmostInstance()
→ bool
インスタンス選択モードが最上位インスタンスレベルを選択していればTrue
、リーフインスタンスレベルを選択していればFalse
を返します。
hydraRenderers()
→ tuple of str
LOPsで利用可能なレンダラーのリストを照会します。
setHydraRenderer(ren_name)
LOPsの現行レンダラーを設定します。
currentHydraRenderer()
→ str
LOPsの現行レンダラーを照会します。
グループリスト
isGroupListVisible()
グループリストガジェットがこのビューアで有効ならTrueを返します。 この関数は、ビューア内でグループを選択しなかった時にグループリストを表示するオプションを参照するだけです。 その場合、そのグループリストは可視でも、この関数はFalseを返します。
setGroupListVisible(on)
このビューアに対してグループリストガジェットをオン/オフします。
isGroupListColoringGeometry()
グループリストガジェットが、グループメンバーまたはアトリビュート値に基づいてビューア内のジオメトリを色付けるように設定されていればTrueを返します。
setGroupListColoringGeometry(on)
グループリストガジェットが、グループメンバーまたはアトリビュート値に基づいてビューア内のジオメトリを色付けるように設定します。
isGroupListShowingEmptyGroups()
グループリストガジェットのリスト内に空っぽのグループが含まれていればTrueを返します。
setGroupListShowingEmptyGroups(on)
グループリストガジェット内に空っぽのグループを表示します。
isGroupListShowingOnlyPreSelectedGroups()
グループリストが1つ以上の選択または事前選択されたコンポーネントを含んだグループのみを表示していればTrueを返します。
setGroupListShowingOnlyPreSelectedGroups(on)
1つ以上の選択または事前選択されたコンポーネントを含んだグループのみを表示するように、グループリストのトリムを有効にします。
isGroupListCondensingPathHierarchies()
グループリストが、パスを意味する文字列アトリビュートで定義されたグループの階層を縮約していればTrueを返します。
setGroupListCondensingPathHierarchies(on)
グループリスト内の階層の縮約を有効にします。 これは、パスを意味する文字列アトリビュートによってグループ化されたコンポーネントに適用されます。 このオプションを有効にすることで、多くの情報をそのリストにまとめることができますが、階層内のレベルを区別しにくくなります。
groupListSize()
グループリストガジェットの幅と高さをインチで返します。
setGroupListSize(width, height)
グループリストガジェットのサイズをインチで設定します。
groupListType()
グループリストガジェットに挙げられたコンポーネントのタイプを返します。
setGroupListType(group_list_type)
グループリストガジェットに挙げるコンポーネントのタイプを設定します。 これは、特定のコンポーネントタイプに設定したり、現行コンポーネント選択タイプに合わせることができます。
groupListMask()
グループリストガジェットがこのビューアに対して有効であればTrueを返します。
setGroupListMask(mask)
このビューアに対してグループリストガジェットのマスク値を設定します。 これは、コンポーネントグループ、アトリビュート名(@文字で始まる)、接続性タイプに適用されたフィルターを指定することができます。
メモリとスナップショット
memories()
→ dict of ints to GeometryViewportSettings
createMemoryFromViewport(viewport, number)
→ GeometryViewportSettings
loadFromMemoryToViewport(viewport, number)
deleteAllMemories()
createSnapshotFromViewport(viewport, number)
showSnapshot(number)
hideSnapshot(number)
showsSnapshotsAtSourceFrame()
setShowSnapshotsAtSourceFrame(on)
snapshotAlphaBlend()
setSnapshotAlphaBlend(alpha)
snapshotObjectMask()
setSnapshotObjectMask(mask)
showsHandlesInSnapshots()
setShowHandlesInSnapshots(on)
クィックレンダーとフリップブック
render()
renderOutput()
setRenderOutputToBuiltIn(renderer)
setRenderOutputToRop(rop_node)
setFlipbookOptions(options)
flipbookSettings()
→ hou.FlipbookSettings
Flipbookダイアログ設定にアクセスします。これは、その設定を照会、設定、コピーすることができます。
flipbook(viewport=None, settings=None, open_dialog=False)
フリップブックをキャプチャーします。フリップブックは、フレーム毎に連続してビューポートのスクリーンショットを撮ることで、迅速にプレビューアニメーションを作成します。
viewport
を指定すればそのビューポート、viewport
を指定しなかった場合は現行ビューポートに対してFlipbookを起動します。
オプションで、現行設定を上書きするsettings
にhou.FlipbookSettingsオブジェクトを渡すことができます。
この上書きは、現行Flipbookにのみ影響し、ダイアログ設定を変更しません。
open_dialog
がTrueの場合はFlipbookダイアログがユーザに表示され、そうでない場合はFlipbookが即座に起動します。
カラー補正
これらの関数は、ビューアのOpenColorIO設定を設定または照会します(OpenColorIO対応を参照)。
usingOCIO()
→ bool
ビューアのカラー補正にOpenColorIOが使用されているかどうかを照会します。
setUsingOCIO(enable)
ビューアのカラー補正でOpenColorIOを有効または無効にします。
setOCIODisplayView(display="", view="")
OpenColorIOの表示名、ビュー名、または両方を設定します。 表示とビューはどちらもビューアの出力カラー空間を定義し、任意の数のカラー変換(Looks)が線形ビューポート画像に対して実行されます。
getOCIODisplay()
→ str
カラー補正で使用されている現在のOpenColorIO表示を返します。
getOCIOView()
→ str
カラー補正で使用されている現在のOpenColorIOビューを返します。
ツールバー
showOperationBar(self,show)
ビューポートの上部にオペレーションツールバーを表示/非表示します。
isShowingOperationBar()
→ bool
ビューポートの上部にオペレーションツールバーが表示されていればTrueを返します。
showColorCorrectionBar(self,show)
ビューポートの下部にカラー補正ツールバーを表示/非表示します。
isShowingColorCorrectionBar()
→ bool
ビューポートの下部にカラー補正ツールバーが表示されていればTrueを返します。
showMemoryBar(self,show)
ビューポートの下部にメモリツールバーを表示/非表示します。
isShowingMemoryBar()
→ bool
ビューポートの下部にメモリツールバーが表示されていればTrueを返します。
showDisplayOptionsBar(self,show)
ビューポートの右側にディスプレイオプションツールバーを表示/非表示します。
isShowingDisplayOptionsBar()
→ bool
ビューポートの右側にディスプレイオプションツールバーが表示されていればTrueを返します。
showSelectionBar(self,show)
ビューポートの左側に選択ツールバーを表示/非表示します。
isShowingSelectionBar()
→ bool
ビューポートの左側に選択ツールバーが表示されていればTrueを返します。
setIncludeColorCorrectionBar(self,on)
ビューポートの下部にオプションのカラー補正ツールバーを含めます。
includeColorCorrectionBar()
→ bool
ビューポートの下部にオプションのカラー補正ツールバーが含まれていればTrueを返します。
setIncludeMemoryBar(self,on)
ビューポートの下部にオプションのメモリツールバーを含めます。
includeMemoryBar()
→ bool
ビューポートの下部にオプションのメモリツールバーが含まれていればTrueを返します。
相互作用
runShelfTool(tool_name)
現行ビューポートで名前付きシェルフツールを実行します。
displayRadialMenu(name)
現行ビューポートで名前付きRadialメニューを起動します。
メタデータ
isOpen()
→ bool
viewerType()
→ hou.stateViewerType
列挙値
ビューアのタイプを返します。
ビューアがObjects, SOPs, DOPsを見ていればScene
、LOPsを見ていればSceneGraph
を返します。
Methods from hou.PaneTab
name()
→ str
このタブの名前を返します。
setName(name)
このペインタブの名前を設定します。ペインタブの名前にはスペースを含めることができます。
この名前は、そのタブの内部名で、インターフェースで表示される名前とは異なることに注意してください。
type()
→ hou.paneTabType列挙値
このタブのタイプ(つまり、scene viewer, parameter editor, network editorなど)を返します。
setType(type)
→ hou.PaneTab
指定したタイプの新しいペインタブを作成し、このタブをその新しいタブに置換し、その新しいペインタブを返します。 このタブの参照が無効になるので、それ以降は、返されたペインタブを使用してください。
close()
ペインタブを閉じます。
pane()
→ hou.Pane or None
このペインタブを含んだデスクトップ内のペインを返します。 通常のフローティングパネルには1個以上のペインを含むので、通常のフローティングパネル内のペインタブは、常にペイン内にあります。
とはいえ、いくつかのフローティングパネルでは、特定のペインタブタイプだけを含むように、それ以外の内容が取り除かれており、 複数のペインタブを追加したり、ペインを分割するといったユーザインターフェースを表示しません。 このメソッドは、そのような余計なものが取り除かれたパネルに対してはNoneを返します。
floatingPanel()
→ hou.FloatingPanel or None
このペインタブが含まれたフローティングパネルを返します。このペインタブがフローティングパネル内になければNoneを返します。
isCurrentTab()
→ bool
このタブが、それが含まれているペイン内で選択されたタブかどうか返します。
setIsCurrentTab()
このタブを、それが含まれているペイン内で選択されたタブとして設定します。
isFloating()
→ bool
このペインタブがフローティングパネル内にあるかどうか返します。
このメソッドはほぼ以下のように実装されています:
def isFloating(self): return self.pane() is None or self.pane().floatingPanel() is not None
clone()
→ hou.PaneTab
ペインタブから複製されたフローティングパネルを作成し、そのクローンペインタブを返します。 その新しいペインタブは、新しいフローティングパネル内にあります。
linkGroup()
→ hou.paneLinkType列挙値
このペインタブが属するリンクグループを返します。
hou.PaneTab.isPin()も参照してください。
setLinkGroup(group)
このペインタブのリンクグループメンバーシップを設定します。
isPin()
→ bool
このペインタブがピン留めされているかどうか返します。このメソッドは、(self.linkGroup() == hou.paneLinkType.Pinned)
と等価です。
hou.PaneTab.linkGroup()も参照してください。
setPin(pin)
pinがTrue
なら、リンクグループメンバーシップをhou.paneLinkType.Pinnedに設定します。
それ以外の場合、それをhou.paneLinkType.FollowSelectionに設定します。
このメソッドは、以下のようにhou.PaneTab.setLinkGroup()を使用して実装することができます:
def setPin(self, pin): if pin: self.setLinkGroup(hou.paneLinkType.Pinned) else: self.setLinkGroup(hou.paneLinkType.FollowSelection)
hou.PaneTab.setLinkGroup()も参照してください。
size()
→ tuple
of int
ペインタブの幅と高さを含んだ2タプルを返します。
この幅と高さは、その中身の領域、(もしあれば)ネットワークナビゲーションコントロールの領域、境界を含みます。
この幅と高さは、ペインタブのタブ領域を含みません。
contentSize()
→ tuple
of int
ペインタブの中身の領域の幅と高さを含んだ2タプルを返します。
この幅と高さは、(もしあれば)ネットワークナビゲーションコントロールの領域、ペインタブの境界、ペインタブの領域を含みません。
hasNetworkControls()
→ bool
このペインタブタイプがネットワークコントロールに対応していればTrueを返します。
isShowingNetworkControls()
→ bool
このペインタブがネットワークコントロールバーを表示しているかどうかを返します。 ペインタブがネットワークコントロールを持っていない場合はFalseを返します。 hou.PaneTab.hasNetworkControls()も参照してください。
setShowNetworkControls(pin)
ネットワークコントロールバーを表示/非表示します。 ペインタブがネットワークコントロールを持っていない場合は何の効果もありません。 hou.PaneTab.hasNetworkControls()も参照してください。
Methods from hou.PathBasedPaneTab
addBookmark(path)
bookmarks()
cd(path)
currentNode()
→ Node
followsParent()
pwd()
→ Node
removeBookmarks(path_pattern)
setCurrentNode(node, pick_node = True)
setFollowParent(on)
setPwd(node)
showNetworkControls(on)
showsNetworkControls()
Replaces |