| On this page | |
| Inheritance |
|
概要 ¶
hou.Drawable2DAPIには、2Dコンテキスト内でコンポジティングビューアとシーンビューアのどちらでもシェイプエンティティを描画することができる統一されたソリューションが備わっています。
単純なラインから複雑な自由フリーフォーム形状に至る様々なジオメトリプリミティブのレンダリングを、
ワイヤーフレームまたは塗りつぶし領域のいずれかの形式でサポートしています。
完全なピッキングおよび位置指定の機能がどちらのビューアタイプにも統合されています。
Note
hou.Drawable2Dシェイプエンティティは、FrontおよびPerspectiveビューでは、XY平面(z=0)に拘束されます。
主にCOP Pythonステート/ハンドル用に設計されていますが、SOPやLOPなどの他のコンテキストでも利用可能です。
現在の制限により、hou.Drawable2Dとhou.GeometryDrawableの同時使用はできません。
メソッド ¶
__init__ (scene_viewer, type, name, label=None, pickable=False, params=None)
指定したタイプの新しいDrawableオブジェクトを作成します。 新しく作成されたDrawableオブジェクトは、初期状態では非表示になっています。
Warning
hou.Drawable2Dオブジェクトは、onEnterPythonステート/ハンドルのイベント内で作成しなければなりません。
このコンテキスト外で作成すると、予期しない挙動が発生したり、Drawableが正しく機能しなくなる可能性があります。
scene_viewer
Drawableが表示されるビューアの参照(hou.SceneViewerまたはhou.CompositorViewerのいずれか)。
type
作成するDrawableのタイプ(例えば、Arc、Line、Shape)を示したhou.drawable2DType値。
name
このDrawableオブジェクトを一意に識別するのに使用される文字列。
label
Drawableの表示ラベルを設定するオプションの文字列。 デフォルトは空っぽの文字列です。
pickable
Drawableが選択および位置指定可能かどうかを示したブール値。
インタラクションを無効にしたいのであれば、Falseに設定します。
デフォルトはTrueです。
params
Drawableの外観や挙動を設定するためのパラメータを含んだオプションの辞書。 各Drawableタイプで利用可能なパラメータの詳細リストは、hou.Drawable2D.setParamsを参照してください。
setParams(params)
辞書を使用して、Drawableエンティティのパラメータを設定します。
params辞書には、すべてのDrawableタイプに共通のアトリビュート(例えば、位置、色)やDrawableの
タイプに固有のアトリビュート(例えば、Arcの場合はradius、LineやShapeの場合はpoints)を含めることができます。
各Drawableタイプで利用可能な共通パラメータ:
共通パラメータ |
説明 |
型 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Drawableのメインカラー(RGB値またはRGBA値)。 |
3,4個のintまたはdoubleのシーケンス(hou.Color)。
デフォルトは |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Drawableのロケートカラーまたはハイライト(RGB値またはRGBA値)。
3,4個のintまたはdoubleのシーケンス。
デフォルトは 各Drawableタイプ固有のパラメータ: Arc
end_angle
end_cap
end_cap_color
fill
inner_radius
position
radius
start_angle
start_cap
start_cap_color
thickness
fill
inner_radius
position
radius
thickness
end_cap
end_cap_color
points
start_cap
start_cap_color
style
thickness
position
size
thickness
style
radius
fill
position
size
thickness
close
points
thickness
position
size
text
|
params() -> dict[str, Any]
hou.Drawable2Dオブジェクトに現在格納されているパラメータ辞書を返します。 辞書の内容の詳細は、hou.Drawable2D.setParamsを参照してください。
draw(handle, params=None)
ビューポート内にDrawableを描画します。
このメソッドは通常ではPythonステートのonDrawまたはonDrawInterruptイベントでコールされ、現在のビューポートにDrawableをレンダリングします。
handle
DrawableをレンダリングするためにHoudiniで生成される内部的な識別子。
このhandleの値は、PythonステートのonDrawコールバックで用意され、Drawableオブジェクトのこのdraw
メソッドに直接渡してください。
params
このdrawコールに特化したDrawableの現行設定を上書きするためのオプションのパラメータ辞書。
これらのパラメータは、hou.Drawable2D.setParamsで使用されているパラメータと同じです。
mapToModel(x, y, z=0)
→ hou.Vector3
スクリーンスペース上のマウス位置(x, y, z)をDrawableのローカルモデル空間内の呼応する位置にマッピングします。 これは、2Dおよび3Dのビューポート内における2D Drawableの位置決めや操作に特に役立ちます。
Note
zパラメータは、2D平面に拘束された操作ではたいていの場合0です。
Drawableのモデル空間におけるマッピングされた位置を示したhou.Vector3を返します。
x
スクリーンスペースでのマウスのX座標。
y
スクリーンスペースでのマウスのY座標。
z
スクリーンスペースでのマウスのZ座標(2D Drawableの場合、通常は0です)。
setPickable(value)
このDrawableがユーザ操作で選択および位置指定可能かどうかを設定します。
value
ブール値。
このDrawableで選択および位置指定を有効にするには、Trueに設定します。
インタラクションを無効にするには、Falseに設定します。
isPickable()
→ bool
このDrawableが現在、選択および位置指定可能になっている場合はTrueを返し、そうでない場合はFalseを返します。
Methods from hou.Drawable ¶
name()
このDrawableの名前。
label()
このDrawableのラベル。
setLabel(label)
このDrawableのラベルを設定します。
show(value)
このDrawableに取り付けられたエレメントをビューポート内に表示または非表示にします。 このエレメントは、次回のビューアの再描画で表示されます。
value
エレメントを表示するにはTrue、非表示にするにはFalseを設定します。
visible()
→ bool
Drawableが可視ならTrueを返します。
setTransform(xform)
このDrawableに取り付けられたエレメントのトランスフォーム行列を設定します。 この変更は、次回のビューアの再描画で反映されます。
xform
エレメントの移動、回転、スケールを設定するhou.Matrix4トランスフォーム行列。
transform()
: → hou.Matrix4
Drawableに取り付けられたエレメントのトランスフォーム行列を返します。
setIsControl(value)
Drawableをコントロールジオメトリに指定します。
Simple Drawableは、特定のシェーディングモードの影響を受けず、デコレーションやビジュアライザも描画されません。
また、Node Guidesディスプレイオプションが無効の場合は非表示になります。
Note
このメソッドは、hou.Drawable2Dオブジェクトには適用されません。
isControl()
: → bool
Drawableがコントロールジオメトリに指定されているかどうかを照会します。