User Tools

Site Tools


visual3d:tutorials:modeling:ik_kinematic_foot

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
visual3d:tutorials:modeling:ik_kinematic_foot [2024/06/18 13:35] sgrangervisual3d:tutorials:modeling:ik_kinematic_foot [2024/07/17 15:46] (current) – created sgranger
Line 1: Line 1:
 +====== IK Kinematic Foot ======
 +
 \\ \\
  
  
-===== Introduction =====+==== Introduction ====
  
 In this tutorial Virtual foot & Kinematic Only Foot are used interchangeably, but have the same meaning. In this tutorial Virtual foot & Kinematic Only Foot are used interchangeably, but have the same meaning.
Line 15: Line 17:
     * If this is done, it is important to change the weight of the segment in the IK POSE (this is done in Method 3).     * If this is done, it is important to change the weight of the segment in the IK POSE (this is done in Method 3).
  
-===== Prior to the Tutorial =====+==== Prior to the Tutorial ====
  
 **This tutorial assumes that you already have a model template, with an IK chain defined. The IK chain should include one kinetic foot segment.** **This tutorial assumes that you already have a model template, with an IK chain defined. The IK chain should include one kinetic foot segment.**
Line 32: Line 34:
 **While modifying the model in this tutorial, it is recommended to set the POSE algorithm to 6 Degree of Freedom. By setting the POSE to 6 Degree of Freedom, the IK will not have to solve at each frame every time a change is made.** **While modifying the model in this tutorial, it is recommended to set the POSE algorithm to 6 Degree of Freedom. By setting the POSE to 6 Degree of Freedom, the IK will not have to solve at each frame every time a change is made.**
  
-===== Creating Kinematic Only Foot =====+==== Creating Kinematic Only Foot ====
  
