;;-*-Lisp-*- (in-package goal) ;; definition of type curve (deftype curve (structure) ((cverts (inline-array vector)) (num-cverts int32) (knots (pointer float)) (num-knots int32) (length float) ) ) ;; definition for method 3 of type curve (defmethod inspect ((this curve)) (format #t "[~8x] ~A~%" this 'curve) (format #t "~Tcverts: #x~X~%" (-> this cverts)) (format #t "~Tnum-cverts: ~D~%" (-> this num-cverts)) (format #t "~Tknots: #x~X~%" (-> this knots)) (format #t "~Tnum-knots: ~D~%" (-> this num-knots)) (format #t "~Tlength: ~f~%" (-> this length)) this ) ;; definition of type border-plane (deftype border-plane (basic) ((name symbol) (action basic) (slot int8) (trans vector :inline) (normal vector :inline) ) (:methods (debug-draw! (_type_) none) (point-past-plane? (_type_ vector) symbol) ) ) ;; definition for method 3 of type border-plane (defmethod inspect ((this border-plane)) (format #t "[~8x] ~A~%" this (-> this type)) (format #t "~Tname: ~A~%" (-> this name)) (format #t "~Taction: ~A~%" (-> this action)) (format #t "~Tslot: ~D~%" (-> this slot)) (format #t "~Ttrans: ~`vector`P~%" (-> this trans)) (format #t "~Tnormal: ~`vector`P~%" (-> this normal)) this ) ;; failed to figure out what this is: 0