[770c98]: / Application / Examples / AirlinePassenger / Model / ConnectionSegments.any

Download this file

228 lines (188 with data), 5.9 kB

//---------------------------------------------------------
// Segments - For connection between body-model and package
//---------------------------------------------------------

AnyFolder Segments = {
  
  AnyFolder &Pelvis = ..BodyModel.Trunk.SegmentsLumbar.PelvisSeg;
  AnyFolder &Thorax = ..BodyModel.Trunk.SegmentsThorax.ThoraxSeg;
  AnyFolder &L1 = ..BodyModel.Trunk.SegmentsLumbar.L1Seg;
  AnyFolder &L2 = ..BodyModel.Trunk.SegmentsLumbar.L2Seg;
  AnyFolder &L3 = ..BodyModel.Trunk.SegmentsLumbar.L3Seg;
  AnyFolder &L4 = ..BodyModel.Trunk.SegmentsLumbar.L4Seg;
  AnyFolder &L5 = ..BodyModel.Trunk.SegmentsLumbar.L5Seg;
  AnyFolder &FootRight = ..BodyModel.Right.Leg.Seg.Foot;
  AnyFolder &FootLeft = ..BodyModel.Left.Leg.Seg.Foot;
  AnyFolder &RefCD = Main.Model.EnvironmentModel.Seg.ChairDimensions;
  AnyFolder &Seat = ..EnvironmentModel.Seg.Seat;
  AnyFolder &BackRest = ..EnvironmentModel.Seg.BackRest;
  AnyFolder &FootRest = ..EnvironmentModel.Seg.FootRest;
//  AnyFolder &ArmRestRight = ..EnvironmentModel.Seg.Right.ArmRest;
//  AnyFolder &ArmRestLeft = ..EnvironmentModel.Seg.Left.ArmRest;
AnyFolder &UlnaRight= ..BodyModel.Right.ShoulderArm.Seg.Ulna;
  AnyFolder &UlnaLeft= ..BodyModel.Left.ShoulderArm.Seg.Ulna;
  
  //-------------------------------------------------------
  // Coordinates of points for attaching human to chair
  //-------------------------------------------------------
  
  AnyFolder InterfaceCoords = {
    AnyVar ITX = (1/2*.RefCD.SeatLength-0.07);
    AnyVar ITZ =  -0.034;
  }; //InterfaceCoords  
  
  //-------------------------------------------------------
  // Attachment - Pelvis to Seat
  //-------------------------------------------------------
  
  Pelvis = {
    AnyRefNode PelvisSeatJntNode = {
   
      sRel = {-0.01,-0.175,0.0};
      ARel = {{0,-1,0},{1,0,0},{0,0,1}};
      
     // AnyDrawRefFrame DrwRef = {        RGB = {1,0,0};        ScaleXYZ = {0.4,0.1,0.1};      };
      
    };
    
    AnyRefNode MidPointSupportNode = {
       sRel = {-0.03,0.0,0.0};
   };

  }; // Pelvis
  
  Seat = {
    AnyRefNode SeatPelvisJntNode = {
      sRel = {1/1*..RefCD.SeatThickness,..InterfaceCoords.ITX,0};
      /*
      AnyDrawRefFrame DrwRef = {
      RGB = {0,0,1};
      ScaleXYZ = {0.3,0.3,0.3};
      };
      */
    };
  }; // Seat
  
  //--------------------------------------------------------
  // Attachment - Thorax to BackRest
  //--------------------------------------------------------
  
  Thorax = {
    AnyRefNode ThoraxBackRestJntNode = {
      sRel ={-0.04,0.42,0.0};
      //AnyDrawRefFrame DrwRef = {        RGB = {0,0,1};        ScaleXYZ = {0.4,0.1,0.1};      };
    };
    AnyRefNode ThoraxBackRestJntNodeLow = {
      sRel ={-0.04,0.28,0.0};
//      AnyDrawRefFrame DrwRef = {        RGB = {0,1,1};        ScaleXYZ = {0.4,0.1,0.1};      };
    };

  }; // Thorax
 
  /*
  L1={
   AnyRefNode MidPoint={
      sRel=(.L1L2JntNode.sRel+.T12L1JntNode.sRel)*0.5;
      
    }; 
  };
  
  L2={
   AnyRefNode MidPoint={
      sRel=(.L1L2JntNode.sRel+.L2L3JntNode.sRel)*0.5;
   }; 
  };
  
  L3={
   AnyRefNode MidPoint={
      sRel=(.L2L3JntNode.sRel+.L3L4JntNode.sRel)*0.5;
   }; 
  };
  
  L4={
   AnyRefNode MidPoint={
      sRel=(.L3L4JntNode.sRel+.L4L5JntNode.sRel)*0.5;
   }; 
  };
  
  L5={
   AnyRefNode MidPoint={
      sRel=(.L4L5JntNode.sRel+.L5SacrumJntNode.sRel)*0.5;
   }; 
  };
  */

  
  
  FootRight = {
    AnyRefNode FootFootRestJntNode = {
      sRel = {0,0,0};
     
    };
  };
  
  FootLeft = {
    AnyRefNode FootFootRestJntNode = {
      sRel = {0,0,0};
     
    };
  };
  
  
  FootRight = {
    AnatomicalFrame = {
     AnyRefNode FootFootRestJntNode = {
       sRel = {0,0,0};
     };
    };
  };
  
  FootLeft = {
    AnatomicalFrame = {
     AnyRefNode FootFootRestJntNode = {
       sRel = {0,0,0};
     };
    };
  };

  
 FootRest = {
    /// Right foot rest node that is rotated somewhat parallel to the shank
    AnyRefNode FootRestRotNodeRight = {
      sRel = {0.075,0.10,0.096};
      ARel=RotMat(-85.0/180*pi, z);
     // AnyDrawRefFrame a={ScaleXYZ={1,1,1}*0.4;RGB={0,1,0};};
    };
    /// Left foot rest node that is rotated somewhat parallel to the shank
    AnyRefNode FootRestRotNodeLeft = {
      sRel = {0.075,0.10, -0.096};
      ARel=RotMat(-85.0/180*pi, z);
     // AnyDrawRefFrame a={ScaleXYZ={1,1,1}*0.4;RGB={0,1,0};};
    };
  };  
//  ArmRestRight = {
//    
//    AnyRefNode ArmRestUlnaJntNode = {
//      sRel = {..RefCD.ArmRestX, 0, 0};
//    };
//    
//  }; // ArmRestRight
//  
//  ArmRestLeft = {
//    
//    AnyRefNode ArmRestUlnaJntNode = {
//      sRel = {..RefCD.ArmRestX, 0, 0};
//    };
//    
//  }; // ArmRestLeft  
  
  
//  UlnaRight = {
//    
//    AnyRefNode UlnaArmRestJntNode = {
//      sRel = {0.018, 0.133, 0.014};
//      // ARel = {{1, 0, 0}, {0, -1, 0}, {0, 0, 1}};
//      ARel = {{0, 0, -1}, {0, -1, 0}, {-1, 0, 0}};
//      /*
//      AnyDrawNode DrwNode = {
//        RGB = {1, 0, 0};
//        ScaleXYZ = {0.01, 0.01, 0.01};
//      };
//      */
//      /*
//      AnyDrawRefFrame DrwRef = {
//        RGB = {1, 0, 0};
//        ScaleXYZ = {0.2, 0.2, 0.2};
//      };
//      */
//    };
//    
//  }; // UlnaRight
//    
//  UlnaLeft = {
//    
//    AnyRefNode UlnaArmRestJntNode = {
//      sRel = {0.018, -0.133, 0.014};
//      ARel = {{0, 0, 1}, {0, 1, 0}, {-1, 0, 0}};
//      /*
//      AnyDrawNode DrwNode = {
//        RGB = {1, 0, 0};
//        ScaleXYZ = {0.01, 0.01, 0.01};
//      };
//      */
//      /*
//      AnyDrawRefFrame DrwRef = {
//        RGB = {1, 0, 0};
//        ScaleXYZ = {0.2, 0.2, 0.2};
//      };
//      */
//    };
//    
//  }; // UlnaLeft   
  
  
  
}; // Segments