Package pyffi :: Package formats :: Package nif :: Class NifFormat :: Class _bhkRigidBody
[hide private]
[frames] | no frames]

Class _bhkRigidBody

source code

                  object --+                                        
                           |                                        
      utils.graph.DetailNode --+                                    
                               |                                    
          utils.graph.GlobalNode --+                                
                                   |                                
object_models.xml.struct_.StructBase --+                            
                                       |                            
                     NifFormat._NiObject --+                        
                                           |                        
                          NifFormat.NiObject --+                    
                                               |                    
                         NifFormat._bhkRefObject --+                
                                                   |                
                              NifFormat.bhkRefObject --+            
                                                       |            
                               NifFormat.bhkSerializable --+        
                                                           |        
                                    NifFormat.bhkWorldObject --+    
                                                               |    
                                             NifFormat.bhkEntity --+
                                                                   |
                                                                  NifFormat._bhkRigidBody
Known Subclasses:

This is the default body type for all "normal" usable and static world objects. The "T" suffixmarks this body as active for translation and rotation, a normal bhkRigidBody ignores thoseproperties. Because the properties are equal, a bhkRigidBody may be renamedinto a bhkRigidBodyT and vice-versa.
Nested Classes [hide private]

Inherited from object_models.xml.struct_.StructBase: __metaclass__

Instance Methods [hide private]

Inherited from bhkRefObject: get_shape_mass_center_inertia

Inherited from NiObject: apply_scale, find, find_chain, is_interchangeable, tree

Inherited from NiObject (private): _validateTree

Inherited from object_models.xml.struct_.StructBase: __init__, __str__, deepcopy, fix_links, get_attribute, get_basic_attribute, get_detail_child_names, get_detail_child_nodes, get_global_child_nodes, get_global_display, get_hash, get_links, get_refs, get_size, get_strings, get_template_attribute, read, replace_global_node, set_attribute, set_basic_attribute, set_template_attribute, write

Inherited from utils.graph.GlobalNode: get_global_child_edge_types, get_global_iterator

Inherited from utils.graph.DetailNode: get_detail_child_edge_types, get_detail_display, get_detail_iterator

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __subclasshook__

Class Methods [hide private]

Inherited from object_models.xml.struct_.StructBase: get_games, get_versions