-==== Method 1: Virtual Foot Tracked using 6 DOF ====+=== Method 1: Virtual Foot Tracked using 6 DOF ===
  
 A completed example of this can be found [[http://c-motion.com/download/examples/IK/IKFoot/IK_VFoot_Method1.cmo|here]]. A completed example of this can be found [[http://c-motion.com/download/examples/IK/IKFoot/IK_VFoot_Method1.cmo|here]].
Line 44: Line 46:
 An example of this would be to create a foot which is parallel to the floor: An example of this would be to create a foot which is parallel to the floor:
  
-|**1. Create Right Ankle Joint Center Projected (RAJC_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RAJC_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RAJC_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RAJC::X//    **Y:** //RAJC::Y//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method1_RAJC_Proj.png}}|+|**1. Create Right Ankle Joint Center Projected (RAJC_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RAJC_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RAJC_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RAJC::X//    **Y:** //RAJC::Y//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method1_RAJC_Proj.png}}|
  
-|**2. Create Right Metatarsus 1 Projected (RMET1_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET1_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET1_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET1::X//    **Y:** //RMET1::Y//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method1_RMET1_Proj.png}}|+|**2. Create Right Metatarsus 1 Projected (RMET1_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET1_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET1_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET1::X//    **Y:** //RMET1::Y//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method1_RMET1_Proj.png}}|
  
-|**3. Create Right Right Metatarsus 5 Projected (RMET5_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET5_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET5_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET5::X//    **Y:** //RMET5::Y//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method1_RMET5_Proj.png}}|+|**3. Create Right Right Metatarsus 5 Projected (RMET5_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET5_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET5_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET5::X//    **Y:** //RMET5::Y//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method1_RMET5_Proj.png}}|
  
 \\ \\
  
  
-|**4. Create Right Virtual Foot Segment:**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>In the **Segments** tab, type //Right Virtual Foot// in the Segment Name box.<HTML></li></HTML>\\ <HTML><li></HTML>**Check** //Kinematic Only//<HTML></li></HTML>\\ <HTML><li></HTML>Click on the **Create Segment** button.<HTML></li></HTML>\\ <HTML><li></HTML>In the **Right Virtual Foot** tab, enter these values:\\ \\ |<HTML><p></HTML>   **Define Proximal Joint and Radius**\\    **Lateral:** //None//     **Joint:** //RAJC_Proj//     **Medial:** //None//     \\    **Radius:** //0.01//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Distal Joint and Radius**\\    **Lateral:** //RMET5_Proj//     **Joint:** //None//     **Medial:** //RMET1_Proj//     \\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Select Tracking Targets:**\\      **RFT1, RFT2, RHEE, RMET1, RMET5, RTOE**\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Build Model.** A 3D image of a foot will appear distal to the shank.<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Close Tab** before proceeding.<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method1_RFT1.png}}|+|**4. Create Right Virtual Foot Segment:**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>In the **Segments** tab, type //Right Virtual Foot// in the Segment Name box.<HTML></li></HTML>\\ <HTML><li></HTML>**Check** //Kinematic Only//<HTML></li></HTML>\\ <HTML><li></HTML>Click on the **Create Segment** button.<HTML></li></HTML>\\ <HTML><li></HTML>In the **Right Virtual Foot** tab, enter these values:\\ \\ |<HTML><p></HTML>   **Define Proximal Joint and Radius**\\    **Lateral:** //None//     **Joint:** //RAJC_Proj//     **Medial:** //None//     \\    **Radius:** //0.01//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Distal Joint and Radius**\\    **Lateral:** //RMET5_Proj//     **Joint:** //None//     **Medial:** //RMET1_Proj//     \\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Select Tracking Targets:**\\      **RFT1, RFT2, RHEE, RMET1, RMET5, RTOE**\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Build Model.** A 3D image of a foot will appear distal to the shank.<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Close Tab** before proceeding.<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method1_RFT1.png}}|
  
 |**5. Rotate the Segment Coordinate system:**\\ \\ - In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ - **Click** //Modify Segment Coordinate System//\\    **A/P Axis:** //+Z//    **Distal to Proximal:** //-Y//\\ \\ **For more information, please see [[Visual3D:Tutorials:Kinematics_and_Kinetics:Foot_and_Ankle_Angles_#Rotate_Segment_Coordinate_System|here]]**  |  | |**5. Rotate the Segment Coordinate system:**\\ \\ - In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ - **Click** //Modify Segment Coordinate System//\\    **A/P Axis:** //+Z//    **Distal to Proximal:** //-Y//\\ \\ **For more information, please see [[Visual3D:Tutorials:Kinematics_and_Kinetics:Foot_and_Ankle_Angles_#Rotate_Segment_Coordinate_System|here]]**  |  |
Line 60: Line 62:
 ---- ----
  
-==== Method 2: Virtual Foot Tracked using IK Landmarks ====+=== Method 2: Virtual Foot Tracked using IK Landmarks ===
  
 A completed example of this can be found [[http://c-motion.com/download/examples/IK/IKFoot/IK_VFoot_Method2.cmo|here]]. A completed example of this can be found [[http://c-motion.com/download/examples/IK/IKFoot/IK_VFoot_Method2.cmo|here]].
Line 68: Line 70:
 |**1-4. Create landmarks RAJC_Proj, RMET1_Proj, and RMET5_Proj**\\ \\ - Follow the instructions in Method 1 to create these landmarks (Steps 1-3)  |  | |**1-4. Create landmarks RAJC_Proj, RMET1_Proj, and RMET5_Proj**\\ \\ - Follow the instructions in Method 1 to create these landmarks (Steps 1-3)  |  |
  
-|**5. Create tracking target in the right kinetic foot coordinate system (RFT_IK1):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RFT_IK1//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RFT_IK1//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //Right Foot//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //0.0//    **Y:** //0.0//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Do NOT Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method2_RFT_IK1.png}}|+|**5. Create tracking target in the right kinetic foot coordinate system (RFT_IK1):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RFT_IK1//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RFT_IK1//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //Right Foot//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //0.0//    **Y:** //0.0//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Do NOT Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method2_RFT_IK1.png}}|
  
-|**6. Create tracking target in the right kinetic foot coordinate system (RFT_IK2):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RFT_IK2//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RFT_IK2//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //Right Foot//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //0.0//    **Y:** //-1//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Do NOT Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method2_RFT_IK2.png}}|+|**6. Create tracking target in the right kinetic foot coordinate system (RFT_IK2):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RFT_IK2//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RFT_IK2//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //Right Foot//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //0.0//    **Y:** //-1//    **Z:** //0.0//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Do NOT Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method2_RFT_IK2.png}}|
  
-|**7. Create tracking target in the right kinetic foot coordinate system (RFT_IK3):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RFT_IK3//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RFT_IK3//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //Right Foot//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //0.0//    **Y:** //0.0//    **Z:** //-1//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Do NOT Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method2_RFT_IK3.png}}|+|**7. Create tracking target in the right kinetic foot coordinate system (RFT_IK3):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RFT_IK3//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RFT_IK3//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //Right Foot//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //0.0//    **Y:** //0.0//    **Z:** //-1//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Do NOT Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method2_RFT_IK3.png}}|
  
-|**8. Create Right Virtual Foot Segment:**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>In the **Segments** tab, type //Right Virtual Foot// in the Segment Name box.<HTML></li></HTML>\\ <HTML><li></HTML>**Check** //Kinematic Only//<HTML></li></HTML>\\ <HTML><li></HTML>Click on the **Create Segment** button.<HTML></li></HTML>\\ <HTML><li></HTML>In the **Right Virtual Foot** tab, enter these values:\\ \\ |<HTML><p></HTML>   **Define Proximal Joint and Radius**\\    **Lateral:** //None//     **Joint:** //RAJC_Proj//     **Medial:** //None//     \\    **Radius:** //0.01//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Distal Joint and Radius**\\    **Lateral:** //RMET5_Proj//     **Joint:** //None//     **Medial:** //RMET1_Proj//     \\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Select Tracking Targets:**\\      **RFT_IK1, RFT_IK2, RFT_IK3**\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Build Model.** A 3D image of a foot will appear distal to the shank.<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Close Tab** before proceeding.<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method2_RFT.png}}|+|**8. Create Right Virtual Foot Segment:**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>In the **Segments** tab, type //Right Virtual Foot// in the Segment Name box.<HTML></li></HTML>\\ <HTML><li></HTML>**Check** //Kinematic Only//<HTML></li></HTML>\\ <HTML><li></HTML>Click on the **Create Segment** button.<HTML></li></HTML>\\ <HTML><li></HTML>In the **Right Virtual Foot** tab, enter these values:\\ \\ |<HTML><p></HTML>   **Define Proximal Joint and Radius**\\    **Lateral:** //None//     **Joint:** //RAJC_Proj//     **Medial:** //None//     \\    **Radius:** //0.01//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Distal Joint and Radius**\\    **Lateral:** //RMET5_Proj//     **Joint:** //None//     **Medial:** //RMET1_Proj//     \\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Select Tracking Targets:**\\      **RFT_IK1, RFT_IK2, RFT_IK3**\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Build Model.** A 3D image of a foot will appear distal to the shank.<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Close Tab** before proceeding.<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method2_RFT.png}}|
  
 |**9. Rotate the Segment Coordinate system:**\\ \\ - In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ - **Click** //Modify Segment Coordinate System//\\    **A/P Axis:** //+Z//    **Distal to Proximal:** //-Y//\\ \\ **For more information, please see [[Visual3D:Tutorials:Kinematics_and_Kinetics:Foot_and_Ankle_Angles_#Rotate_Segment_Coordinate_System|here]]**  |  | |**9. Rotate the Segment Coordinate system:**\\ \\ - In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ - **Click** //Modify Segment Coordinate System//\\    **A/P Axis:** //+Z//    **Distal to Proximal:** //-Y//\\ \\ **For more information, please see [[Visual3D:Tutorials:Kinematics_and_Kinetics:Foot_and_Ankle_Angles_#Rotate_Segment_Coordinate_System|here]]**  |  |
Line 81: Line 83:
 ---- ----
  
-==== Method 3: Virtual Foot Tracked using Second IK Foot ====+=== Method 3: Virtual Foot Tracked using Second IK Foot ===
  
 A completed example of this can be found [[http://c-motion.com/download/examples/IK/IKFoot/IK_VFoot_Method3.cmo|here]]. A completed example of this can be found [[http://c-motion.com/download/examples/IK/IKFoot/IK_VFoot_Method3.cmo|here]].
Line 91: Line 93:
 When defining a segment in the IK chain, it is important that the proximal end of the segment be the point of rotation. For this reason, the definition of the landmarks is slightly different than in Method 1 (where the foot was projected onto the ground). When defining a segment in the IK chain, it is important that the proximal end of the segment be the point of rotation. For this reason, the definition of the landmarks is slightly different than in Method 1 (where the foot was projected onto the ground).
  
-|**1. Create Right Metatarsus 1 Projected (RMET1_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET1_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET1_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET1::X//    **Y:** //RMET1::Y//    **Z:** //RAJC::Z//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method3_RMET1_Proj_RAJC.png}}|+|**1. Create Right Metatarsus 1 Projected (RMET1_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET1_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET1_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET1::X//    **Y:** //RMET1::Y//    **Z:** //RAJC::Z//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method3_RMET1_Proj_RAJC.png}}|
  
-|**2. Create Right Metatarsus 5 Projected (RMET5_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET5_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET5_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET5::X//    **Y:** //RMET5::Y//    **Z:** //RAJC::Z//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method3_RMET5_Proj_RAJC.png}}|+|**2. Create Right Metatarsus 5 Projected (RMET5_Proj):**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>Click **Landmarks** button<HTML></li></HTML>\\ <HTML><li></HTML>Click **Add New Landmark** button<HTML></li></HTML>\\ <HTML><li></HTML>Create Landmark: //RMET5_Proj//\\ \\ |<HTML><p></HTML>   **Landmark Name:** //RMET5_Proj//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Orientation Using:**\\     Click **Existing Segment:** //LAB//\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Offset Using the Following **ML/AP/AXIAL** Offsets:\\    **X:** //RMET5::X//    **Y:** //RMET5::Y//    **Z:** //RAJC::Z//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Offset by Percent (1.0 = 100%)//<HTML></li></HTML>\\ <HTML><li></HTML>**Check:** //Calibration Only Landmark//<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method3_RMET5_Proj_RAJC.png}}|
  
-|**3. Create Right Virtual Foot Segment:**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>In the **Segments** tab, type //Right Virtual Foot// in the Segment Name box.<HTML></li></HTML>\\ <HTML><li></HTML>**Check** //Kinematic Only//<HTML></li></HTML>\\ <HTML><li></HTML>Click on the **Create Segment** button.<HTML></li></HTML>\\ <HTML><li></HTML>In the **Right Virtual Foot** tab, enter these values:\\ \\ |<HTML><p></HTML>   **Define Proximal Joint and Radius**\\    **Lateral:** //None//     **Joint:** //RAJC//     **Medial:** //None//     \\    **Radius:** //0.01//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Distal Joint and Radius**\\    **Lateral:** //RMET5_Proj//     **Joint:** //None//     **Medial:** //RMET1_Proj//     \\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Select Tracking Targets:**\\      **RFT1, RFT2, RHEE, RMET1, RMET5, RTOE**\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Build Model.** A 3D image of a foot will appear distal to the shank.<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Close Tab** before proceeding.<HTML></li></HTML><HTML></ol></HTML>  |  {{IK_VirtFt_Method3_RFT.png}}|+|**3. Create Right Virtual Foot Segment:**\\ \\ <HTML><ol></HTML>\\ <HTML><li></HTML>In the **Segments** tab, type //Right Virtual Foot// in the Segment Name box.<HTML></li></HTML>\\ <HTML><li></HTML>**Check** //Kinematic Only//<HTML></li></HTML>\\ <HTML><li></HTML>Click on the **Create Segment** button.<HTML></li></HTML>\\ <HTML><li></HTML>In the **Right Virtual Foot** tab, enter these values:\\ \\ |<HTML><p></HTML>   **Define Proximal Joint and Radius**\\    **Lateral:** //None//     **Joint:** //RAJC//     **Medial:** //None//     \\    **Radius:** //0.01//\\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Define Distal Joint and Radius**\\    **Lateral:** //RMET5_Proj//     **Joint:** //None//     **Medial:** //RMET1_Proj//     \\ <HTML></p></HTML>\\ \\ <HTML><p></HTML>   **Select Tracking Targets:**\\      **RFT1, RFT2, RHEE, RMET1, RMET5, RTOE**\\ <HTML></p></HTML>||<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Build Model.** A 3D image of a foot will appear distal to the shank.<HTML></li></HTML>\\ <HTML><li></HTML>Click on **Close Tab** before proceeding.<HTML></li></HTML><HTML></ol></HTML>  |  {{:IK_VirtFt_Method3_RFT.png}}|
  
 |**4. Rotate the Segment Coordinate system:**\\ \\ - In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ - **Click** //Modify Segment Coordinate System//\\    **A/P Axis:** //+Z//    **Distal to Proximal:** //-Y//\\ \\ **For more information, please see [[Visual3D:Tutorials:Kinematics_and_Kinetics:Foot_and_Ankle_Angles_#Rotate_Segment_Coordinate_System|here]]**  |  | |**4. Rotate the Segment Coordinate system:**\\ \\ - In the **Segment Properties** tab, select //Right Virtual Foot// in the Segment Name box.\\ - **Click** //Modify Segment Coordinate System//\\    **A/P Axis:** //+Z//    **Distal to Proximal:** //-Y//\\ \\ **For more information, please see [[Visual3D:Tutorials:Kinematics_and_Kinetics:Foot_and_Ankle_Angles_#Rotate_Segment_Coordinate_System|here]]**  |  |
Line 102: Line 104:
  
  
-|**5. Set weighting for KINETIC foot to be 0.5:**\\ \\ - Go to the **IK Constraints** tab\\ - Click on the //Right Foot// segment\\ - In the **Weight Factor:** box, type //0.5//  |  {{IK_VirtFt_Method3_RKinetic_IKConstraints.png}}|+|**5. Set weighting for KINETIC foot to be 0.5:**\\ \\ - Go to the **IK Constraints** tab\\ - Click on the //Right Foot// segment\\ - In the **Weight Factor:** box, type //0.5//  |  {{:IK_VirtFt_Method3_RKinetic_IKConstraints.png}}|
  
-|**6. Add the VIRTUAL foot to the IK Chain:**\\ \\ - Go to the **IK Constraints** tab\\ - In the **Segment:** list, select //Right Virtual Foot//\\ - In the **Parent:** list, select //Right Shank//\\ - In the **Weight Factor:** box, type //0.5//\\ - In the **Mobilizers (Degrees of Freedom)** select:\\    //Rot 1, Rot 2, Rot 3//\\ - Click **Add**  |  {{IK_VirtFt_Method3_RKinematic_IKConstraints.png}}|+|**6. Add the VIRTUAL foot to the IK Chain:**\\ \\ - Go to the **IK Constraints** tab\\ - In the **Segment:** list, select //Right Virtual Foot//\\ - In the **Parent:** list, select //Right Shank//\\ - In the **Weight Factor:** box, type //0.5//\\ - In the **Mobilizers (Degrees of Freedom)** select:\\    //Rot 1, Rot 2, Rot 3//\\ - Click **Add**  |  {{:IK_VirtFt_Method3_RKinematic_IKConstraints.png}}|
  
 **NOTE:** The Mobilizers (Degrees of Freedom), should match the degrees of freedom used for your kinetic foot segment. **NOTE:** The Mobilizers (Degrees of Freedom), should match the degrees of freedom used for your kinetic foot segment.
  
-===== So what's the difference =====+==== So what's the difference ====
  
 Each of the sample CMO files ([[http://c-motion.com/download/examples/IK/IKFoot/IK_Foot.zip|all three can be downloaded]]) have two joint angles defined, ANGLE_BTWN_LFT and ANGLE_BTWN_RFT. These signals represent the joint angles between the virtual foot segment created using each method, and the kinetic foot segment. Each of the sample CMO files ([[http://c-motion.com/download/examples/IK/IKFoot/IK_Foot.zip|all three can be downloaded]]) have two joint angles defined, ANGLE_BTWN_LFT and ANGLE_BTWN_RFT. These signals represent the joint angles between the virtual foot segment created using each method, and the kinetic foot segment.
Line 114: Line 116:
 For Method 1 and 3, you will notice that the angle between the virtual and kinetic foot segments does not change at the beginning/end of the trial. This is because the IK is only run between frames START+END, so at the beginning/end of the trial both foot segments are tracked using 6 degree of freedom, so they are the same. For Method 1 and 3, you will notice that the angle between the virtual and kinetic foot segments does not change at the beginning/end of the trial. This is because the IK is only run between frames START+END, so at the beginning/end of the trial both foot segments are tracked using 6 degree of freedom, so they are the same.
  
-|For Method 1, the joint angle changes some between the virtual foot and kinetic foot segments since the kinetic foot is tracked using IK, while the virtual foot is tracked using 6 Degree of Freedom.  |  {{IK_Kinematic_Foot_Method1.png{{/images/thumb/7/72/IK_Kinematic_Foot_Method1.png/350px-IK_Kinematic_Foot_Method1.png?350x101}}|+|For Method 1, the joint angle changes some between the virtual foot and kinetic foot segments since the kinetic foot is tracked using IK, while the virtual foot is tracked using 6 Degree of Freedom.  |  {{:IK_Kinematic_Foot_Method1.png}}|
  
-|For Method 2, the joint angle does not change between the virtual foot and kinetic foot segments. This is because the virtual foot is tracked using landmarks which are tracked by the kinetic foot segment.  |  {{IK_Kinematic_Foot_Method2.png{{/images/thumb/a/a5/IK_Kinematic_Foot_Method2.png/350px-IK_Kinematic_Foot_Method2.png?350x101}}|+|For Method 2, the joint angle does not change between the virtual foot and kinetic foot segments. This is because the virtual foot is tracked using landmarks which are tracked by the kinetic foot segment.  |  {{:IK_Kinematic_Foot_Method2.png}}|
  
-|For Method 3, there is some motion in the joint angle between the foot and kinetic foot segments since both segments are included in the IK.  |  {{IK_Kinematic_Foot_Method3.png{{/images/thumb/a/a1/IK_Kinematic_Foot_Method3.png/350px-IK_Kinematic_Foot_Method3.png?350x101}}|+|For Method 3, there is some motion in the joint angle between the foot and kinetic foot segments since both segments are included in the IK.  |  {{:IK_Kinematic_Foot_Method3.png}}|
  
  
visual3d/tutorials/modeling/ik_kinematic_foot.1718717749.txt.gz · Last modified: 2024/06/18 13:35 by sgranger