Пример #1
0
// Constructor for central Rope
ManipulatorRope::ManipulatorRope(const ThreeVector &abushing,
			  	const ThreeVector &aaxis,float abushingRadius, const AV &av)

			:	//av(aav),
         	bushing(abushing), bushingRadius(abushingRadius),
            bushingExit(cross(kVector, aaxis)),
         	anchorExit(oVector), anchorROC(tempROC),
            anchorHoleOffset(tempHoleOffset),
            pulleyAxis(aaxis),neckRingRadius(av.getNeckRingRadius()),
            neckRingROC(av.getNeckRingROC()),
            neckRingCenter(av.getNeckRingPosition()),
            neckRingAxis(av.getNeckDirection())
{
//	bushingRadius = abushingRadius;
	ropeType = centralRope;
//	pulleyAxis = aaxis;
//	bushingExit = cross(kVector, aaxis);
	getLength(ThreeVector(0,0,0));
}
Пример #2
0
// Constructor for side Ropes //
ManipulatorRope::ManipulatorRope(const ThreeVector &abushing,
				const ThreeVector &aanchor,
				const float &aROC, const float &aHoleOff, const ThreeVector &aaxis,
				float apulleyOffset, float apulleyRadius, float abushingRadius, const AV &av)
			://	av(aav),
					bushing(abushing), bushingRadius(abushingRadius),
						bushingExit(cross(kVector, aaxis)),
					anchorExit(aanchor), anchorROC(aROC), anchorHoleOffset(aHoleOff),
						pulleyAxis(aaxis),pulleyOffset(apulleyOffset),
						neckRingRadius(av.getNeckRingRadius()),
            neckRingROC(av.getNeckRingROC()),
            neckRingCenter(av.getNeckRingPosition()),
            neckRingAxis(av.getNeckDirection())
{
	ropeType=(anchorExit[X]+anchorExit[Y] < 0)?leftRope:rightRope;
	pulleyRadius=apulleyRadius;
//	bushingRadius=abushingRadius;
//	anchorROC=aROC;
//	anchorHoleOffset=aHoleOff;
//	pulleyAxis=aaxis;
	getLength(ThreeVector(0,0,0));
}