Class Variables [hide private]
  _attribute_list = [<pyffi.object_models.xml.StructAttribute ob...
  _attrs = [<pyffi.object_models.xml.StructAttribute object at 0...
  _names = ['shape', 'layer', 'col_filter', 'unknown_short', 'un...

Inherited from bhkWorldObject (private): _has_links, _has_refs

Inherited from bhkSerializable (private): _games, _is_template

Inherited from object_models.xml.struct_.StructBase: arg

Properties [hide private]
  angular_damping
Damping value for angular movement.
  angular_velocity
Angular velocity.
  center
This seems to be used to relocate the object's center of mass.
  col_filter_copy
Copy of Col Filter value?
  constraints
Unknown.
  friction
The body's friction.
  inertia
Defines how the mass is distributed among the body.
  layer_copy
Copy of Layer value?
  linear_damping
Damping value for linear movement.
  linear_velocity
Linear velocity.
  mass
The body's mass in kg.
  max_angular_velocity
Maximal angular velocity.
  max_linear_velocity
Maximal linear velocity.
  motion_system
Motion system? Overrides Quality when on Keyframed?
  num_constraints
The number of constraints this object is bound to.
  penetration_depth
The maximum allowed penetration for this object.This is a hint to the engine to see how much CPU the engine should invest to keep this object from penetrating.A good choice is 5% - 20% of the smallest diameter of the object.
  quality_type
The motion type.
  restitution
The body's restitution (elasticity).If the restitution is not 0.0 the object will need extra CPU for all new collisions.Try to set restitution to 0 for maximum performance (e.g.
  rotation
The rotation Yaw/Pitch/Roll to apply to the body.
  translation
A vector that moves the body by the specified amount.
  unknown_4_shorts
Unknown.
  unknown_5_floats
Unknown.
  unknown_7_shorts
Unknown.
  unknown_byte_1
Deactivator Type? Usually set to 1 for fixed objects, or set to 2 for moving ones.
  unknown_byte_2
Solver deactivation? Usually set to 1 for fixed objects, or set to 2 for moving ones.
  unknown_int_6
Unknown.
  unknown_int_7
Unknown.
  unknown_int_8
Unknown.
  unknown_int_9
0 = do not respond to wind, 1 = respond to wind (?)

Inherited from bhkWorldObject: col_filter, layer, shape, unknown_short

Inherited from object: __class__

Class Variable Details [hide private]

_attribute_list

Value:
[<pyffi.object_models.xml.StructAttribute object at 0x2ced2d0>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced310>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced350>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced410>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced650>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced810>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced890>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced950>,
...

_attrs

Value:
[<pyffi.object_models.xml.StructAttribute object at 0x2ced650>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced810>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced890>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ced950>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ceda50>,
 <pyffi.object_models.xml.StructAttribute object at 0x2ceda90>,
 <pyffi.object_models.xml.StructAttribute object at 0x2cedb50>,
 <pyffi.object_models.xml.StructAttribute object at 0x2cedb90>,
...

_names

Value:
['shape',
 'layer',
 'col_filter',
 'unknown_short',
 'unknown_5_floats',
 'unknown_4_shorts',
 'layer_copy',
 'col_filter_copy',
...

Property Details [hide private]

angular_damping

Damping value for angular movement.
Get Method:
<functools.partial object at 0x2cf3208>
Set Method:
<functools.partial object at 0x2cf3260>

angular_velocity

Angular velocity.
Get Method:
<functools.partial object at 0x2cefcb0>
Set Method:
<functools.partial object at 0x2cefd08>

center

This seems to be used to relocate the object's center of mass. Useful for balancing objects in contraints.
Get Method:
<functools.partial object at 0x2cefec0>
Set Method:
<functools.partial object at 0x2ceff18>

col_filter_copy

Copy of Col Filter value?
Get Method:
<functools.partial object at 0x2cef7e0>
Set Method:
<functools.partial object at 0x2cef838>

constraints

Unknown.
Get Method:
<functools.partial object at 0x2cf50a8>

friction

The body's friction.
Get Method:
<functools.partial object at 0x2cf3310>
Set Method:
<functools.partial object at 0x2cf3368>

inertia

Defines how the mass is distributed among the body.
Get Method:
<functools.partial object at 0x2cefdb8>
Set Method:
<functools.partial object at 0x2cefe10>

layer_copy

Copy of Layer value?
Get Method:
<functools.partial object at 0x2cef6d8>
Set Method:
<functools.partial object at 0x2cef730>

linear_damping

Damping value for linear movement. A value that is too small fixes the object in place.
Get Method:
<functools.partial object at 0x2cf3100>
Set Method:
<functools.partial object at 0x2cf3158>

linear_velocity

Linear velocity.
Get Method:
<functools.partial object at 0x2cefba8>
Set Method:
<functools.partial object at 0x2cefc00>

mass

The body's mass in kg. A mass of zero represents an immovable object.
Get Method:
<functools.partial object at 0x2ceffc8>
Set Method:
<functools.partial object at 0x2cf3050>

max_angular_velocity

Maximal angular velocity. Pi x 10?
Get Method:
<functools.partial object at 0x2cf3628>
Set Method:
<functools.partial object at 0x2cf3680>

max_linear_velocity

Maximal linear velocity.
Get Method:
<functools.partial object at 0x2cf3520>
Set Method:
<functools.partial object at 0x2cf3578>

motion_system

Motion system? Overrides Quality when on Keyframed?
Get Method:
<functools.partial object at 0x2cf3838>
Set Method:
<functools.partial object at 0x2cf3890>

num_constraints

The number of constraints this object is bound to.
Get Method:
<functools.partial object at 0x2cf3f70>
Set Method:
<functools.partial object at 0x2cf3fc8>

penetration_depth

The maximum allowed penetration for this object.This is a hint to the engine to see how much CPU the engine should invest to keep this object from penetrating.A good choice is 5% - 20% of the smallest diameter of the object.
Get Method:
<functools.partial object at 0x2cf3730>
Set Method:
<functools.partial object at 0x2cf3788>

quality_type

The motion type. Determines quality of motion?
Get Method:
<functools.partial object at 0x2cf3b50>
Set Method:
<functools.partial object at 0x2cf3ba8>

restitution

The body's restitution (elasticity).If the restitution is not 0.0 the object will need extra CPU for all new collisions.Try to set restitution to 0 for maximum performance (e.g. collapsing buildings)
Get Method:
<functools.partial object at 0x2cf3418>
Set Method:
<functools.partial object at 0x2cf3470>

rotation

The rotation Yaw/Pitch/Roll to apply to the body. Only enabled in bhkRigidBodyT objects.
Get Method:
<functools.partial object at 0x2cefaa0>
Set Method:
<functools.partial object at 0x2cefaf8>

translation

A vector that moves the body by the specified amount. Only enabled in bhkRigidBodyT objects.
Get Method:
<functools.partial object at 0x2cef998>
Set Method:
<functools.partial object at 0x2cef9f0>

unknown_4_shorts

Unknown.
Get Method:
<functools.partial object at 0x2cef628>

unknown_5_floats

Unknown.
Get Method:
<functools.partial object at 0x2cef578>

unknown_7_shorts

Unknown.
Get Method:
<functools.partial object at 0x2cef8e8>

unknown_byte_1

Deactivator Type? Usually set to 1 for fixed objects, or set to 2 for moving ones. Seems to always be same as Unknown Byte 2.
Get Method:
<functools.partial object at 0x2cf3940>
Set Method:
<functools.partial object at 0x2cf3998>

unknown_byte_2

Solver deactivation? Usually set to 1 for fixed objects, or set to 2 for moving ones. Seems to always be same as Unknown Byte 1.
Get Method:
<functools.partial object at 0x2cf3a48>
Set Method:
<functools.partial object at 0x2cf3aa0>

unknown_int_6

Unknown.
Get Method:
<functools.partial object at 0x2cf3c58>
Set Method:
<functools.partial object at 0x2cf3cb0>

unknown_int_7

Unknown.
Get Method:
<functools.partial object at 0x2cf3d60>
Set Method:
<functools.partial object at 0x2cf3db8>

unknown_int_8

Unknown.
Get Method:
<functools.partial object at 0x2cf3e68>
Set Method:
<functools.partial object at 0x2cf3ec0>

unknown_int_9

0 = do not respond to wind, 1 = respond to wind (?)
Get Method:
<functools.partial object at 0x2cf5158>
Set Method:
<functools.partial object at 0x2cf51b0>