Visual3D™ Analysis and Reporting Tutorial (3.0 Edition) C-Motion, Inc. 15821-A Crabbs Branch Way Rockville, MD 20855 USA (301) 840-1919 (phone) (301) 840-0271 (fax) support@c-motion.com Table of Contents How to Use the Visual3D ™ Tutorials...............................................................................................1 Visual3D Tutorial # 4 ................................................................................................................2 The Visual3D Workspace...........................................................................................................3 Starting Visual3D...............................................................................................................4 Load the Motion and Model File .............................................................................................4 File Tags .............................................................................................................................5 Model Based Calculations .......................................................................................................6 Analysis Goal.....................................................................................................................6 Creating a Report .................................................................................................................7 Creating Joint Angles........................................................................................................... 10 Adding to the Report ........................................................................................................... 14 Report Page Layout .......................................................................................................... 18 Recalculating ..................................................................................................................... 19 Other Link Model Based Data Calculations ............................................................................... 20 Segment Angles............................................................................................................... 20 Joint Centers ................................................................................................................... 20 Joint Angles .................................................................................................................... 20 Joint Forces .................................................................................................................... 21 Joint Moments................................................................................................................. 21 Joint Power ..................................................................................................................... 22 Link Model Calculations........................................................................................................ 23 Acknowledgements: The development of Visual3D software was funded in part by STTR grant (R43 HD3728601) from the National Institute of Child Health and Human Development (NICHD). C-Motion also gratefully acknowledges and appreciates the assistance provided by the Rehabilitation Medicine Department in the Warren Grant Magnuson Clinical Center at the National Institutes of Health. ii How to Use the Visual3D™ Tutorials Welcome to C-Motion’s Visual3D motion analysis software. This is the last of four tutorials. The Visual3D software provides the kinematics and kinetic (inverse dynamics) calculations needed for biomechanical analysis, as will be seen in this tutorial. After motion capture data has been collected, there are several steps to performing a motion analysis in which Visual3D is needed. You need to: 1. Create a model of the subject(s) using a subject standing calibration file, and define the linked segments 2. Validate the movement data and associate the movement data with the model 3. Perform any desired signal and event processing 4. Define any biomechanical model based calculations for angles, moments, powers, and other metrics. 5. Generate the desired kinematic and kinetic analysis reports For this reason, there are four (4) tutorials available. They cover: 1. Modeling 2. Data and Force Plate Validation 3. Signal, Event, and Pipeline Processing 4. Analysis and Reporting Each tutorial picks up where the last one ended, but the results of each tutorial are saved as a .cmo file so that you may skip a part that you already are familiar with, or try out different features and capabilities during a tutorial - using it only as a guideline. The tutorial instructions are given in this column. Screen shots and explanations are provided in this column, and the tutorial instructions are listed in the right column. Various sample input files will be needed, and can be downloaded from the web site at: http://www.c-motion.com/support/tutorials.htm We hope you find Visual3D useful. We are constantly improving the product, and if you have any suggestions for enhancements or new features, we would love to hear them. Just drop us a note at info@c-motion.com any time. May, 2004 1 Visual3D Tutorial # 4 It is assumed that Visual3D has been installed and a model has been created as described in the first tutorial. Likewise, we assume that a movement trial has been assigned to a model and the data processed and validated – from the third tutorial. We will be doing a lower body gait analysis in a collection of tutorials. The techniques and processes followed are easily transferred to sports, neuroscience, animation, or other applications since we are focusing on the tool, not the analysis. To start the tutorial, we need to pick up where the third one ended – with a completed model and assigned motio n file saved as a .cmo file. This can also be downloaded. You may optionally try to enhance the script file from the third tutorial. These need to be downloaded. These files can be found on the web site in the Example at: Use the .cmo file from the third tutorial or download it. It is called: “Signal Processing.cmo” The following script file is optional: “Model and Process Sample.v3s” http://www.c-motion.com/support/tutorials.htm This tutorial is focused on, signal and event processing, and using the Pipeline processor in Visual3D. The file “Report Processing.cmo ” contains the end results of this tutorial and may be used to check your progress and/or as input for the subsequent analysis and reporting tutorials. May, 2004 Save the files in a location on your computer where you would normally save motion capture files. 2 The Visual3D Workspace Visual3D creates a unique Workspace into which capture data is added, models are integrated, and reports are produced. The whole workspace can then be saved and shared as a digital report in which all the underlying analysis, data, and models can be referenced. The entire Visual3D Workspace is contained in a special file, with the extension “.cmo ” (for C-Motion Output). In this tutorial we will process a movement trial. The file itself is never touched. Instead, it is copied into the workspace. Even in the workspace, the original data is not modified, but is maintained so that all calculations and signal processing results can be recreated. As a clinical and research tool, Visual3D keeps track of the processing done to data so that unwarranted assumptions are not made, and consistent outcomes are reached every time the same data is used. This is also why we prefer getting raw data from systems rather than processed data (i.e. no interpolating, filtering, or pre-processing). For example, if all we have is ground reaction data from a force plate as input, we have to assume that all the force plate properties, calibrations, and processing was perfect since there is no way to validate the data. This leads to unwarranted assumptions and possible invalid analytical results. Visual3D is designed to work with raw data as a way to avoid making unwarranted assumptions and generating valid, reproducible results. The above information is in each tutorial, but this tutorial is the one where actual analysis concepts and reporting capabilities are simply touched on. The idea here is to become familiar with the tool, so that you know where to look when you want to try something new. May, 2004 3 Starting Visual3D Launch the program from you Windows Start menu. After a brief title screen display, the program opens with an empty Visual3D Workspace. The Visual3D Workspace tab displays the contents of the current workspace – which can be saved as a .cmo file. Start Visual3D: Start -> Programs - > C-Motion -> Visual3D Load the Motion and Model File First we will open the data saved earlier as a .cmo file. We will add the movement trial to the workspace. From the File menu, select Open - > Signal Processing.cmo The next step is to develop the analysis plan. Since this is simply a tutorial, we will be creating a gait analysis report of only a few specific measures. The other tutorials took a step by step approach in order to explain basic features. In this tutorial we will be taking a more interactive approach. We will create some kinetic and kinematic calculations using out basic link- model (i.e. a model of segments linked together). But first, there is a powerful feature that is used in customizing your analysis called Tags… May, 2004 4 File Tags File tags are used to differentiate or group movement trials. In this way calculations can be performed against a select set of movement trials, and reports can be created based on a subset of movement data. Movement trials can have multiple tags assigned. For example, all files associated with trials in which the subjects walked barefoot can have a tag labeled "Bare Foot" assigned to them. Those trials that are "Bare Foot" and are only women subjects could have another tag labeled "Female" to that file. A graph in the report can then display only files with a certain tag. Tags are most easily created on the Workspace Status Tab in visual3D by clicking the “Add New File Tag” button. Fine-tuning tags on thousands of motion trails can be done using the File- >”Add/Modify File Tags” option. Switch to the Workspace Status tab Click on the “Add New Tag” button Enter ‘Sample Tag” as its name Check the box so the new tag is used, and not deleted Tags are added to the Data Tree under the Parameters folder. Since empty folders or parameters are not saved, this means that a tag must be used as soon as it is created in order to stick around. It also means that any tag that is not assigned (i.e. no boxes checked in the column) effectively doesn’t exist. To delete a tag, simply don’t assign it to anything. Note: Tags are used to group files together. Reports and model based calculations can be constrained to tagged files. File tags are also displayed in the combo box on the toolbar in the Signal and Event Processing tab. This lets any checked signals and events for groups of trials can be collectively processed. Tags are used to limit reporting to specific trails, and for limiting model based calculations to only certain trials. May, 2004 5 Model Based Calculations If you have a Ph.D. in Kinesiology or Biomechanics, or you are an M.D. or researcher – do not skim lightly or jump completely over these sections. This tutorial is written without as much jargon as possible to address a very broad customer base. However, the interfaces and techniques described are the exactly the same approaches and techniques used for the most sophisticated analyses. Warning: Even if it seems simplistic, the process and screens used are fundamental. Part of the power of Visual3D is the ability to determine exactly what and how calculations are done – and the ability to point to the published works proving its validity. From a pure tool perspective, the power is in additional Pipeline command parameters and options, and the ability to add special purpose plug-ins. With that said, let’s move on to the analysis. Analysis Goal Some of the analysis characteristics we will examine will be positions of the pelvis and foot during gait, knee flexion and extension, and knee joint moments and powers. To do this we will define segment angles, joint angles, joint moments, and joint powers. We will also be reporting on basic attributes such as stride length and other fundamental gait characteristics. First, we will create of report with basic gait information. Then, we will calculate joint angles to measure left and right knee flexion/extension and add to our report these measures. We will create a report with joint angles for knee flexion/extension, and some basic gait data. May, 2004 6 Creating a Report A blank report exists by default in the Visual3D Workspace. All we need to do is go to the Reporting Tab and add the graphs we want. Switch to the Reporting Tab The left panel of the screen can be toggled between the Edit Report Dialog and an Animation view by clicking the Edit Report toolbar icon – the one that looks like a colorful checkerboard. The report toolbar icon toggles between an animation view and the report layout dialog box… Add a graph to the report at • Page 1 • Row 1 • Column 1 • Select the “Temporal and Distance Metrics” • Click the Add button When a model is created in Visual3D, some of the more basic Gait Analysis values are calculated and added to the data tree, notably Kinematic and Kinetic values. When Gait events are created – such as Heel Strikes and Toe Offs, Visual3D will calculate various standard gait metrics, which can be presented in a pre-formatted single chart. These metrics are related to gait movements over time – thus are called “Temporal Metrics.” On Page 1, Row 1, Column 1 – Add a Temporal and Distance Metrics chart. Select all of the items to graph and fill in the event names. A title for the graph can also be entered. May, 2004 7 Give the graph the title ‘Temporal and Distance Metrics’ Select all the Distance Items Enter the proper event labels Click Done Note that by default the graph took up the whole page. As you add new graphs in rows and columns, Visual3D will attempt to dynamically rescale the page so that the whole page is being used. To see a whole page of a report… The following pages describe each metric. Click the Show/Hide Edit Dialog toolbar icon (it toggles the animation view) Drag the splitter bar between panes over to the left, eliminating the animation window Zoom in by clicking on the magnifying glass icons May, 2004 8 All metrics are constrained to the initial heel strike to the final toe off events. Step = (Heel Strike foot1 – Heel Strike foot2) The time from one foot making contact until the other foot makes contact. Step Length = Distance of a step in meters. Speed – (also called Cadence) Walking rate of steps in meters per second, and normalized to Statures per second. A Stature is a step length/height, and compensates for the different height and weight characteristics between patients. Stride = (Heel Strike – Heel Strike) When one foot makes contact until it makes contact again. Stride Width and Length – Length is the distance from Heel Strike to Heel Strike. Stride width is the distance between the opposite Heel Strike to the stride vector (HS-HS). Both are averaged for the number of strides found in the event range. This number (or count) is always given in parenthesis. May, 2004 9 Cycle = (Heel Strike – Heel Strike) When one foot contacts the ground and ends when that foot contacts the ground again. Cycle Time – A computed average and the actual numbers (count of cycles in parenthesis) with deviation range. Stance = (Heel Strike –Toe Off) While one foot is in continuous contact with the ground. Swing = (Toe Off – Heel Strike) While a foot is in the air. Double Limb Support = (Heel Strike foot1 – Toe Off foot2) The time when BOTH feet are on the ground during a gait cycle Right Initial (and Left Terminal) Double limb Support Time – The time from Right Heel Strike to Left Toe Off Right Terminal (and Left Initial) Double Limb Support Time – The time from Left Heel Strike to Right Toe Off. The graphs quickly point out if a patient favors their left or right side during gait. Creating Joint Angles Joint angles are defined as the orientation of one segment relative to another segment. Because we are dealing with 3D space, there are a series of rotational transformations involved in the calculation. A joint angle is not the same as a 3-point or 4-point angle in which there are projections, but no transformations (more on this later). Back to the tutorial… Visual3D lets you pick any 2 segments in which to measure a joint angle. They do not have to be connected – or even be near each other. In practice, joint angles are calculated as the transformation from one segment (A) to another segment (B) using the local coordinate system of segment B as the frame of reference. It is essential that you select the proper Cardan sequence based on a complete understanding of what you are trying to measure. It is beyond the scope of this document to explain the concepts behind the 3D order of rotations/transformations that go into calculating joint angles. In Visual3D, you can choose the Cardan sequence you want. The default Cardan sequence used by Visual3D is the ordered sequence of rotations (x, y, z) that assumes that the Z axis is in the up/dow n/Axia l direction and the Y axis is Anterior/Posterior, or the direction if travel. (Yeadon, 1990; Davis et al., 1991; Kadaba et al., 1990), where: X = flexion/extension Y = abduction/adduction Z = longitudinal rotation May, 2004 This is trying to explain that Knee Flexion/Extension is calculated by rotating the shank segment around the Xaxis of the thigh segment and measuring the rotation needed to align the Y and Z axes – on a frame by frame basis… 10 One of the options for joint angles is to select normalization (not generally recommended due to a high level of uncertainty). Normalization means that when the segments in the movement trial are in the same relative posture as the same segments in the standing trial, the joint angle is considered zero. The problem with the calculation of a normalized angle (as we have done it) is that the standing posture and the movement trial should both be aligned with the laboratory axis. Getting a patient to stand oriented relative to the lab may not be possible. An alternative approach is to create Virtual Segments that define the desired angle in the standing posture. Normalization is not used in this tutorial joint angle definition – too many subtle things can affect the results. Experience is needed for that one... Let’s create joint angles for measuring the flexion/extension of the each knee. In Visual3D, from MODEL in the main menu bar, select Create Model Based Data to get the following dialog box. From the main menu bar, select MODEL- > Compute Model Based Data Create a joint angle called ‘Right Knee Flexion’ (i.e. its Data Name). The link model based property is a Joint Angle. The segment will be The right shank and the reference segment is the right thigh. Because we are looking for flexion/extension, which is a Euler angle projected into the Z-Y plane, we need a transformation around the X axis – thus the default Cardan sequence of X,Y,Z is correct. Then press the Create button. May, 2004 NOTE: Determining the proper Cardan sequence depends on the orientation of your reference coordinate system… 11 Data Name: Right Knee Flexion Properties/Calculation: JOINT_ANGLE Segment: Right Shank Reference Segment (and coordinate system): Right Thigh Cardan Sequence: X-Y-Z (transform around X axis first) The joint angle is created and a processing dialog shows if any errors were encountered. Click CREATE button Do this again for the Left Knee. Repeat for the Left Knee Flexion Click CREATE button, then Click CLOSE 2 Joint Angles have been created. Switch to the Signal and Event Processing tab… May, 2004 12 Notice that a new folder for LINK_MODEL_BASED items has been created. Any calculations relying on linked model segments will show up here. This might be a good time to save the Workspace if you want Notice that a new folder is created in the Data Tree for LINKMODEL-BASED calculations. Let’s now go back to the tutorial and add a few graphs to our report… May, 2004 13 Adding to the Report Switch to the Reporting tab of the Visual3D Workspace Reset the page number on where to add a graph to Page 2 Select a 2D Graph to add Click the Add button… The next screen is where you enter or modify data for a specific graph. Note: If you forgot to change a page, row, or column you can reset the graph’s position here as well Give this graph the title: Right Knee Flexion/Extension Make the line color Red Notice that you can limit the source of data by selecting groups of movement trials in the File/Tags to Graph combo box… The X-Axis should reflect time – i.e. FRAME_NUMBERS To see the time in seconds (rather than from 1-100%) select the TIME component of the FRAME_NUMBERS, and graph the Global Min to Max The Y-Axis will be our Joint Angle. Select LINK_MODEL_BASED as the type, and the Right Knee Flexion calculation that we created earlier Click the Done button to create the graph. May, 2004 14 Move to PAGE 2 from the toolbar to see the new graph Now let’s add a graph for the Left Knee… Here is a time -saving trick. To pre-fill in the data for the next graph (if it is going to be similar to another one) - highlight the graph in the top section of the Edit Report dialog before clicking the Add Graph button. (As shown above) Add another 2D Graph on page 2, row 2 Change the title to Left Knee Flexion/Extension Make the line Blue Make the X-Axis show time values Graph the Left Knee joint angle NOTE: A short-cut button the Model->Create Model Based Data dialog is available here… Click the Done button May, 2004 15 Trick: Double-clicking on a graph will zoom in on it. Double-click again to shrink it back… Notice that there is a zero baseline drawn. To remove this, simply select the graph by clicking on it, the rightclick and select Format Graph… Here you can de-select the Show Baseline option; change axis values; or add grids (among other options). The Reporting Tool in Visual3D has some additional flexibility with graph layouts… To consolidate the two graphs onto a single graph, simply change the display row in the second graph back to 1. May, 2004 16 A different title is needed (highlight the graph in the top of the left panel, click Modify Selected button) The graph shown to the left removed the baseline and displays a legend. (select, right-click, format graph) Reports consist of data only available in the workspace – meaning data from the Data Tree, which c ontains the results of calculations based on movement data, which is in turn based on a defined model – therefore the report relies on data that only exists in the workspace. Report Templates can be saved (and reused), but these contain only the definitions of the report – its graph layouts, model based calculations, and descriptions of the data to graph – NOT the data. A .cmo workspace file contains the report, data, and any processing or calculations. Save the “report template” as: Tutorial 4 report template.rgt (File- >Save Report Template) Note: This does NOT save the DATA associated with a report – only the formatting any page layouts. Note: The definitions of all the Link Model Calculations, like Joint Angles, are saved in the report template as well May, 2004 17 Report Page Layout One of the last things to cover is page layout. First, paper size, orientation and margins can be set by right-clicking on the report and selecting “Options.” The second tab contains the paper layout options. Right-click on the report to bring up the context menu Select Options Change the paper size to: Height = 11.0 Width = 8.5 Click OK to the dialog and the subsequent warning message. Note also that Visual3D automatically sizes the graphs to fit the entire page based on the rows and columns you have created. Page one in this tutorial has only one graph – thus one column and row – so it takes up the whole page. To enhance the layout or reposition a graph on the page we need to decide on how many rows and columns will be on the page. A graph can span columns and/or rows so that there is flexibility in laying out each page. Because of the automatic scaling capabilities of Visual3D, we can place a graph at the lower right hand corner of the page first. This forces a maximum number of rows and columns to be created, making it easier to see the layout as it happens. TRICK: Create a small, blank bitmap file using Microsoft Paint, and use it as the graph in the lower corner. We created the bitmap, but put a border on it for this example so you could see how it works. May, 2004 18 In the example below you can see that we added a bitmap at row 4, column 4, and then rescaled the Temporal Distance graph to span 3 rows and 3 columns. You can use this trick to create lager margins or columns anywhere you need. Recalculating As a final note. Since the data is not saved with a report template, if you reload a report template, you may get graphs that simply say “No Data” in them. You need to refresh the linkage between the link model based calculations, the data tree, and the report. Simply click the Recalc toolbar icon (or menu items) to refresh the workspace calculations and the report data sources. Click the Reclac Toolbar icon Save your workspace! Congratulations, you are finished the entire set of tutorials! This ends the interactive part of the tutorial. Since this tutorial is primarily focused on learning how to use the tool and knowing where to click to get what you need, the following section is a more detailed explanation of your analysis and reporting options. May, 2004 19 Other Link Model Based Data Calculations This is not part of the tutorial, but there are many other calculations you can create and report on in addition to Joint Angles. They include: Note: The following 2 sections are for additional information and not part of the tutorial… Segment Angles Segment angles are defined as the orientation of one segment relative to the laboratory. Segment angles are often calculated for the pelvis relative to the laboratory and for the foot relative to the laboratory. In Visual3D, there are many ways to measure segment angles. A couple popular methods are: 1. Create a virtual segment by adding landmarks at the origin and out along the Y axis of the lab coordinate system, and calculating a joint angle using this new segment as the reference segment. 2. Use either the 3-point or 4-point angle plug-ins to measure either a Euler projected angle or a 3D angle in space. Joint Centers Technically, there are no joint “centers” in Visual3D (or in human movement). A “joint” is created automatically in Visual3D when 2 segment ends are near each other. These are the yellow dots in the model builder view. These are also the ‘joint centers’ used to define model segments. Sometimes a ‘joint center’ is created by hand (or identified in a calibration file). This type is different since they are either physical markers or landmarks. The joint centers typically referred to are usually the calculated ‘joint’ results of adjacent segments. Joint Angles A joint angle requires the definition of any 2 segments. They do not have to be connected – or even near each other. Joint angles are defined as the orientation of one segment relative to another segment. In practice, joint angles are calculated as the transformation from one segment (A) to another segment (B) using the local coordinate system of segment B as the reference as defined by the user. In Visual3D, you can choose the Cardan sequence you want so that you get the results you are looking for. The default Cardan/Euler sequence used by Visual3D is the ordered sequence of rotations (x, y, z) (Yeadon, 1990; Davis et al., 1991; Kadaba et al., 1990), where: x = flexion/extension y= abduction/adduction z= longitudinal rotation One of the options for joint angles is to select normalization (not May, 2004 20 generally recommended due to a level of uncertainty). Normalization means that when the segments in the movement trial are in the same relative posture as the same segments in the standing trial, the joint angle is considered zero. The problem with the calculation of a normalized angle (as we have done it) is that the standing posture and the movement trial should both be aligned with the laboratory axis. Getting a patient to stand oriented relative to the lab may not be possible. An alternative approach is to create Virtual Segments that define the desired angle in the standing posture. Joint Forces The picture below is a free body diagram of two segments, showing the traditional assumptions for inverse dynamics (kinetic) analysis. F1 is the “proximal segment” and F2 is the “distal segment.” The Joint Force is the reaction force between adjacent segments. It is assumed that: 1. The joint forces are equal and opposite about the joint 2. Joint moments are equal and opposite about the joint 3. The distal end of one segment does not need to be at the same place as the proximal end of the other segment. This allows movement in the joint. Visual3D translates the force to the distal end of F1 (the proximal segment) for the inverse dynamics calculations. Joint Moments Visual3D calculates the Internal Moment. If the user wants to calculate the External Moment, another set of signals should be calculated using the Pipeline commands under “Signal Math” to multiply each signal by -1. May, 2004 21 In the gait analysis literature there are three documented approaches to describe the joint moments calculated from Inverse Dynamics. It is important to be aware of which method is being used so that you can tell what the sign on the moment is supposed to be. Visual3D defaults to the first approach. The first method presents the Net torque generated by muscles crossing a joint (referred to as the internal moment). In the figure above the joint moment is F2 proximal; that is the proximal moment in the distal segment. This moment is typically resolved in the segment coordinate system of the proximal segment (F1). The second interpretation is based on the ground reaction force (GRF or foot-floor constraint) being the dominant input to the body. The extensor muscles of the legs during the stance phase of gait counteract the GRF. This external moment is opposite in sign to the internal moment described in the first method (e.g. –F2 proximal in the figure). The third interpretation is based on the sum of all extensor moments at the ankle, knee and hip. In this interpretation all extensor moments are assigned a positive value. One of the consequences is that the moments at the hip and the knee (for example) will have different sign conventions with respect to the laboratory. Joint Power Joint Power is the product of the proximal joint moment and the segment’s angular velocity. May, 2004 22 Link Model Calculations The Compute Model Based Data dialog box provides the ability to define the following type of calculations… COP_Path – Calculate the path of the Center of Pressure for a segment with respect to some coordinate system (usually the segment’s coordinate system). Normalization is by foot width and length. GRF_DATA – Calculate the Ground Reaction Force. Pick a segment and coordinate system (usually a foot using the lab system) to use to determine which force platform gets used. Normalization is with the subject’s body weight. HELICAL_ANGLE – Calculate a Segment Angle as a helix. Specify the segment to track and in which coordinate system. JOINT_ANGLE – Calculate the angle between 2 specified segments, where the second one is the reference segment. Normalization is based on matching the static trial, so coordinate systems (and A/P direction) must match perfectly. You have the flexibility of explicitly specifying a different Cardan sequence. JOINT_FORCE – Calculate the forces on a joint at the distal end of a segment. Select the joint (calculated yellow dots in the model) and the proximal segment’s coordinate system. Normalization is with subject mass. JOINT_MOMENT – Calculate the moment around a joint (yellow dot in the model). Select the joint (calculated yellow dots in the model) and the proximal segment’s coordinate system. Normalization is with subject mass. JOINT_POWER – Calculate the power relative to the lab or a segment. Select the joint (calculated yellow dots in the mo del) and the proximal segment’s coordinate system. Normalization is with subject mass. May, 2004 23 JOINT_VELOCITY – Calculate the angular velocity of the joint between 2 segments where the second one is the reference segment. Specify results in terms of the Lab or the reference segment. MODEL_COG – Tack the Center of Gravity for the whole model. Specify the coordinate system to use – the Lab or a segment. SEG_CGPOSITION – Calculate a segment’s Center of Gravity with respect to another segment’s proximal end. Specify the coordinate system to use, the lab or a segment. SEG_DISTAL_JOINT – Calculate the joint at the distal end of a segment relative to the proximal end of the reference segment. Define the position relative to the segment or the lab. SEG_PROXIMAL_JOINT– Calculate the joint at the proximal end of a segment relative to the proximal end of the reference segment. Define the position relative to the segment or the lab. SEG_VELOCITY – Calculate the velocity of the center of mass of a segment. Specify the coordinate system to use, the lab or a segment. TARGET_PATH – Calculate the position of a target relative to a reference segment. Specify the coordinate system to use, the lab or a segment. May, 2004 24