コード例 #1
0
ファイル: RigidBody2D.cpp プロジェクト: 3dicc/Urho3D
void RigidBody2D::RemoveConstraint2D(Constraint2D* constraint)
{
    if (!constraint)
        return;

    WeakPtr<Constraint2D> constraintPtr(constraint);
    constraints_.Remove(constraintPtr);
}
コード例 #2
0
ファイル: RigidBody2D.cpp プロジェクト: 3dicc/Urho3D
void RigidBody2D::AddConstraint2D(Constraint2D* constraint)
{
    if (!constraint)
        return;

    WeakPtr<Constraint2D> constraintPtr(constraint);
    if (constraints_.Contains(constraintPtr))
        return;
    constraints_.Push(constraintPtr);
}
コード例 #3
0
ファイル: ConstraintGear2D.cpp プロジェクト: rokups/Urho3D
void ConstraintGear2D::SetOtherConstraint(Constraint2D* constraint)
{
    ea::weak_ptr<Constraint2D> constraintPtr(constraint);
    if (constraintPtr == otherConstraint_)
        return;

    if (otherConstraint_)
        otherConstraint_->SetAttachedConstraint(nullptr);

    otherConstraint_ = constraintPtr;

    if (otherConstraint_)
        otherConstraint_->SetAttachedConstraint(this);

    RecreateJoint();
    MarkNetworkUpdate();
}