ATOMIC AI GEOMETRIC SHAPES SPEC RULE: This document defines the complete and binding set of geometric drawing functions in the Atomic language. RULE: Only the functions listed in this document exist. RULE: No additional geometric drawing functions or arguments exist. RULE: All rules defined here are mandatory. GENERAL RULES RULE: Geometric drawing functions draw directly to the window. RULE: Geometric drawing functions do not return values. RULE: Drawing a shape does not create objects or elements. RULE: Shapes have no identity and no state. RULE: All geometric drawing is purely graphical. COMMON BEHAVIOR RULE: All coordinates are expressed in window pixels. RULE: The window origin (0,0) is the top-left corner. RULE: X increases to the right. RULE: Y increases downward. RULE: Negative coordinates are allowed. RULE: Arguments may be specified in any order. RULE: Arguments use default values when omitted. RULE: Argument values may be numbers, constants, variables, or expressions. FORBIDDEN: function calls inside arguments MULTICOLORED SHAPES RULE: The following multicolored geometric drawing functions exist. disegna cerchio multicolore --> (X:) (Y:) (RAGGIO:) (COLORE 1:) (COLORE 2:) (TRASPARENZA:) (SOLO CONTORNO:) disegna rettangolo multicolore --> (X:) (Y:) (BASE:) (ALTEZZA:) (COLORE 1:) (COLORE 2:) (COLORE 3:) (COLORE 4:) (TRASPARENZA:) (SOLO CONTORNO:) disegna ellisse multicolore --> (X 1:) (Y 1:) (X 2:) (Y 2:) (COLORE 1:) (COLORE 2:) (TRASPARENZA:) (SOLO CONTORNO:) disegna poligono regolare multicolore --> (X:) (Y:) (NUMERO LATI:) (RAGGIO:) (ROTAZIONE:) (COLORE 1:) (COLORE 2:) (TRASPARENZA:) (SOLO CONTORNO:) disegna linea multicolore --> (X 1:) (Y 1:) (X 2:) (Y 2:) (SPESSORE:) (COLORE 1:) (COLORE 2:) (TRASPARENZA:) disegna triangolo multicolore --> (X 1:) (Y 1:) (X 2:) (Y 2:) (X 3:) (Y 3:) (COLORE 1:) (COLORE 2:) (COLORE 3:) (TRASPARENZA:) (SOLO CONTORNO:) disegna settore circolare multicolore --> (X:) (Y:) (ANGOLO:) (RAGGIO:) (ROTAZIONE:) (COLORE 1:) (COLORE 2:) (TRASPARENZA:) (SOLO CONTORNO:) RULE: Multicolored shapes interpolate colors according to internal implementation. RULE: Color interpolation details are not exposed to user code. SINGLE-COLOR SHAPES RULE: The following single-color geometric drawing functions exist. disegna cerchio --> (X:) (Y:) (RAGGIO:) (COLORE:) (TRASPARENZA:) (SOLO CONTORNO:) disegna rettangolo --> (X:) (Y:) (BASE:) (ALTEZZA:) (COLORE:) (TRASPARENZA:) (SOLO CONTORNO:) disegna ellisse --> (X 1:) (Y 1:) (X 2:) (Y 2:) (COLORE:) (TRASPARENZA:) (SOLO CONTORNO:) disegna punto --> (X:) (Y:) (COLORE:) (TRASPARENZA:) disegna poligono regolare --> (X:) (Y:) (NUMERO LATI:) (RAGGIO:) (ROTAZIONE:) (COLORE:) (TRASPARENZA:) (SOLO CONTORNO:) disegna linea --> (X 1:) (Y 1:) (X 2:) (Y 2:) (SPESSORE:) (COLORE:) (TRASPARENZA:) disegna triangolo --> (X 1:) (Y 1:) (X 2:) (Y 2:) (X 3:) (Y 3:) (COLORE:) (TRASPARENZA:) (SOLO CONTORNO:) disegna settore circolare --> (X:) (Y:) (ANGOLO:) (RAGGIO:) (ROTAZIONE:) (COLORE:) (TRASPARENZA:) (SOLO CONTORNO:) disegna arco --> (X:) (Y:) (ANGOLO:) (RAGGIO:) (ROTAZIONE:) (COLORE:) (SPESSORE:) (TRASPARENZA:) (SOLO CONTORNO:) UTILITY FUNCTIONS FOR DRAWING disegna righelli --> (VISIBILE:) RULE: This function draws interactive rulers. disegna goniometro --> (VISIBILE:) RULE: This function draws an interactive protractor. FORMAL CLOSURE RULE: The geometric drawing system of Atomic is limited to the functions listed in this document. RULE: Any geometric drawing function or argument not listed here: does not exist must not be inferred must not be generated