home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / src / exampleCode / inventor / DirectManipRevoSurf / test.iv < prev   
Encoding:
Text File  |  1994-08-02  |  2.5 KB  |  97 lines

  1. #Inventor V2.0 ascii
  2. Separator {
  3.  
  4.     # Interface for the rotation axis
  5.     Separator {
  6.     BaseColor { rgb 1 0 0 }
  7.  
  8.     DEF AXIS_PT1_DRAGGER Translate2Dragger {
  9.         translation 0 -2 0
  10.         translator DEF DRAG_BALL Separator {
  11.         Sphere { radius .2 }
  12.         }
  13.         translatorActive DEF DRAG_YELLOW_BALL Separator {
  14.         BaseColor { rgb 1 1 0 }
  15.         Sphere { radius .2 }
  16.         }
  17.     }
  18.     DEF AXIS_PT2_DRAGGER Translate2Dragger {
  19.         translation 0 8 0
  20.         translator USE DRAG_BALL
  21.         translatorActive USE DRAG_YELLOW_BALL
  22.     }
  23.     Coordinate3 {
  24.         point = Concatenate { type "MFVec3f" 
  25.                       input0 = USE AXIS_PT1_DRAGGER . translation
  26.                       input1 = USE AXIS_PT2_DRAGGER . translation
  27.             } . output
  28.     }
  29.     LineSet {}
  30.     }
  31.  
  32.     # Interface for the profile curve
  33.     Separator {
  34.     BaseColor { rgb 1 0 0 }
  35.     DEF PROF_PT1_DRAGGER Translate2Dragger {
  36.         translation 1 .2 0
  37.         translator DEF DRAG_CUBE Separator {
  38.         Cube { width .2 height .2 depth .2 }
  39.         }
  40.         translatorActive DEF DRAG_YELLOW_CUBE Separator {
  41.         BaseColor { rgb 1 1 0 }
  42.         Cube { width .2 height .2 depth .2 }
  43.         }
  44.     }
  45.     DEF PROF_PT2_DRAGGER Translate2Dragger {
  46.         translation    1.1 1.6 0
  47.         translator USE DRAG_CUBE
  48.         translatorActive USE DRAG_YELLOW_CUBE
  49.     }
  50.     DEF PROF_PT3_DRAGGER Translate2Dragger {
  51.         translation 3.2 2.2 0 
  52.         translator USE DRAG_CUBE
  53.         translatorActive USE DRAG_YELLOW_CUBE
  54.     }
  55.     DEF PROF_PT4_DRAGGER Translate2Dragger {
  56.         translation 4 4.75 0 
  57.         translator USE DRAG_CUBE
  58.         translatorActive USE DRAG_YELLOW_CUBE
  59.     }
  60.     DEF INPUT_COORDS Coordinate3 {
  61.         point = Concatenate { type "MFVec3f" 
  62.                       input0 = USE PROF_PT1_DRAGGER . translation
  63.                       input1 = USE PROF_PT2_DRAGGER . translation
  64.                       input2 = USE PROF_PT3_DRAGGER . translation
  65.                       input3 = USE PROF_PT4_DRAGGER . translation
  66.             } . output
  67.     }
  68.     DrawStyle { lineWidth 3 }
  69.     LineSet {}
  70.     }
  71.  
  72.     Coordinate3 {
  73.     point = DEF REVOLVER RevoSurfEngine {
  74.             axisPt1 = USE AXIS_PT1_DRAGGER . translation
  75.             axisPt2 = USE AXIS_PT2_DRAGGER . translation
  76.             profileCoords = USE INPUT_COORDS . point
  77.         } . gridOfCoords
  78.     }
  79.     ShapeHints {
  80.     vertexOrdering COUNTERCLOCKWISE
  81.     }
  82. #    IndexedFaceSet {
  83. #    coordIndex = USE REVOLVER . faceIndices 
  84. #    }
  85. #   QuadMesh {
  86. #    verticesPerColumn 4
  87. #    verticesPerRow  22
  88. #    }
  89.     NurbsSurface {
  90.     numUControlPoints 22
  91.     numVControlPoints 4
  92.     uKnotVector [ 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
  93.               11, 12, 13, 14, 15, 16, 17, 18, 19, 19, 19, 19 ]
  94.     vKnotVector [ 0, 0, 0, 0, 1, 1, 1, 1 ]
  95.     }
  96. }
  97.