add defaults for the several structs

This commit is contained in:
zhguchev
2022-01-11 14:56:26 +01:00
committed by Sébastien Crozet
parent 1608a1323e
commit 536122e080
12 changed files with 46 additions and 10 deletions

View File

@@ -6,7 +6,11 @@ use crate::math::{Isometry, Point, Real};
pub struct FixedJoint {
data: JointData,
}
impl Default for FixedJoint{
fn default() -> Self {
FixedJoint::new()
}
}
impl FixedJoint {
pub fn new() -> Self {
#[cfg(feature = "dim2")]

View File

@@ -18,7 +18,7 @@ use na::{
};
#[repr(C)]
#[derive(Copy, Clone, Debug)]
#[derive(Copy, Clone, Debug,Default)]
struct Force {
linear: Vector<Real>,
angular: AngVector<Real>,
@@ -91,7 +91,11 @@ pub struct Multibody {
coriolis_w: Vec<OMatrix<Real, AngDim, Dynamic>>,
i_coriolis_dt: Jacobian<Real>,
}
impl Default for Multibody{
fn default() -> Self {
Multibody::new()
}
}
impl Multibody {
/// Creates a new multibody with no link.
pub fn new() -> Self {

View File

@@ -75,6 +75,7 @@ impl Default for MultibodyJointLink {
}
}
#[derive(Default)]
/// A set of rigid bodies that can be handled by a physics pipeline.
#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))]
#[derive(Clone)]

View File

@@ -7,7 +7,11 @@ use crate::math::{Point, Real};
pub struct SphericalJoint {
data: JointData,
}
impl Default for SphericalJoint{
fn default() -> Self {
SphericalJoint::new()
}
}
impl SphericalJoint {
pub fn new() -> Self {
let data =

View File

@@ -12,7 +12,7 @@ use crate::utils::{WAngularInertia, WCross, WDot};
use num::Zero;
/// The unique handle of a rigid body added to a `RigidBodySet`.
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)]
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Default)]
#[cfg_attr(feature = "serde-serialize", derive(Serialize, Deserialize))]
#[repr(transparent)]
pub struct RigidBodyHandle(pub crate::data::arena::Index);

View File

@@ -3,7 +3,7 @@ use na::{DVectorSlice, DVectorSliceMut};
use na::{Scalar, SimdRealField};
use std::ops::{AddAssign, Sub};
#[derive(Copy, Clone, Debug)]
#[derive(Copy, Clone, Debug, Default)]
#[repr(C)]
//#[repr(align(64))]
pub struct DeltaVel<N: Scalar + Copy> {

View File

@@ -29,6 +29,12 @@ pub struct JointGenericVelocityConstraint {
pub writeback_id: WritebackId,
}
impl Default for JointGenericVelocityConstraint {
fn default() -> Self {
JointGenericVelocityConstraint::invalid()
}
}
impl JointGenericVelocityConstraint {
pub fn invalid() -> Self {
Self {
@@ -313,6 +319,11 @@ pub struct JointGenericVelocityGroundConstraint {
pub writeback_id: WritebackId,
}
impl Default for JointGenericVelocityGroundConstraint{
fn default() -> Self {
JointGenericVelocityGroundConstraint::invalid()
}
}
impl JointGenericVelocityGroundConstraint {
pub fn invalid() -> Self {