<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN"
 "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Interchange' version='3.0'
 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance'
 xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-3.0.xsd'>
 <head>
  <meta name='title' content='RHandTootsie2scale.xml'/> 
  <meta name='creator' content='Stewart Dickson'/>
  <meta name='description' content='hand avatar approximately life-sized'/>
  <meta name='reference' content='http://www.digital-humans.org/Report2004/Documents/01-KinematicHumanModeling.htm'/>
 </head> 
 <Scene>
  <Group>
   <Shape>
    <Appearance>
     <Material  DEF='SkinColor' diffuseColor='0.8 0.4 0.4'/>
    </Appearance>
   </Shape>
   <Transform DEF='Relbow' translation='0.0 0.0 0.0'
                           rotation='0.0 0.0 1.0 0.0'>
    <!-- # translate in X length of Radius/Ulna -->
    <Transform DEF='Rwrist_PITCH' translation='350.0 0.0 0.0'
                                  rotation='0.0 0.0 1.0 0.0'>
     <Transform DEF='Rwrist_ROLL' rotation='1.0 0.0 0.0 0.0'>
      <!-- translate thumb metacarpal to left side of wrist (+Z) -->
      <Transform DEF='Rhand_thumbPalm' translation='0.0 0.0 25.1'
                                       rotation='1.0 0.0 0.0 0.0'>
       <Transform DEF='Rhand_thumbIndex' rotation='0.0 1.0 0.0 -0.4'>
        <Transform DEF='Rhand_thumbNear' rotation='0.0 0.0 1.0 0.0'>
         <!-- # translate in X 1/2 *
              # length of thumb metacarpal = 0.251 * HL
              # scale 1/2 unit sphere to thumbMcarpal dimensions -->
         <Transform DEF='Rhand_thumbMcarpalXform' translation='25.5 0.0 0.0'
                                                  scale='51.0 22.25 28.25'>
          <Shape DEF='Rhand_thumbMcarpalShape'>
           <Sphere DEF='Rhand_thumbMcarpalSphere'/>  
           <Appearance USE='SkinColor'/>
          </Shape> <!-- end 'Rhand_thumbMcarpalShape' -->
         </Transform> <!-- End 'Rhand_thumbMcarpalXform' -->
         <!-- # translate in X
              # length of thumb metacarpal = 0.251 * HL -->
         <Transform DEF='Rhand_thumbFar' translation='51.0 0.0 0.0'
                                         rotation='0.0 1.0 0.0 0.0'>
          <!-- # translate in X length/2 of
               # thumb proximal phalange
               # scale 1/2 unit sphere to thumbProxPhal dims -->
          <Transform DEF='Rhand_thumbProxPhalXform' translation='18.0 0.0 0.0'
                                                    scale='40.0 22.25 22.25'>
           <Shape DEF='Rhand_thumbProxPhalShape'>
            <Sphere DEF='Rhand_thumbProxPhalSphere'/>
            <Appearance USE='SkinColor'/>
           </Shape> <!-- end 'Rhand_thumbProxPhalShape' -->
          </Transform> <!-- End 'Rhand_thumbProxPhalXform' -->
          <!-- # translate in X length of thumb proximal phalange -->
          <Transform DEF='Rhand_thumbJoint3' translation='35.0 0.0 0.0'
                                            rotation='0.0 1.0 0.0 0.0'>
           <!-- # translate in X/2 length thumb prox. phalange
                # scale 1/2 unit sphere to thumbMDistPhal dims -->
           <Transform DEF='Rhand_thumbDistPhalXform' translation='15.4 0.0 0.0'
                                                     scale='38.1 28.375 22.25'>
            <Shape DEF='Rhand_thumbDistPhalShape'>
             <Sphere DEF='Rhand_thumbDistPhalSphere'/>
             <Appearance USE='SkinColor'/>
            </Shape> <!-- end 'Rhand_thumbDistPhalShape' -->
           </Transform> <!-- End 'Rhand_thumbDistPhalXform' -->
          </Transform> <!-- End 'Rhand_thumbJoint3' -->
         </Transform> <!-- End 'Rhand_thumbFar' -->
        </Transform> <!-- End 'Rhand_thumbNear' -->
       </Transform> <!-- End 'Rhand_thumbIndex' -->
      </Transform> <!-- End 'Rhand_thumbPalm' -->
      <!-- # translate index metacarpal to left side of wrist (+Z)
           # a fixed rotation on the index metacarpal about Y
           # = Atan((0.126 * HB)/(0.374 * HL)) = atan(12.8/75.997)=0.1669 rad
        -->
      <Transform DEF='Rhand_index1' translation='10.0 0.0 20.1'
                                    rotation='0.0 1.0 0.0 -0.1669'>
       <!-- # translate in X 1/2 * length of index metacarpal
            # = Sqrt((0.374 * HL)^2 + (0.126 * HB)^2)
            # scale 1/2 unit sphere to indexMcarpal dimensions -->
       <Transform DEF='Rhand_indexMcarpalXform' translation='37.5 0.0 0.0'
                                                scale='75.0 22.25 22.25'>
        <Shape DEF='Rhand_indexMcarpalShape'>
         <Sphere DEF='Rhand_indexMcarpalSphere'/>
         <Appearance USE='SkinColor'/>
        </Shape> <!-- end 'Rhand_indexMcarpalShape' -->
       </Transform> <!-- End 'Rhand_indexMcarpalXform' -->
       <!-- # translate in X the length of index metacarpal
            # = Sqrt((0.374 * HL)^2 + (0.126 * HB)^2) -->
       <Transform DEF='Rhand_indexMiddle' translation='75.0 0.0 0.0'
                                          rotation='0.0 1.0 0.0 0.0'>
        <Transform DEF='Rhand_indexNear' rotation='0.0 0.0 1.0 0.0'>
         <!-- # translate in X 1/2 *
              # length of index proximal phalange
              # scale 1/2 unit sphere to indexProxim dimensions -->
         <Transform DEF='Rhand_indexProximXform' translation='22.0 0.0 0.0'
                                                 scale='50.0 22.25 22.25'>
          <Shape DEF='Rhand_indexProximShape'>
           <Sphere DEF='Rhand_indexProximSphere'/>
           <Appearance USE='SkinColor'/>
          </Shape> <!-- end 'Rhand_indexProximShape' -->
         </Transform> <!-- End 'Rhand_indexProximXform' -->
         <!-- # translate in X
              # length of index Proximal phalange -->
         <Transform DEF='Rhand_indexMedial' translation='44.0 0.0 0.0'
                                            rotation='0.0 0.0 1.0 0.0'>
          <!-- # translate in X length/2
               # of index proximal phalange
               # scale 1/2 unit sphere to indexMedPhal dims -->
          <Transform DEF='Rhand_indexJoint2' translation='12.5 0.0 0.0'
                                             scale='30.0 20.0 20.0'>
           <Shape DEF='Rhand_indexMedPhalShape'>
            <Sphere DEF='Rhand_indexMedPhalSphere'/>
            <Appearance USE='SkinColor'/>
           </Shape> <!-- end 'Rhand_indexMedPhalShape' -->
          </Transform> <!-- End 'Rhand_indexJoint2' -->
          <!-- # translate in X length of index medial phalange -->
          <Transform DEF='Rhand_indexJoint3' translation='25.0 0.0 0.0'
                                             rotation='0.0 0.0 1.0 0.0'>
           <!-- # translate in X length/2 index dist. phalange
                # scale 1/2 unit sphere to indexDistPhal dims -->
           <Transform DEF='Rhand_indexDistPhalXform' translation='12.5 0.0 0.0'
                                                     scale='25.0 17.5 17.5'>
            <Shape DEF='Rhand_indexDistPhalShape'>
             <Sphere DEF='Rhand_indexDistPhalSphere'/>
             <Appearance USE='SkinColor'/>
            </Shape> <!-- end 'Rhand_indexDistPhalShape' -->
           </Transform> <!-- End 'Rhand_indexDistPhalXform' -->
          </Transform> <!-- End 'Rhand_indexJoint3' -->
         </Transform> <!-- End 'Rhand_indexMedial' -->
        </Transform> <!-- End 'Rhand_indexNear' -->
       </Transform> <!-- End 'Rhand_indexMiddle' -->
      </Transform> <!-- End 'Rhand_index1' -->
      <!-- # translate middle metacarpal to middle of wrist (+Z)
           # a fixed rotation on the middle metacarpal about Y -->
      <Transform DEF='Rhand_middle1' translation='10.0 0.0 5.0'
                                     rotation='0.0 1.0 0.0 0.0'>
       <!-- # translate in X 1/2 * length of middle metacarpal
            # = 0.373 * HL
            # scale 1/2 unit sphere to middleMcarpal dimensions -->
       <Transform DEF='Rhand_middleMcarpalXform' translation='37.80 0.0 0.0'
                                                 scale='75.79 22.25 22.25'>
        <Shape DEF='Rhand_middleMcarpalShape'>
         <Sphere DEF='Rhand_middleMcarpalSphere'/>
         <Appearance USE='SkinColor'/>
        </Shape> <!-- end 'Rhand_middleMcarpalShape' -->
       </Transform> <!-- End 'Rhand_middleMcarpalXform' -->
       <!-- # translate in X the length of middle metacarpal
            # = 0.373 * HL -->
       <Transform DEF='Rhand_middleRing' translation='75.79 0.0 0.0'
                                           rotation='0.0 1.0 0.0 0.0'>
        <Transform DEF='Rhand_middleNear' rotation='0.0 0.0 1.0 0.0'>
         <!-- # translate in X 1/2 *
              # length of middle proximal phalange
              # scale 1/2 unit sphere to middleProxim dimensions -->
         <Transform DEF='Rhand_middleProxPhalXform' translation='23.5 0.0 0.0'
                                                    scale='55.0 22.25 22.25'>
          <Shape DEF='Rhand_middleProximShape'>
           <Sphere DEF='Rhand_middleProximSphere'/>
           <Appearance USE='SkinColor'/>
          </Shape> <!-- end 'Rhand_middleProximShape' -->
         </Transform> <!-- End 'Rhand_middleProximXform' -->
         <!-- # translate in X
              # length of middle Proximal Phalange -->
         <Transform DEF='Rhand_middleMedial' translation='47.0 0.0 0.0'
                                             rotation='0.0 0.0 1.0 0.0'>
          <!-- # translate in X length/2
               # of middle proximal phalange
               # scale 1/2 unit sphere to middleMedPhal dimensions -->
          <Transform DEF='Rhand_middleMedPhalXform' translation='16.0 0.0 0.0'
                                                    scale='40.0 20.0 20.0'>
           <Shape DEF='Rhand_middleMedPhalShape'>
            <Sphere DEF='Rhand_middleMedPhalSphere'/>
            <Appearance USE='SkinColor'/>
           </Shape> <!-- end 'Rhand_middleMedPhalShape' -->
          </Transform> <!-- End 'Rhand_middleMedPhalXform' -->
          <!-- # translate in X length of middle medial phalange -->
          <Transform DEF='Rhand_middleJoint3' translation='32.0 0.0 0.0'
                                              rotation='0.0 0.0 1.0 0.0'>
           <!-- # translate in X length/2 middle distal phalange
                # scale 1/2 unit sphere to middleDistPhal dimensions -->
           <Transform DEF='Rhand_middleDistPhalXform' translation='12.5 0.0 0.0'
                                                      scale='25.0 17.5 17.5'>
            <Shape DEF='Rhand_middleDistPhalShape'>
             <Sphere DEF='Rhand_middleDistPhalSphere'/>
             <Appearance USE='SkinColor'/>
            </Shape> <!-- end 'Rhand_middleDistPhalShape' -->
           </Transform> <!-- End 'Rhand_middleDistPhalXform' -->
          </Transform> <!-- End 'Rhand_middleJoint3' -->
         </Transform> <!-- End 'middleMedial' -->
        </Transform> <!-- End 'Rhand_middleNear' -->
       </Transform> <!-- End 'Rhand_middleRing' -->
      </Transform> <!-- End 'Rhand_middle1' -->
      <!-- # translate ring metacarpal to right side of wrist (-Z)
           # a fixed rotation on the ring metacarpal about Y
           # = Atan((0.077*HB)/(0.336 * HL))=atan(7.82/68.275)=0.114 rad -->
      <Transform DEF='Rhand_ring1' translation='10.0 0.0 -5.0'
                                  rotation='0.0 1.0 0.0 0.114'>
       <!-- # translate in X 1/2 * length of ring metacarpal
            # = Sqrt((0.336 * HL)^2 + (0.077*HB)^2)
            # scale 1/2 unit sphere to ringMcarpal dimensions -->
       <Transform DEF='Rhand_ringMcarpalXform' translation='33.50 0.0 0.0'
                                               scale='67.0 22.25 22.25'>
        <Shape DEF='Rhand_ringMcarpalShape'>
         <Sphere DEF='Rhand_ringMcarpalSphere'/>
         <Appearance USE='SkinColor'/>
        </Shape> <!-- end 'Rhand_ringMcarpalShape' -->
       </Transform> <!-- End 'Rhand_ringMcarpalXform' -->
       <!-- # translate in X the length of ring metacarpal
            # = 0.373 * HL -->
       <Transform DEF='Rhand_ringMiddle' translation='67.0 0.0 0.0'
                                         rotation='0.0 1.0 0.0 0.0'>
        <Transform DEF='Rhand_ringNear' rotation='0.0 0.0 1.0 0.0'>
         <!-- # translate in X 1/2 *
              # length of ring proximal phalange
              # scale 1/2 unit sphere to ringProxim dimensions -->
         <Transform DEF='Rhand_ringProximXform' translation='23.0 0.0 0.0'
                                                scale='55.0 22.25 22.25'>
          <Shape DEF='Rhand_ringProximShape'>
           <Sphere DEF='Rhand_ringProximSphere'/>
           <Appearance USE='SkinColor'/>
          </Shape> <!-- end 'Rhand_ringProximShape' -->
         </Transform> <!-- End 'Rhand_ringProximXform' -->
         <!-- # translate in X
              # length of ring Proximal phalange -->
         <Transform DEF='Rhand_ringMedial' translation='46.0 0.0 0.0'
                                           rotation='0.0 0.0 1.0 0.0'>
          <!-- # translate in X length/2
               # of ring proximal phalange
               # scale 1/2 unit sphere to ringMedPhal dimensions -->
          <Transform DEF='Rhand_ringMedPhalXForm' translation='15.0 0.0 0.0'
                                                  scale='40.0 20.0 20.0'>
           <Shape DEF='Rhand_ringMedPhalShape'>
            <Sphere DEF='Rhand_ringMedPhalSphere'/>
            <Appearance USE='SkinColor'/>
           </Shape> <!-- end 'Rhand_ringMedPhalShape' -->
          </Transform> <!-- End 'Rhand_ringMedPhalXForm' -->
          <!-- # translate in X length of ring medial phalange -->
          <Transform DEF='Rhand_ringJoint3' translation='30.0 0.0 0.0'
                                            rotation='0.0 0.0 1.0 0.0'>
           <!-- # translate X length/2 of ring distal phalange
                # scale 1/2 unit sphere to ringDistPhal dims -->
           <Transform DEF='Rhand_ringDistPhalXform' translation='12.5 0.0 0.0'
                                                    scale='25.0 17.5 17.5'>
            <Shape DEF='Rhand_ringDistPhalShape'>
             <Sphere DEF='Rhand_ringDistPhalSphere'/>
             <Appearance USE='SkinColor'/>
            </Shape> <!-- end 'Rhand_ringDistPhalShape' -->
           </Transform> <!-- End 'Rhand_ringDistPhalXform' -->
          </Transform> <!-- End 'Rhand_ringJoint3' -->
         </Transform> <!-- End 'Rhand_ringMedial' -->
        </Transform> <!-- End 'Rhand_ringNear' -->
       </Transform> <!-- End 'Rhand_ringMiddle' -->
      </Transform> <!-- End 'Rhand_ring1' -->
      <!-- # translate little metacarpal to right side of wrist (-Z)
           # a fixed rotation on the little metacarpal about Y
           # = Atan((0.179 * HB)/(0.295 * HL))=atan(18.19/59.944)=0.295 rad -->
      <Transform DEF='Rhand_little1' translation='15.0 0.0 -15.0'
                                     rotation='0.0 1.0 0.0 0.295'>
       <!-- # translate in X 1/2 * length of little metacarpal
            # = Sqrt((0.295*HL)^2+(0.179*HB)^2)=Sqrt(3593.23+330.75)=62.64
            # from anthropometry, we get length of little metacarpal = 57mm
            # scale 1/2 unit sphere to littleMcarpal dimensions -->
       <Transform DEF='Rhand_littleMcarpalXform' translation='28.5 0.0 0.0'
                                                 scale='57.0 22.25 22.25'>
        <Shape DEF='Rhand_littleMcarpalShape'>
         <Sphere DEF='Rhand_littleMcarpalShpere'/>
         <Appearance USE='SkinColor'/>
        </Shape> <!-- end 'Rhand_littleMcarpalShape' -->
       </Transform> <!-- End 'Rhand_littleMcarpalXform' -->
       <!-- # translate in X the length of little metacarpal
            # = Sqrt((0.295*HL)^2+(0.179*HB)^2)=Sqrt(3593.23+330.75)=62.64 -->
       <Transform DEF='Rhand_littleRing' translation='57.0 0.0 0.0'
                                         rotation='0.0 1.0 0.0 0.0'>
        <Transform DEF='Rhand_littleNear' rotation='0.0 0.0 1.0 0.0'>
         <!-- # translate in X 1/2 *
              # length of little proximal phalange
               # from anthropometry, we get length = 36mm
              # scale 1/2 unit sphere to littleProxim dimensions -->
         <Transform DEF='Rhand_littleProxPhalXform' translation='18.0 0.0 0.0'
                                                    scale='45.0 12.25 12.25'>
          <Shape DEF='Rhand_littleProxPhalShape'>
           <Sphere DEF='Rhand_littleProxPhalSphere'/>
           <Appearance USE='SkinColor'/>
          </Shape> <!-- end 'Rhand_littleProxPhalShape' -->
         </Transform> <!-- End 'Rhand_littleProxPhalXform' -->
         <!-- # translate in X
              # length of little Proximal phalange -->
         <Transform DEF='Rhand_littleMedial' translation='36.0 0.0 0.0'
                                             rotation='0.0 0.0 1.0 0.0'>
          <!-- # translate in X length/2
               # of little proximal phalange
               # scale 1/2 unit sphere to littleMedPhal dimensions -->
          <Transform DEF='Rhand_littleMedPhalXform' translation='11.0 0.0 0.0'
                                                    scale='30.0 12.25 12.25'>
           <Shape DEF='Rhand_littleMedPhalShape'>
            <Sphere DEF='Rhand_littleMedPhalSphere'/>
            <Appearance USE='SkinColor'/>
           </Shape> <!-- end 'Rhand_littleMedPhalShape' -->
          </Transform> <!-- End 'Rhand_littleMedPhalXform' -->
          <!-- # translate in X length of little medial phalange -->
          <Transform DEF='Rhand_littleJoint3' translation='22.0 0.0 0.0'
                                              rotation='0.0 0.0 1.0 0.0'>
           <!-- # translate in X length/2 little medial phalange
                # scale 1/2 unit sphere to littleDistPhal dimensions -->
           <Transform DEF='Rhand_littleDistPhalXform' translation='10.0 0.0 0.0'
                                                      scale='20.0 12.25 12.375'>
            <Shape DEF='Rhand_littleDistPhalShape'>
             <Sphere DEF='Rhand_littleDistPhalSphere'/>
             <Appearance USE='SkinColor'/>
            </Shape> <!-- end 'Rhand_littleDistPhalShape' -->
           </Transform> <!-- End 'Rhand_littleDistPhalXform' -->
          </Transform> <!-- End 'Rhand_littleJoint3' -->
         </Transform> <!-- End 'Rhand_littleMedial' -->
        </Transform> <!-- End 'Rhand_littleNear' -->
       </Transform> <!-- End 'Rhand_littleRing' -->
      </Transform> <!-- End 'Rhand_little1' -->
     </Transform> <!-- End 'Rwrist_ROLL' -->
    </Transform> <!-- End 'Rwrist_PITCH' -->
   </Transform> <!-- End 'Relbow' -->
  </Group>
 </Scene>
</X3D> 
