[−][src]Struct nphysics2d::joint::MouseConstraint
A spring-like constraint to be used to drag a body part with the mouse.
Methods
impl<N: RealField, Handle: BodyHandle> MouseConstraint<N, Handle>
[src]
pub fn new(
b1: BodyPartHandle<Handle>,
b2: BodyPartHandle<Handle>,
anchor1: Point<N>,
anchor2: Point<N>,
limit: N
) -> Self
[src]
b1: BodyPartHandle<Handle>,
b2: BodyPartHandle<Handle>,
anchor1: Point<N>,
anchor2: Point<N>,
limit: N
) -> Self
Initialize a mouse constraint between two bodies.getPartHandle
Typically, b1
will be the ground and the anchor the position of the mouse.
Both anchors are expressed in the local coordinate frames of the corresponding body parts.
pub fn set_anchor_1(&mut self, anchor1: Point<N>)
[src]
Change the first anchor, expressed in the local space of the first body part.
pub fn set_anchor_2(&mut self, anchor2: Point<N>)
[src]
Change the first anchor, expressed in the local space of the second body part.
Trait Implementations
impl<N: RealField, Handle: BodyHandle> JointConstraint<N, Handle> for MouseConstraint<N, Handle>
[src]
fn num_velocity_constraints(&self) -> usize
[src]
fn anchors(&self) -> (BodyPartHandle<Handle>, BodyPartHandle<Handle>)
[src]
fn velocity_constraints(
&mut self,
parameters: &IntegrationParameters<N>,
bodies: &dyn BodySet<N, Handle = Handle>,
ext_vels: &DVector<N>,
ground_j_id: &mut usize,
j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut LinearConstraints<N, usize>
)
[src]
&mut self,
parameters: &IntegrationParameters<N>,
bodies: &dyn BodySet<N, Handle = Handle>,
ext_vels: &DVector<N>,
ground_j_id: &mut usize,
j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut LinearConstraints<N, usize>
)
fn cache_impulses(&mut self, _: &LinearConstraints<N, usize>, _: N)
[src]
fn is_active(&self, bodies: &dyn BodySet<N, Handle = Handle>) -> bool
[src]
fn is_broken(&self) -> bool
[src]
impl<N: RealField, Handle: BodyHandle> NonlinearConstraintGenerator<N, Handle> for MouseConstraint<N, Handle>
[src]
fn num_position_constraints(&self, _: &dyn BodySet<N, Handle = Handle>) -> usize
[src]
fn position_constraint(
&self,
_: &IntegrationParameters<N>,
_: usize,
_: &mut dyn BodySet<N, Handle = Handle>,
_: &mut [N]
) -> Option<GenericNonlinearConstraint<N, Handle>>
[src]
&self,
_: &IntegrationParameters<N>,
_: usize,
_: &mut dyn BodySet<N, Handle = Handle>,
_: &mut [N]
) -> Option<GenericNonlinearConstraint<N, Handle>>
Auto Trait Implementations
impl<N, Handle> RefUnwindSafe for MouseConstraint<N, Handle> where
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
impl<N, Handle> Send for MouseConstraint<N, Handle> where
N: Scalar,
N: Scalar,
impl<N, Handle> Sync for MouseConstraint<N, Handle> where
N: Scalar,
N: Scalar,
impl<N, Handle> Unpin for MouseConstraint<N, Handle> where
Handle: Unpin,
N: Scalar + Unpin,
Handle: Unpin,
N: Scalar + Unpin,
impl<N, Handle> UnwindSafe for MouseConstraint<N, Handle> where
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
T: Any,
fn into_any(self: Box<T>) -> Box<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
impl<T> DowncastSync for T where
T: Send + Sync + Any,
T: Send + Sync + Any,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn is_in_subset(&self) -> bool
unsafe fn to_subset_unchecked(&self) -> SS
fn from_subset(element: &SS) -> SP
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,