RagdollSkel

from acron.ragdoll import RagdollSkel
class RagdollSkel

Bases:

Bases: TypedReferenceCount

The shared, immutable definition of a ragdoll: its verts and their radii, the triangles whose orientations drive the bones, and the distance and rotation limits that hold the body together. One instance is parsed once (from Tesseract’s ragdoll .cfg) and shared by every corpse.

Built up by the caller with the add_* methods – the .cfg text parsing and the bind-pose joint setup stay outside this library, which owns only the simulation.

Inheritance diagram

digraph inheritancef2363a5c81 { bgcolor=transparent; rankdir=BT; size="8.0, 12.0"; "DTOOL_SUPER_BASE" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style=""]; "RagdollSkel" [URL="acron.ragdoll.RagdollSkel.html#acron.ragdoll.RagdollSkel",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedReferenceCount" -> "RagdollSkel" [arrowsize=0.75,style=""]; "ReferenceCount" [URL="acron.core.ReferenceCount.html#acron.core.ReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "ReferenceCount" [arrowsize=0.75,style=""]; "TypedObject" [URL="acron.core.TypedObject.html#acron.core.TypedObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "TypedObject" [arrowsize=0.75,style=""]; "TypedReferenceCount" [URL="acron.core.TypedReferenceCount.html#acron.core.TypedReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedObject" -> "TypedReferenceCount" [arrowsize=0.75,style=""]; "ReferenceCount" -> "TypedReferenceCount" [arrowsize=0.75,style=""]; }
__init__()
add_distlimit()

Appends a distance limit holding two verts within [mindist, maxdist].

add_rotfriction()

Appends a tri pair whose relative angular motion is damped each substep.

add_rotlimit()

A rotation limit between two tris. middle is supplied as its three COLUMN vectors (a, b, c) to match the cube2 convention described above.

Appends a rotation limit between two tris.

add_tri()

Appends a triangle over three vert indices. Tri orientations are what the bones are driven from, and what the rotation limits constrain.

add_vert()

Appends a vert at the given model-space position, with the given collision radius (both in the .cfg’s own units; RagdollData applies the scale).

static get_class_type()
get_num_distlimits()
get_num_rotfrictions()
get_num_rotlimits()
get_num_tris()
get_num_verts()
get_vert_radius()

The collision radius of vert i, in .cfg units.

property num_tris → int
property num_verts → int