1#lang typed/racket/base 2 3(require (only-in typed/mred/mred Snip% Frame% Bitmap%) 4 plot/utils) 5 6(provide (all-defined-out)) 7 8(define-type Plot-Snip% (Class #:implements Snip% #:implements Plot-Metrics<%>)) 9 10(define-type Make-2D-Plot-Snip 11 (-> (Instance Bitmap%) 12 Plot-Parameters 13 (-> Boolean Rect Positive-Integer Positive-Integer 14 (Values (Instance Bitmap%) (U #f (Instance 2D-Plot-Area%)))) 15 Rect 16 (U #f (Instance 2D-Plot-Area%)) 17 Positive-Integer 18 Positive-Integer 19 (Instance Plot-Snip%))) 20 21(define-type Make-3D-Plot-Snip 22 (-> (Instance Bitmap%) 23 Plot-Parameters 24 (-> Boolean Real Real Positive-Integer Positive-Integer 25 (Values (Instance Bitmap%) (U #f (Instance 3D-Plot-Area%)))) 26 Real 27 Real 28 (U #f (Instance 3D-Plot-Area%)) 29 Positive-Integer 30 Positive-Integer 31 (Instance Plot-Snip%))) 32 33(define-type Make-Snip-Frame 34 (-> (-> Positive-Integer Positive-Integer (Instance Snip%)) 35 Positive-Real 36 Positive-Real 37 String 38 (Instance Frame%))) 39