unreal.PhysicsConstraintComponent
¶
- class unreal.PhysicsConstraintComponent(outer=None, name='None')¶
Bases:
unreal.SceneComponent
This is effectively a joint that allows you to connect 2 rigid bodies together. You can create different types of joints using the various parameters of this component.
C++ Source:
Module: Engine
File: PhysicsConstraintComponent.h
Editor Properties: (see get_editor_property/set_editor_property)
absolute_location
(bool): [Read-Write] Absolute Location: If RelativeLocation should be considered relative to the world, rather than the parentabsolute_rotation
(bool): [Read-Write] Absolute Rotation: If RelativeRotation should be considered relative to the world, rather than the parentabsolute_scale
(bool): [Read-Write] Absolute Scale: If RelativeScale3D should be considered relative to the world, rather than the parentasset_user_data
(Array(AssetUserData)): [Read-Write] Asset User Data: Array of user data stored with the componentauto_activate
(bool): [Read-Write] Auto Activate: Whether the component is activated at creation or must be explicitly activated.can_ever_affect_navigation
(bool): [Read-Write] Can Ever Affect Navigation: Whether this component can potentially influence navigationcomponent_name1
(ConstrainComponentPropName): [Read-Write] Component Name 1: Name of first component property to constrain. If Actor1 is NULL, will look within Owner. If this is NULL, will use RootComponent of Actor1component_name2
(ConstrainComponentPropName): [Read-Write] Component Name 2: Name of second component property to constrain. If Actor2 is NULL, will look within Owner. If this is NULL, will use RootComponent of Actor2component_tags
(Array(Name)): [Read-Write] Component Tags: Array of tags that can be used for grouping and categorizing. Can also be accessed from scripting.constraint_actor1
(Actor): [Read-Write] Constraint Actor 1: Pointer to first Actor to constrain.constraint_actor2
(Actor): [Read-Write] Constraint Actor 2: Pointer to second Actor to constrain.constraint_instance
(ConstraintInstance): [Read-Write] Constraint Instance: All constraint settingsdetail_mode
(DetailMode): [Read-Write] Detail Mode: If detail mode is >= system detail mode, primitive won’t be rendered.editable_when_inherited
(bool): [Read-Write] Editable when Inherited: True if this component can be modified when it was inherited from a parent actor classhidden_in_game
(bool): [Read-Write] Hidden in Game: Whether to hide the primitive in game, if the primitive is Visible.is_editor_only
(bool): [Read-Write] Is Editor Only: If true, the component will be excluded from non-editor buildsmobility
(ComponentMobility): [Read-Write] Mobility: How often this component is allowed to move, used to make various optimizations. Only safe to set in constructor.on_component_activated
(ActorComponentActivatedSignature): [Read-Write] On Component Activated: Called when the component has been activated, with parameter indicating if it was from a reseton_component_deactivated
(ActorComponentDeactivateSignature): [Read-Write] On Component Deactivated: Called when the component has been deactivatedon_constraint_broken
(ConstraintBrokenSignature): [Read-Write] On Constraint Broken: Notification when constraint is broken.on_plastic_deformation
(PlasticDeformationEventSignature): [Read-Write] On Plastic Deformation: Notification when constraint plasticity drive target changes.physics_volume_changed_delegate
(PhysicsVolumeChanged): [Read-Write] Physics Volume Changed Delegate: Delegate that will be called when PhysicsVolume has been changed *primary_component_tick
(ActorComponentTickFunction): [Read-Write] Primary Component Tick: Main tick function for the Componentrelative_location
(Vector): [Read-Write] Relative Location: Location of the component relative to its parentrelative_rotation
(Rotator): [Read-Write] Relative Rotation: Rotation of the component relative to its parentrelative_scale3d
(Vector): [Read-Write] Relative Scale 3D: Non-uniform scaling of the component relative to its parent. Note that scaling is always applied in local space (no shearing etc)replicates
(bool): [Read-Write] Replicates: Is this component currently replicating? Should the network code consider it for replication? Owning Actor must be replicating first!should_update_physics_volume
(bool): [Read-Write] Should Update Physics Volume: Whether or not the cached PhysicsVolume this component overlaps should be updated when the component is moved. see: GetPhysicsVolume()use_attach_parent_bound
(bool): [Read-Write] Use Attach Parent Bound: If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together.visible
(bool): [Read-Write] Visible: Whether to completely draw the primitive; if false, the primitive is not drawn, does not cast a shadow.
- get_constrained_components() -> (out_component1=PrimitiveComponent, out_bone_name1=Name, out_component2=PrimitiveComponent, out_bone_name2=Name)¶
Get connected components and potential related attachement bones
- Returns
out_component1 (PrimitiveComponent):
out_bone_name1 (Name):
out_component2 (PrimitiveComponent):
out_bone_name2 (Name):
- Return type
tuple
- get_constraint() ConstraintInstanceAccessor ¶
Gets the constraint object
- Return type
- get_constraint_force() -> (out_linear_force=Vector, out_angular_force=Vector)¶
Retrieve the constraint force most recently applied to maintain this constraint. Returns 0 forces if the constraint is not initialized or broken.
- Returns
out_linear_force (Vector):
out_angular_force (Vector):
- Return type
tuple
- property on_constraint_broken¶
[Read-Write] On Constraint Broken: Notification when constraint is broken.
- Type
- property on_plastic_deformation¶
[Read-Write] On Plastic Deformation: Notification when constraint plasticity drive target changes.
- set_angular_breakable(angular_breakable, angular_break_threshold) None ¶
Sets the Angular Breakable properties
- set_angular_drive_mode(drive_mode) None ¶
Switches the angular drive mode between SLERP and Twist And Swing
- Parameters
drive_mode (AngularDriveMode) – The angular drive mode to use. SLERP uses shortest spherical path, but will not work if any angular constraints are locked. Twist and Swing decomposes the path into the different angular degrees of freedom but may experience gimbal lock
- set_angular_drive_params(position_strength, velocity_strength, force_limit) None ¶
Sets the drive params for the angular drive.
- set_angular_orientation_drive(enable_swing_drive, enable_twist_drive) None ¶
Enables/Disables angular orientation drive. Only relevant if the AngularDriveMode is set to Twist and Swing deprecated: Use SetOrientationDriveTwistAndSwing instead.
- Parameters
enable_swing_drive (bool) – Indicates whether the drive for the swing axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
enable_twist_drive (bool) – Indicates whether the drive for the twist axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
- set_angular_orientation_target(pos_target) None ¶
Sets the target orientation for the angular drive.
- Parameters
pos_target (Rotator) – Target orientation
- set_angular_plasticity(angular_plasticity, angular_plasticity_threshold) None ¶
Sets the Angular Plasticity properties
- set_angular_swing1_limit(motion_type, swing1_limit_angle) None ¶
Sets the Angular Swing1 Motion Type
- Parameters
motion_type (AngularConstraintMotion) –
swing1_limit_angle (float) – Size of limit in degrees
- set_angular_swing2_limit(motion_type, swing2_limit_angle) None ¶
Sets the Angular Swing2 Motion Type
- Parameters
motion_type (AngularConstraintMotion) –
swing2_limit_angle (float) – Size of limit in degrees
- set_angular_twist_limit(constraint_type, twist_limit_angle) None ¶
Sets the Angular Twist Motion Type
- Parameters
constraint_type (AngularConstraintMotion) – New Constraint Type
twist_limit_angle (float) – Size of limit in degrees
- set_angular_velocity_drive(enable_swing_drive, enable_twist_drive) None ¶
Set Angular Velocity Drive deprecated: Use SetAngularVelocityDriveTwistAndSwing instead.
- set_angular_velocity_drive_slerp(enable_slerp) None ¶
Enables/Disables the angular velocity slerp drive. Only relevant if the AngularDriveMode is set to SLERP
- Parameters
enable_slerp (bool) – Indicates whether the SLERP drive should be enabled. Only relevant if the AngularDriveMode is set to SLERP
- set_angular_velocity_drive_twist_and_swing(enable_twist_drive, enable_swing_drive) None ¶
Enables/Disables angular velocity twist and swing drive. Only relevant if the AngularDriveMode is set to Twist and Swing
- Parameters
enable_twist_drive (bool) – Indicates whether the drive for the twist axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
enable_swing_drive (bool) – Indicates whether the drive for the swing axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
- set_angular_velocity_target(vel_target) None ¶
Sets the target velocity for the angular drive.
- Parameters
vel_target (Vector) – Target velocity
- set_constrained_components(component1, bone_name1, component2, bone_name2) None ¶
Directly specify component to connect. Will update frames based on current position.
- Parameters
component1 (PrimitiveComponent) –
bone_name1 (Name) –
component2 (PrimitiveComponent) –
bone_name2 (Name) –
- set_constraint_reference_frame(frame, ref_frame) None ¶
Pass in reference frame in. If the constraint is currently active, this will set its active local pose. Otherwise the change will take affect in InitConstraint.
- Parameters
frame (ConstraintFrame) –
ref_frame (Transform) –
- set_constraint_reference_orientation(frame, pri_axis, sec_axis) None ¶
Pass in reference orientation in (maintains reference position). If the constraint is currently active, this will set its active local pose. Otherwise the change will take affect in InitConstraint.
- Parameters
frame (ConstraintFrame) –
pri_axis (Vector) –
sec_axis (Vector) –
- set_constraint_reference_position(frame, ref_position) None ¶
Pass in reference position in (maintains reference orientation). If the constraint is currently active, this will set its active local pose. Otherwise the change will take affect in InitConstraint.
- Parameters
frame (ConstraintFrame) –
ref_position (Vector) –
- set_contact_transfer_scale(contact_transfer_scale) None ¶
Sets the contact transfer scale properties
- Parameters
contact_transfer_scale (float) – Set the contact transfer scale for the parent of the joint
- set_disable_collision(disable_collision) None ¶
If true, the collision between the two rigid bodies of the constraint will be disabled.
- Parameters
disable_collision (bool) –
- set_linear_breakable(linear_breakable, linear_break_threshold) None ¶
Sets the Linear Breakable properties
- set_linear_drive_params(position_strength, velocity_strength, force_limit) None ¶
Sets the drive params for the linear drive.
- set_linear_plasticity(linear_plasticity, linear_plasticity_threshold, plasticity_type) None ¶
Sets the Linear Plasticity properties
- Parameters
linear_plasticity (bool) – Whether it is possible to reset the target angle from the Linear displacement
linear_plasticity_threshold (float) – Percent deformation needed to reset the rest length of the joint
plasticity_type (ConstraintPlasticityType) –
- set_linear_position_drive(enable_drive_x, enable_drive_y, enable_drive_z) None ¶
Enables/Disables linear position drive
- set_linear_position_target(pos_target) None ¶
Sets the target position for the linear drive.
- Parameters
pos_target (Vector) – Target position
- set_linear_velocity_drive(enable_drive_x, enable_drive_y, enable_drive_z) None ¶
Enables/Disables linear position drive
- set_linear_velocity_target(vel_target) None ¶
Sets the target velocity for the linear drive.
- Parameters
vel_target (Vector) – Target velocity
- set_linear_x_limit(constraint_type, limit_size) None ¶
Sets the LinearX Motion Type
- Parameters
constraint_type (LinearConstraintMotion) – New Constraint Type
limit_size (float) – Size of limit
- set_linear_y_limit(constraint_type, limit_size) None ¶
Sets the LinearY Motion Type
- Parameters
constraint_type (LinearConstraintMotion) – New Constraint Type
limit_size (float) – Size of limit
- set_linear_z_limit(constraint_type, limit_size) None ¶
Sets the LinearZ Motion Type
- Parameters
constraint_type (LinearConstraintMotion) – New Constraint Type
limit_size (float) – Size of limit
- set_orientation_drive_slerp(enable_slerp) None ¶
Enables/Disables the angular orientation slerp drive. Only relevant if the AngularDriveMode is set to SLERP
- Parameters
enable_slerp (bool) – Indicates whether the SLERP drive should be enabled. Only relevant if the AngularDriveMode is set to SLERP
- set_orientation_drive_twist_and_swing(enable_twist_drive, enable_swing_drive) None ¶
Enables/Disables angular orientation drive. Only relevant if the AngularDriveMode is set to Twist and Swing
- Parameters
enable_twist_drive (bool) – Indicates whether the drive for the twist axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing
enable_swing_drive (bool) – Indicates whether the drive for the swing axis should be enabled. Only relevant if the AngularDriveMode is set to Twist and Swing