ToolEntity#
ToolEntity 是由 gs.materials.Tool 材质创建的、按运动学脚本驱动的碰撞体。它自身不带动力学,因此可直接驱动其运动;它与软体介质和基于粒子的介质进行单向耦合,用于推动、搅拌或使其变形。
- class genesis.engine.entities.tool_entity.tool_entity.ToolEntity(scene, idx, solver, material, morph, surface, name: str | None = None)[source]#
Bases:
Entity- save_ckpt_kernel(pos: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), quat: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), vel: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), ang: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- load_ckpt_kernel(pos: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), quat: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), vel: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), ang: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- update_latest_pos(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>)[source]#
- copy_frame(source: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, target: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>)[source]#
- copy_grad(source: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, target: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>)[source]#
- reset_grad_till_frame(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>)[source]#
- get_frame(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, pos: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), quat: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), vel: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), ang: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_frame(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, pos: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), quat: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), vel: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), ang: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_frame_add_grad_pos(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, pos_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_frame_add_grad_quat(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, quat_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_frame_add_grad_vel(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, vel_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_frame_add_grad_ang(f: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, ang_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_init_state(pos: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None), quat: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_vel(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, vel: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_vel_grad(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, vel_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_ang(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, ang: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_ang_grad(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, ang_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_pos(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, pos: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_pos_grad(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, pos_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_quat(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, quat: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- set_quat_grad(s: <quadrants._lib.core.quadrants_python.DataTypeCxx object at 0x7b713aa45090>, quat_grad: NdarrayType(dtype=None, ndim=None, layout=0, needs_grad=None))[source]#
- process_input_grad()[source]#
Return the pairs (input, gradient) of the inputs applied at this step that track gradients.
- property uid#
- property idx#
- property scene#
- property solver#
- property material#
- property morph#
- property surface#
- property init_pos#
- property init_quat#