関数 ¶
visualizers(category=hou.viewportVisualizerCategory.Common, node=None)
→ tuple of hou.ViewportVisualizer
指定したカテゴリに対して、Houdiniに登録されているビューポートビジュアライザのタプルを返します。
category
引数は、hou.viewportVisualizerCategory列挙値でなければなりません。
そのcategory
をNodeに設定した場合は、node
引数を指定しなければなりません。
category
をCommonまたはSceneに設定し、node
引数も設定した場合は、TypeError
を引き起こします。
category
をNodeに設定し、node
引数がNoneに設定した場合は、TypeError
を引き起こします。
visualizerBySessionId(session_id)
→ hou.ViewportVisualizer
Given a visualizer’s session id, return a ViewportVisualizer object. Return None if the id does not correspond to a valid visualizer.
Note
This function is for internal use by Houdini and isn’t usually necessary for scripting Houdini or creating tools.
createVisualizer(type, category=hou.viewportVisualizerCategory.Common, node=None)
→ hou.ViewportVisualizer
指定したタイプで新しいビューポートビジュアライザを作成します。
type
引数は、hou.ViewportVisualizerTypeでなければなりません。
hou.viewportVisualizers.typesまたはhou.viewportVisualizers.typeをコールすることで、ビジュアライザタイプを取得することができます。
category
引数は、hou.viewportVisualizerCategory列挙値でなければなりません。
そのcategory
をNodeに設定した場合は、node
引数を指定しなければなりません。
category
をCommonまたはSceneに設定し、node
引数も設定した場合は、TypeError
を引き起こします。
category
をNodeに設定し、node
引数がNoneに設定した場合は、TypeError
を引き起こします。
types()
→ tuple of hou.ViewportVisualizerType
Houdiniで登録されているビジュアライザタイプのタプルを返します。
type(name)
→ hou.ViewportVisualizerType
指定した名前で登録されているビジュアライザタイプを返します。そのようなタイプがなければ、Noneを返します。
isCategoryActive(category, node=None, viewport=None)
→ bool
ビジュアライザカテゴリがアクティブならTrue、そうでないならFalseを返します。
CommonカテゴリとSceneカテゴリに関しては、指定したビューポートでアクティブならTrueを返します。
viewport
引数は、hou.GeometryViewportでなければなりません。
category
をCommonまたはSceneに設定し、node
引数も設定した場合は、TypeError
を引き起こします。
category
をNodeに設定し、node
引数がNoneに設定した場合は、TypeError
を引き起こします。
node
とviewport
の引数が両方とも設定されていれば、TypeError
を引き起こします。
Nodeビジュアライザは、すべてのビューポートでアクティブまたはどのビューポートでもアクティブではないかのどちらかです。
特定のビューポートにのみアクティブにすることができません。
setIsCategoryActive(on, category, node=None, viewport=None)
→ bool
指定したビジュアライザカテゴリのアクティブ状態を設定します。
CommonビジュアライザとSceneビジュアライザに関しては、指定したビューポートに対して設定しなければなりません。
viewport
引数は、hou.GeometryViewportでなければなりません。
category
をCommonまたはSceneに設定し、node
引数も設定した場合は、TypeError
を引き起こします。
category
をNodeに設定し、node
引数がNoneに設定した場合は、TypeError
を引き起こします。
node
とviewport
の引数が両方とも設定されていれば、TypeError
を引き起こします。
Nodeビジュアライザは、すべてのビューポートでアクティブまたはどのビューポートでもアクティブではないかのどちらかです。
特定のビューポートにのみアクティブにすることができません。
addEventCallback(event_types, callback, category=hou.viewportVisualizerCategory.Common, node=None)
Register a Python callback that Houdini will call whenever a particular action, or event, occurs related to a particular visualizer category.
event_types
A sequence of hou.viewportVisualizerEventType enumeration values describing the event types that will cause Houdini to call the callback
function.
callback
A callable Python object, such as a function or bound method. Houdini will call this function whenever one of the event types in event_types
occurs.
Houdini calls the function with an event_type
keyword argument containing the hou.nodeEventType value corresponding to the event that triggered the callback.
Houdini will pass additional keyword arguments depending on the event type. For example, in a callback for the VisualizerParmsChanged
event, Houdini will pass a visualizer
keyword argument containing a hou.ViewportVisualizer reference to the visualizer that changed. See hou.viewportVisualizerEventType for the extra arguments (if any) passed for each event type.
You can add **kwargs
to the argument list to accept all keyword arguments, to allow the same callback to be used for different events, or to be safe from future changes:
def event_callback(event_type, **kwargs): ...
Note
If you try to add the exact same callback function more than once, Houdini will still only call the function only once in response to an event. However, it may be useful to “add” the same function if you want to register it with different event_types
.
Raises hou.OperationFailed if the event_types
list argument is
empty.
The following example shows to set up a function that’s called whenever any parameter on a visualizer in the Common category changes:
def parm_changed(event_type, **kwargs): print("The parms have changed on ", kwargs['visualizer']) hou.viewportVisualizers.addEventCallback((hou.viewportVisualizerEventType.VisualizeParmsChanged.NameChanged, ), parm_changed)
See also hou.viewportVisualizers.removeEventCallback and hou.viewportVisualizers.removeAllEventCallbacks.
removeEventCallback(event_types, callback, category=hou.viewportVisualizerCategory.Common, node=None)
Given a callback that was previously added on this category and a sequence of hou.viewportVisualizerEventType enumerated values, remove those event types from the set of event types for the callback. If the remaining set of event types is empty, the callback will be removed entirely from this node.
Raises hou.OperationFailed if the callback had not been previously added.
See hou.viewportVisualizers.addEventCallback for more information.
removeAllEventCallbacks(category=hou.viewportVisualizerCategory.Common, node=None)
Remove all event callbacks for all event types from this category.
See hou.viewportVisualizers.addEventCallback for more information.
eventCallbacks(category=hou.viewportVisualizerCategory.Common, node=None)
→ tuple
of (tuple
of hou.viewportVisualizersEvent, callback)
Return a tuple of all the Python callbacks that have been registered with this category with calls to hou.viewportVisualizers.addEventCallback.