528 lines (492 with data), 19.0 kB
AnyFolder SolidModelingOperations =
{
CreateBox Back_Rest(
InputName = Back_Rest,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputLengthX = Main.Parameters.DesignParameters.Back_Rest_Height,
InputLengthY = Main.Parameters.DesignParameters.Back_Rest_Thick,
InputLengthZ = Main.Parameters.DesignParameters.Back_Rest_Width,
InputDensity = Main.Parameters.DesignParameters.Back_Rest_Density) =
{
Pos0 = {Main.Parameters.DesignParameters.Back_Rest_Height/2
*cos(pi/180*(Main.Parameters.DesignParameters.Back_Rest_Tilt_Angle)),
Main.Parameters.DesignParameters.Back_Rest_Height/2
*sin(pi/180*(Main.Parameters.DesignParameters.Back_Rest_Tilt_Angle)),
0};
RotAnglesInDegree0 = {0, 0, Main.Parameters.DesignParameters.Back_Rest_Tilt_Angle};
Color = Main.DrawSettings.Colors.AnyBodyGreen;
Opacity = 0.3;
OpacityForLocalFrame = 0;
OpacityForLocalRefNodes = 0;
};
CreateBox Hip_Rest(
InputName = Hip_Rest,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputLengthX = Main.Parameters.DesignParameters.Hip_Rest_Height,
InputLengthY = Main.Parameters.DesignParameters.Hip_Rest_Thick,
InputLengthZ = Main.Parameters.DesignParameters.Hip_Rest_Width,
InputDensity = Main.Parameters.DesignParameters.Hip_Rest_Density) =
{
Pos0 = {Main.Parameters.DesignParameters.Hip_Rest_Height/2
*cos(pi/180*(Main.Parameters.DesignParameters.Hip_Rest_Tilt_Angle)),
Main.Parameters.DesignParameters.Hip_Rest_Height/2
*sin(pi/180*(Main.Parameters.DesignParameters.Hip_Rest_Tilt_Angle)),
0};
RotAnglesInDegree0 = {0, 0, Main.Parameters.DesignParameters.Hip_Rest_Tilt_Angle};
Color = Main.DrawSettings.Colors.AnyBodyGrey;
Opacity = 0.3;
OpacityForLocalFrame = 0;
OpacityForLocalRefNodes = 0;
};
CreateBox Foot_Rest(
InputName = Foot_Rest,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputLengthX = Main.Parameters.DesignParameters.Foot_Rest_Height,
InputLengthY = Main.Parameters.DesignParameters.Foot_Rest_Thick,
InputLengthZ = Main.Parameters.DesignParameters.Foot_Rest_Width,
InputDensity = Main.Parameters.DesignParameters.Foot_Rest_Density) =
{
Pos0 = {Main.Parameters.DesignParameters.Foot_Rest_Height/2
*cos(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle)),
Main.Parameters.DesignParameters.Foot_Rest_Height/2
*sin(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle)),
0} +
Main.Parameters.DesignParameters.Foot_Rest_Initial_Distance *
{cos(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle-90)),
sin(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle-90)),
0};
RotAnglesInDegree0 = {0, 0, Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle};
Color = Main.DrawSettings.Colors.AnyBodyRed;
Opacity = 0.2;
OpacityForLocalFrame = 0;
OpacityForLocalRefNodes = 0;
};
CreateCylinder Barbell_Right(
InputName = Barbell_Right,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputRadius = Main.Parameters.DesignParameters.Barbell_Radius,
InputLength = Main.Parameters.DesignParameters.Barbell_Thick,
InputDensity = Main.Parameters.DesignParameters.Barbell_Density) =
{
Pos0 = {Main.Parameters.DesignParameters.Foot_Rest_Height/2
*cos(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle)),
Main.Parameters.DesignParameters.Foot_Rest_Height/2
*sin(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle)),
0} +
Main.Parameters.DesignParameters.Foot_Rest_Initial_Distance *
{cos(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle-90)),
sin(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle-90)),
0} +
{0, 0, Main.Parameters.DesignParameters.Foot_Rest_Width/2 } +
{0, 0, Main.Parameters.DesignParameters.Barbell_Thick };
RotAnglesInDegree0 = { 0, 0, 0};
Color = Main.DrawSettings.Colors.AnyBodyBlue;
Opacity = 0.1;
OpacityForLocalFrame = 0;
OpacityForLocalRefNodes = 0;
ScaleFactorForLocalRefNodes = 0.1;
};
CreateCylinder Barbell_Left(
InputName = Barbell_Left,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputRadius = Main.Parameters.DesignParameters.Barbell_Radius,
InputLength = Main.Parameters.DesignParameters.Barbell_Thick,
InputDensity = Main.Parameters.DesignParameters.Barbell_Density) =
{
Pos0 = {Main.Parameters.DesignParameters.Foot_Rest_Height/2
*cos(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle)),
Main.Parameters.DesignParameters.Foot_Rest_Height/2
*sin(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle)),
0} +
Main.Parameters.DesignParameters.Foot_Rest_Initial_Distance *
{cos(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle-90)),
sin(pi/180*(Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle-90)),
0} +
{0, 0, -Main.Parameters.DesignParameters.Foot_Rest_Width/2 } +
{0, 0, -Main.Parameters.DesignParameters.Barbell_Thick };
RotAnglesInDegree0 = { 0, 0, 0};
Color = Main.DrawSettings.Colors.AnyBodyBlue;
Opacity = 1;
OpacityForLocalFrame = 0;
OpacityForLocalRefNodes = 0;
ScaleFactorForLocalRefNodes = 0.1;
};
CreateCylinder Handle_Right(
InputName = Handle_Right,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputRadius = Main.Parameters.DesignParameters.Handle_Radius,
InputLength = Main.Parameters.DesignParameters.Handle_Length,
InputDensity = Main.Parameters.DesignParameters.Handle_Density) =
{
Pos0 = {0, 0, Main.Parameters.DesignParameters.Back_Rest_Width/2} +
{0, 0, Main.Parameters.DesignParameters.Handle_Dis_Offset};
RotAnglesInDegree0 = { -90, Main.Parameters.DesignParameters.Back_Rest_Tilt_Angle-90, 0};
Color = Main.DrawSettings.Colors.AnyBodyYellow;
Opacity = 0.2;
OpacityForLocalFrame = 1;
OpacityForLocalRefNodes = 0;
ScaleFactorForLocalRefNodes = 0.0;
};
CreateCylinder Handle_Left(
InputName = Handle_Left,
InputPlacement = Main.Model.EnvironmentModel.Segs,
InputRadius = Main.Parameters.DesignParameters.Handle_Radius,
InputLength = Main.Parameters.DesignParameters.Handle_Length,
InputDensity = Main.Parameters.DesignParameters.Handle_Density) =
{
Pos0 = {0, 0, -Main.Parameters.DesignParameters.Back_Rest_Width/2} +
{0, 0, -Main.Parameters.DesignParameters.Handle_Dis_Offset};
RotAnglesInDegree0 = { -90, Main.Parameters.DesignParameters.Back_Rest_Tilt_Angle-90, 0};
Color = Main.DrawSettings.Colors.AnyBodyYellow;
Opacity = 1;
OpacityForLocalFrame = 1;
OpacityForLocalRefNodes = 0;
ScaleFactorForLocalRefNodes = 0.0;
};
};
Main.Model.EnvironmentModel.Segs.Back_Rest=
{
AnyRefNode FixToGlobal =
{
sRel = {-Main.Parameters.DesignParameters.Back_Rest_Height/2,0,0};
// AnyDrawRefFrame drw =
// {
// RGB = {1,1,0};
// ScaleXYZ = 0.5*{1,1,1};
// };
};
AnyRefNode cc_base_node =
{
sRel = {0, -Main.Parameters.DesignParameters.Back_Rest_Thick/2, 0};
ARel = RotMat(180*pi/180, z);
AnyDrawRefFrame drw =
{
RGB = {1,1,1};
ScaleXYZ = 0.05*{1,1,1};
};
};
AnyRefNode Pelvis_node =
{
sRel = {-Main.Parameters.DesignParameters.Back_Rest_Height/2 + 0.2,
-Main.Parameters.DesignParameters.Back_Rest_Thick/2, 0};
ARel = RotMat(180*pi/180, z);
AnyDrawRefFrame drw =
{
RGB = {1,0,1};
ScaleXYZ = 0.05*{1,1,1};
};
};
AnyRefNode FillCylNode =
{
sRel = {-Main.Parameters.DesignParameters.Back_Rest_Height/2,
0,
-Main.Parameters.DesignParameters.Back_Rest_Width/2};
AnySurfCylinder cyl_surf =
{
Radius = Main.Parameters.DesignParameters.Back_Rest_Thick/2;
Length = Main.Parameters.DesignParameters.Back_Rest_Width;
AnyDrawParamSurf drw =
{
RGB = Main.DrawSettings.Colors.AnyBodyGreen;
Opacity = 0.3;
WireFrameOnOff = On;
};
};
};
};
Main.Model.EnvironmentModel.Segs.Hip_Rest =
{
AnyRefNode FixToGlobal =
{
sRel = {-Main.Parameters.DesignParameters.Hip_Rest_Height/2,0,0};
// AnyDrawRefFrame drw =
// {
// RGB = {1,1,0};
// ScaleXYZ = 0.5*{1,1,1};
// };
};
AnyRefNode cc_base_node =
{
sRel = {0, Main.Parameters.DesignParameters.Hip_Rest_Thick/2, 0};
//ARel = RotMat(180*pi/180, z);
AnyDrawRefFrame drw =
{
RGB = {1,1,1};
ScaleXYZ = 0.05*{1,1,1};
};
};
AnyRefNode Slider_node =
{
sRel = {-Main.Parameters.DesignParameters.Hip_Rest_Height/2, 0, 0};
AnyDrawRefFrame drw =
{
RGB = {1,0,0};
ScaleXYZ = 0.05*{1,1,1};
};
};
};
Main.Model.EnvironmentModel.Segs.Handle_Right =
{
AnyRefNode connect_node =
{
sRel = {0, 0, -Main.Parameters.DesignParameters.Handle_Length/2};
ARel = RotMat(-90*pi/180, x)*RotMat(180*pi/180, y);
// AnyDrawRefFrame drw =
// {
// RGB = {1,0,0};
// ScaleXYZ = 0.05*{1,1,1};
// };
};
AnyRefNode Hand_Node =
{
sRel = {0, -Main.Parameters.DesignParameters.Handle_Radius, 0};
ARel = RotMat(180*pi/180, x)*RotMat(180*pi/180, y);
AnyDrawRefFrame drw =
{
RGB = {1,0,0};
ScaleXYZ = 0.05*{1,1,1};
};
};
};
Main.Model.EnvironmentModel.Segs.Handle_Left =
{
AnyRefNode connect_node =
{
sRel = {0, 0, -Main.Parameters.DesignParameters.Handle_Length/2};
ARel = RotMat(-90*pi/180, x)*RotMat(180*pi/180, y);
// AnyDrawRefFrame drw =
// {
// RGB = {1,0,0};
// ScaleXYZ = 0.05*{1,1,1};
// };
};
AnyRefNode Hand_Node =
{
sRel = {0, Main.Parameters.DesignParameters.Handle_Radius, 0};
//ARel = RotMat(180*pi/180, x)*RotMat(180*pi/180, y);
AnyDrawRefFrame drw =
{
RGB = {1,0,0};
ScaleXYZ = 0.05*{1,1,1};
};
};
};
Main.Model.EnvironmentModel.Segs.Foot_Rest =
{
AnyRefNode Slider_node =
{
sRel = {-Main.Parameters.DesignParameters.Foot_Rest_Height/2, 0, 0};
ARel = RotMat(-90*pi/180, z);
// AnyDrawRefFrame drw =
// {
// RGB = {1,0,0};
// ScaleXYZ = 0.05*{1,1,1};
// };
};
AnyRefNode cc_base_node =
{
sRel = {0, Main.Parameters.DesignParameters.Foot_Rest_Thick/2, 0};
//ARel = RotMat(180*pi/180, z);
// AnyDrawRefFrame drw =
// {
// RGB = {1,1,1};
// ScaleXYZ = 0.05*{1,1,1};
// };
};
AnyRefNode right_toe_node =
{
sRel = {Main.Parameters.DesignParameters.Foot_Rest_ToeNode_V_Offset,
Main.Parameters.DesignParameters.Foot_Rest_Thick/2,
Main.Parameters.DesignParameters.Foot_Rest_ToeNode_H_Offset};
ARel = RotMat(Main.Parameters.DesignParameters.Foot_Rest_ToeNode_Rotation*pi/180, y);
AnyDrawRefFrame drw =
{
RGB = {1,0,0};
ScaleXYZ = 0.05*{1,1,1};
};
};
AnyRefNode left_toe_node =
{
sRel = {Main.Parameters.DesignParameters.Foot_Rest_ToeNode_V_Offset,
Main.Parameters.DesignParameters.Foot_Rest_Thick/2,
-Main.Parameters.DesignParameters.Foot_Rest_ToeNode_H_Offset};
ARel = RotMat(-Main.Parameters.DesignParameters.Foot_Rest_ToeNode_Rotation*pi/180, y);
AnyDrawRefFrame drw =
{
RGB = {1,0,0};
ScaleXYZ = 0.05*{1,1,1};
};
};
AnyRefNode right_barbell_node =
{
sRel = {0, 0, Main.Parameters.DesignParameters.Foot_Rest_Width/2};
//ARel = RotMat(Main.Parameters.DesignParameters.Foot_Rest_ToeNode_Rotation*pi/180, y);
// AnyDrawRefFrame drw =
// {
// RGB = {1,0,0};
// ScaleXYZ = 0.05*{1,1,1};
// };
};
AnyRefNode left_barbell_node =
{
sRel = {0, 0, -Main.Parameters.DesignParameters.Foot_Rest_Width/2};
//ARel = RotMat(-Main.Parameters.DesignParameters.Foot_Rest_ToeNode_Rotation*pi/180, y);
// AnyDrawRefFrame drw =
// {
// RGB = {1,0,0};
// ScaleXYZ = 0.05*{1,1,1};
// };
};
};
Main.Model.EnvironmentModel.Segs.Barbell_Right =
{
AnyRefNode Logo=
{
sRel={0,0,Main.Parameters.DesignParameters.Barbell_Thick/2};
AnyDrawSTL Body =
{
FileName = ANYBODY_PATH_MODELUTILS +"DrawObjects/Body-grey.stl";
RGB = Main.DrawSettings.Colors.AnyBodyGrey;
Opacity = 1;
ScaleXYZ=Main.Parameters.DesignParameters.Barbell_Radius*0.04*{1,1,1};
AnyStyleDrawMaterial1 style =
{
EnableCreasing = On;
CreasingAngle = 0.524;
SpecularRGB = 0.05*{1,1,1};
};
};
AnyDrawSTL AnyTechnology =
{
FileName = ANYBODY_PATH_MODELUTILS +"DrawObjects/AnyTechnology-red.stl";
RGB = Main.DrawSettings.Colors.AnyBodyRed;
Opacity = 1;
ScaleXYZ=Main.Parameters.DesignParameters.Barbell_Radius*0.04*{1,1,1};
AnyStyleDrawMaterial1 style =
{
EnableCreasing = On;
CreasingAngle = 0.524;
SpecularRGB = 0.05*{1,1,1};
};
};
};
};
Main.Model.EnvironmentModel.Segs.Barbell_Left =
{
AnyRefNode Logo=
{
sRel={0,0,-Main.Parameters.DesignParameters.Barbell_Thick/2};
ARel=RotMat(180*pi/180, y);
AnyDrawSTL Body =
{
FileName = ANYBODY_PATH_MODELUTILS +"DrawObjects/Body-grey.stl";
RGB = Main.DrawSettings.Colors.AnyBodyGrey;
Opacity = 1;
ScaleXYZ=Main.Parameters.DesignParameters.Barbell_Radius*0.04*{1,1,1};
};
AnyDrawSTL AnyTechnology =
{
FileName = ANYBODY_PATH_MODELUTILS +"DrawObjects/AnyTechnology-red.stl";
RGB = Main.DrawSettings.Colors.AnyBodyRed;
Opacity = 1;
ScaleXYZ=Main.Parameters.DesignParameters.Barbell_Radius*0.04*{1,1,1};
};
};
};
Main.Model.EnvironmentModel.Joints =
{
AnyRevoluteJoint Back_Rest_Fix_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.GlobalRef;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Back_Rest.FixToGlobal;
Axis = z;
Ref = 0;
};
AnyRevoluteJoint Hip_Rest_Fix_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.GlobalRef;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Hip_Rest.FixToGlobal;
Axis = z;
Ref = 0;
};
AnyKinEqSimpleDriver Back_Rest_Fix_Drv =
{
AnyRevoluteJoint& jnt = .Back_Rest_Fix_Jnt;
DriverPos = pi/180*{Main.Parameters.DesignParameters.Back_Rest_Tilt_Angle};
DriverVel = {0};
};
AnyKinEqSimpleDriver Hip_Rest_Fix_Drv =
{
AnyRevoluteJoint& jnt = .Hip_Rest_Fix_Jnt;
DriverPos = pi/180*{Main.Parameters.DesignParameters.Hip_Rest_Tilt_Angle};
DriverVel = {0};
};
AnyRevoluteJoint Barbell_Left_Fix_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.Segs.Foot_Rest.left_barbell_node;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Barbell_Left.Node_Top;
Axis = z;
};
AnyRevoluteJoint Barbell_Right_Fix_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.Segs.Foot_Rest.right_barbell_node;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Barbell_Right.Node_Bottom;
Axis = z;
};
AnyKinEqSimpleDriver Barbell_Left_Fix_Drv =
{
AnyRevoluteJoint& jnt = .Barbell_Left_Fix_Jnt ;
DriverPos = pi/180*{-Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle};
DriverVel = {0};
};
AnyKinEqSimpleDriver Barbell_Right_Fix_Drv =
{
AnyRevoluteJoint& jnt = .Barbell_Right_Fix_Jnt ;
DriverPos = pi/180*{-Main.Parameters.DesignParameters.Foot_Rest_Tilt_Angle};
DriverVel = {0};
};
AnyPrismaticJoint Foot_Rest_Slider_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.Segs.Hip_Rest.Slider_node;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Foot_Rest.Slider_node;
Axis = x;
};
AnyKinPLine Foot_Rest_Slider_Jnt_Line =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.Segs.Hip_Rest.Slider_node;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Foot_Rest.Slider_node;
AnyDrawPLine drw =
{
Thickness = 0.01;
RGB = {0,0,0};
};
};
AnyPrismaticJoint Handle_Right_Fix_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.Segs.Back_Rest.FixToGlobal;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Handle_Right.connect_node;
Axis = z;
Ref = 0;
};
AnyKinEqSimpleDriver Handle_Right_Fix_Drv =
{
AnyPrismaticJoint & jnt = .Handle_Right_Fix_Jnt ;
DriverPos = {Main.Parameters.DesignParameters.Back_Rest_Width/2+
Main.Parameters.DesignParameters.Handle_Dis_Offset};
DriverVel = {0};
};
AnyPrismaticJoint Handle_Left_Fix_Jnt =
{
AnyRefFrame& base = Main.Model.EnvironmentModel.Segs.Back_Rest.FixToGlobal;
AnyRefFrame& target = Main.Model.EnvironmentModel.Segs.Handle_Left.connect_node;
Axis = z;
Ref = 0;
};
AnyKinEqSimpleDriver Handle_Left_Fix_Drv =
{
AnyPrismaticJoint & jnt = .Handle_Left_Fix_Jnt ;
DriverPos = {-Main.Parameters.DesignParameters.Back_Rest_Width/2-
Main.Parameters.DesignParameters.Handle_Dis_Offset};
DriverVel = {0};
};
};