
(/VERSIONCHECK 2) 

(DEFUN |DRAWPT;draw;LLTdv;1| (|lp| |l| $)
  (SPADCALL (SPADCALL (LIST |lp|) (QREFELT $ 8)) |l| (QREFELT $ 11))) 

(DEFUN |DRAWPT;draw;LTdv;2| (|lp| $)
  (SPADCALL |lp| NIL (QREFELT $ 13))) 

(DEFUN |DRAWPT;draw;2LLTdv;3| (|lx| |ly| |l| $)
  (PROG (#0=#:G1824 |y| #1=#:G1826 |x| #2=#:G1825)
    (RETURN
      (SEQ (SPADCALL
               (PROGN
                 (LETT #0# NIL . #3=(|DRAWPT;draw;2LLTdv;3|))
                 (SEQ (LETT |y| NIL . #3#) (LETT #1# |ly| . #3#)
                      (LETT |x| NIL . #3#) (LETT #2# |lx| . #3#) G190
                      (COND
                        ((OR (ATOM #2#)
                             (PROGN (LETT |x| (CAR #2#) . #3#) NIL)
                             (ATOM #1#)
                             (PROGN (LETT |y| (CAR #1#) . #3#) NIL))
                         (GO G191)))
                      (SEQ (EXIT (LETT #0#
                                       (CONS
                                        (SPADCALL (LIST |x| |y|)
                                         (QREFELT $ 17))
                                        #0#) . #3#)))
                      (LETT #2#
                            (PROG1 (CDR #2#)
                              (LETT #1# (CDR #1#) . #3#)) . #3#)
                      (GO G190) G191 (EXIT (NREVERSE0 #0#))))
               |l| (QREFELT $ 13)))))) 

(DEFUN |DRAWPT;draw;2LTdv;4| (|lx| |ly| $)
  (SPADCALL |lx| |ly| NIL (QREFELT $ 18))) 

(DEFUN |DRAWPT;draw;3LTdv;5| (|x| |y| |z| $)
  (SPADCALL |x| |y| |z| NIL (QREFELT $ 21))) 

(DEFUN |DRAWPT;draw;3LLTdv;6| (|x| |y| |z| |l| $)
  (PROG (|m| |n| |zLen| |j| |i| |zval| |row| |points|)
    (RETURN
      (SEQ (LETT |m| (LENGTH |x|) . #0=(|DRAWPT;draw;3LLTdv;6|))
           (EXIT (COND
                   ((ZEROP |m|) (|error| "No X values"))
                   ('T
                    (SEQ (LETT |n| (LENGTH |y|) . #0#)
                         (EXIT (COND
                                 ((ZEROP |n|) (|error| "No Y values"))
                                 ('T
                                  (SEQ (LETT |zLen| (LENGTH |z|) . #0#)
                                       (EXIT
                                        (COND
                                          ((SPADCALL |zLen| (* |m| |n|)
                                            (QREFELT $ 25))
                                           (COND
                                             ((< (* |m| |n|) |zLen|)
                                              (|error|
                                               "Too many Z-values to fit grid"))
                                             ('T
                                              (|error|
                                               "Not enough Z-values to fit grid"))))
                                          ('T
                                           (SEQ
                                            (LETT |points| NIL . #0#)
                                            (SEQ (LETT |j| |n| . #0#)
                                             G190
                                             (COND
                                               ((< |j| 1) #1=(GO G191)))
                                             (SEQ
                                              (LETT |row| NIL . #0#)
                                              (SEQ (LETT |i| |m| . #0#)
                                               G190
                                               (COND ((< |i| 1) #1#))
                                               (SEQ
                                                (LETT |zval|
                                                 (+ (* (- |j| 1) |m|)
                                                  |i|) . #0#)
                                                (EXIT
                                                 (LETT |row|
                                                  (CONS
                                                   (SPADCALL
                                                    (LIST
                                                     (SPADCALL |x| |i|
                                                      (QREFELT $ 27))
                                                     (SPADCALL |y| |j|
                                                      (QREFELT $ 27))
                                                     (SPADCALL |z|
                                                      |zval|
                                                      (QREFELT $ 27))
                                                     (SPADCALL |z|
                                                      |zval|
                                                      (QREFELT $ 27)))
                                                    (QREFELT $ 17))
                                                   |row|) . #0#)))
                                               (LETT |i|
                                                (+ |i| -1) . #0#)
                                               #2=(GO G190) G191
                                               (EXIT NIL))
                                              (EXIT
                                               (LETT |points|
                                                (CONS |row| |points|) . #0#)))
                                             (LETT |j|
                                              (+ |j| -1) . #0#)
                                             #2# G191 (EXIT NIL))
                                            (EXIT
                                             (SPADCALL
                                              (SPADCALL |points|
                                               (QREFELT $ 29))
                                              |l| (QREFELT $ 30))))))))))))))))))) 

(DEFUN |TopLevelDrawFunctionsForPoints| ()
  (PROG ()
    (RETURN
      (PROG (#0=#:G1840)
        (RETURN
          (COND
            ((LETT #0#
                   (HGET |$ConstructorCache|
                         '|TopLevelDrawFunctionsForPoints|)
                   . #1=(|TopLevelDrawFunctionsForPoints|))
             (|CDRwithIncrement| (CDAR #0#)))
            ('T
             (UNWIND-PROTECT
               (PROG1 (CDDAR (HPUT |$ConstructorCache|
                                   '|TopLevelDrawFunctionsForPoints|
                                   (LIST
                                    (CONS NIL
                                     (CONS 1
                                      (|TopLevelDrawFunctionsForPoints;|))))))
                 (LETT #0# T . #1#))
               (COND
                 ((NOT #0#)
                  (HREM |$ConstructorCache|
                        '|TopLevelDrawFunctionsForPoints|))))))))))) 

(DEFUN |TopLevelDrawFunctionsForPoints;| ()
  (PROG (|dv$| $ |pv$|)
    (RETURN
      (PROGN
        (LETT |dv$| '(|TopLevelDrawFunctionsForPoints|)
              . #0=(|TopLevelDrawFunctionsForPoints|))
        (LETT $ (GETREFV 31) . #0#)
        (QSETREFV $ 0 |dv$|)
        (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
        (|haddProp| |$ConstructorCache|
            '|TopLevelDrawFunctionsForPoints| NIL (CONS 1 $))
        (|stuffDomainSlots| $)
        $)))) 

(MAKEPROP '|TopLevelDrawFunctionsForPoints| '|infovec|
    (LIST '#(NIL NIL NIL NIL NIL NIL (|List| 12) (|GraphImage|)
             (0 . |makeGraphImage|) (|List| (|DrawOption|))
             (|TwoDimensionalViewport|) (5 . |makeViewport2D|)
             (|List| 16) |DRAWPT;draw;LLTdv;1| |DRAWPT;draw;LTdv;2|
             (|List| 26) (|Point| 26) (11 . |point|)
             |DRAWPT;draw;2LLTdv;3| |DRAWPT;draw;2LTdv;4|
             (|ThreeDimensionalViewport|) |DRAWPT;draw;3LLTdv;6|
             |DRAWPT;draw;3LTdv;5| (|Boolean|) (|Integer|) (16 . ~=)
             (|DoubleFloat|) (22 . |elt|) (|ThreeSpace| 26)
             (28 . |mesh|) (33 . |makeViewport3D|))
          '#(|draw| 39) 'NIL
          (CONS (|makeByteWordVec2| 1 'NIL)
                (CONS '#()
                      (CONS '#()
                            (|makeByteWordVec2| 30
                                '(1 7 0 6 8 2 10 0 7 9 11 1 16 0 15 17
                                  2 24 23 0 0 25 2 15 26 0 24 27 1 28 0
                                  6 29 2 20 0 28 9 30 2 0 10 15 15 19 1
                                  0 10 12 14 3 0 10 15 15 9 18 2 0 10
                                  12 9 13 4 0 20 15 15 15 9 21 3 0 20
                                  15 15 15 22)))))
          '|lookupComplete|)) 

(MAKEPROP '|TopLevelDrawFunctionsForPoints| 'NILADIC T) 
