(file:new)
; Create a spline grid data type.

(define grid (splgrid))
(define points1 (list
                  (position	0	0	0)
                  (position	0	1	0)
                  (position	0	2	0)
                  (position	0	3	0)
                  (position	0	4	0)
                  (position	0	5	0)
                  (position	1	0	0)
                  (position	1	1	0.1)
                  (position	1	2	0.3)
                  (position	1	3	0.3)
                  (position	1	4	0.1)
                  (position	1	5	0)
                  (position	2	0	0)
                  (position	2	1	0.3)
                  (position	2	2	1)
                  (position	2	3	1)
                  (position	2	4	0.3)
                  (position	2	5	0)
                  (position	3	0	0)
                  (position	3	1	0.3)
                  (position	3	2	1)
                  (position	3	3	1)
                  (position	3	4	0.3)
                  (position	3	5	0)
                  (position	4	0	0)
                  (position	4	1	0.1)
                  (position	4	2	0.3)
                  (position	4	3	0.3)
                  (position	4	4	0.1)
                  (position	4	5	0)
                  (position	5	0	0)
                  (position	5	1	0)
                  (position	5	2	0)
                  (position	5	3	0)
                  (position	5	4	0)
                  (position	5	5	0)
                   ))
(splgrid:set-point-list grid points1 6 6)

; Set the start and end tangent vector lists for u.
   (define vectors1
       (list (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0) 
             (gvector 0 1 0)))
   (splgrid:set-u-tanvec-list grid vectors1 #t)

   (define vectors1
       (list (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0)
             (gvector 0 1 0)))
   (splgrid:set-u-tanvec-list grid vectors1 #f)
   
; Set the start and end tangent vector lists for v.
   (define vectors2
       (list (gvector 1 0 0)
             (gvector 1 0 0)
             (gvector 1 0 0)
             (gvector 1 0 0)
             (gvector 1 0 0)
             (gvector 1 0 0)))
   (splgrid:set-v-tanvec-list grid vectors2 #t)

   (define vectors2
       (list (gvector 1 0 0)
             (gvector 1 0 0) 
             (gvector 1 0 0)
             (gvector 1 0 0)
             (gvector 1 0 0)
             (gvector 1 0 0)))
   (splgrid:set-v-tanvec-list grid vectors2 #f)

(define gridsolid (face:spline-grid grid #t))
(property:apply-name (sweep:law gridsolid (gvector 0 0 1)) "My Object")

(view:set-view-mode 2)
(view:profiles "iso1")
(view:zoom-all)
