Ejemplo n.º 1
0
    def on_draw(self):
        """ Render the screen. """

        arcadeplus.start_render()

        # Draw the y labels
        i = 0
        for y in range(START, END, STEP):
            arcadeplus.draw_point(0, y, arcadeplus.color.BLUE, 5)
            arcadeplus.draw_text(f"{y}",
                                 5,
                                 y,
                                 arcadeplus.color.BLACK,
                                 12,
                                 anchor_x="left",
                                 anchor_y="bottom")
            i += 1

        # Draw the x labels.
        i = 1
        for x in range(START + STEP, END, STEP):
            arcadeplus.draw_point(x, 0, arcadeplus.color.BLUE, 5)
            arcadeplus.draw_text(f"{x}",
                                 x,
                                 5,
                                 arcadeplus.color.BLACK,
                                 12,
                                 anchor_x="left",
                                 anchor_y="bottom")
            i += 1
Ejemplo n.º 2
0
def on_draw():
    arcade.start_render()
    # Draw in here...
    # arcade.draw_circle_filled(mouse_x, mouse_y, 25, ball_color)
    arcade.draw_line(0, HEIGHT / 2, WIDTH, HEIGHT / 2, arcade.color.BLACK)
    arcade.draw_line(WIDTH / 2, HEIGHT, WIDTH / 2, 0, arcade.color.BLACK)
    for i in range(WIDTH * 2):
        arcade.draw_point(i, 0.001 * (i - WIDTH / 2)**2, arcade.color.BLUE, 10)
Ejemplo n.º 3
0
    def on_draw(self):
        """
        Render the screen.
        """

        # This command should happen before we start drawing. It will clear
        # the screen to the background color, and erase what we drew last frame.
        arcadeplus.start_render()

        # start_x and start_y make the start point for the text.
        # We draw a dot to make it easy too see
        # the text in relation to its start x and y.
        start_x = 50
        start_y = 450
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Simple line of text in 12 point", start_x,
                             start_y, arcadeplus.color.BLACK, 12)
def graph():
    middle_x = WIDTH * 3/4 + 70
    middle_y = HEIGHT * 3/4 - 100
    length = 500
    width = 500
    arcade.draw_rectangle_filled(middle_x, middle_y, length, width, arcade.color.WHITE)
    arcade.draw_line(middle_x - width/2, middle_y - length/2 + 20, middle_x + width/2, middle_y - length/2 + 20, arcade.color.BLACK)
    arcade.draw_line(middle_x - width/2 + 20, middle_y - length/2, middle_x - width/2 + 20, middle_y + length/2, arcade.color.BLACK)
    for point in graph_data:
        arcade.draw_point(point[4] * 3 + middle_x - width/2 + 20, point[0] * 3 + middle_y - length/2 + 20, arcade.color.BLACK, 5)
        arcade.draw_point(point[4] * 3 + middle_x - width/2 + 20, point[1] * 3 + middle_y - length/2 + 20, arcade.color.RED, 5)
        arcade.draw_point(point[4] * 3 + middle_x - width/2 + 20, point[2] * 3 + middle_y - length/2 + 20, arcade.color.GRAY, 5)
        arcade.draw_point(point[4] * 3 + middle_x - width/2 + 20, point[3] * 3 + middle_y - length/2 + 20, arcade.color.YELLOW, 5)
Ejemplo n.º 5
0
# Start the render process. This must be done before any drawing commands.
arcadeplus.start_render()

# Draw a grid
# Draw vertical lines every 120 pixels
for x in range(0, 601, 120):
    arcadeplus.draw_line(x, 0, x, 600, arcadeplus.color.BLACK, 2)

# Draw horizontal lines every 200 pixels
for y in range(0, 601, 200):
    arcadeplus.draw_line(0, y, 800, y, arcadeplus.color.BLACK, 2)

# Draw a point
arcadeplus.draw_text("draw_point", 3, 405, arcadeplus.color.BLACK, 12)
arcadeplus.draw_point(60, 495, arcadeplus.color.RED, 10)

# Draw a set of points
arcadeplus.draw_text("draw_points", 123, 405, arcadeplus.color.BLACK, 12)
point_list = ((165, 495), (165, 480), (165, 465), (195, 495), (195, 480),
              (195, 465))
arcadeplus.draw_points(point_list, arcadeplus.color.ZAFFRE, 10)

# Draw a line
arcadeplus.draw_text("draw_line", 243, 405, arcadeplus.color.BLACK, 12)
arcadeplus.draw_line(270, 495, 300, 450, arcadeplus.color.WOOD_BROWN, 3)

# Draw a set of lines
arcadeplus.draw_text("draw_lines", 363, 405, arcadeplus.color.BLACK, 12)
point_list = ((390, 450), (450, 450), (390, 480), (450, 480), (390, 510),
              (450, 510))
Ejemplo n.º 6
0
    def on_draw(self):
        arcadeplus.start_render()
        current_x = 20

        # First line
        current_y = SCREEN_HEIGHT - LINE_HEIGHT
        arcadeplus.draw_text("Test Text", current_x, current_y,
                             arcadeplus.color.BLACK, 12)

        # Again to test caching
        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text", current_x, current_y,
                             arcadeplus.color.BLACK, 12)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text Anchor Left",
                             SCREEN_WIDTH // 2,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_x="left")
        arcadeplus.draw_point(SCREEN_WIDTH // 2, current_y,
                              arcadeplus.color.RED, 5)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text Anchor Center",
                             SCREEN_WIDTH // 2,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_x="center")
        arcadeplus.draw_point(SCREEN_WIDTH // 2, current_y,
                              arcadeplus.color.RED, 5)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text Anchor Right",
                             SCREEN_WIDTH // 2,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_x="right")
        arcadeplus.draw_point(SCREEN_WIDTH // 2, current_y,
                              arcadeplus.color.RED, 5)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text Anchor Top",
                             SCREEN_WIDTH // 2,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_y="top")
        arcadeplus.draw_point(SCREEN_WIDTH // 2, current_y,
                              arcadeplus.color.RED, 5)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text Anchor Center",
                             SCREEN_WIDTH // 2,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_y="center")
        arcadeplus.draw_point(SCREEN_WIDTH // 2, current_y,
                              arcadeplus.color.RED, 5)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text("Test Text Anchor Bottom",
                             SCREEN_WIDTH // 2,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_y="bottom")
        arcadeplus.draw_point(SCREEN_WIDTH // 2, current_y,
                              arcadeplus.color.RED, 5)

        field_width = SCREEN_WIDTH
        current_y -= LINE_HEIGHT
        arcadeplus.draw_text(f"Test Text Field Width {field_width}",
                             current_x,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             font_name="arial",
                             width=field_width)

        current_y -= LINE_HEIGHT
        arcadeplus.draw_text(f"Centered Test Text Field Width {field_width}",
                             current_x,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             font_name="arial",
                             width=field_width,
                             align="center")

        current_y -= LINE_HEIGHT
        font_name = "comic"
        arcadeplus.draw_text("Different font",
                             current_x,
                             current_y,
                             arcadeplus.color.BLACK,
                             12,
                             font_name=font_name)

        current_y -= LINE_HEIGHT
        # noinspection PyDeprecation
        text = arcadeplus.create_text("Create text", arcadeplus.color.BLACK)
        # noinspection PyDeprecation
        arcadeplus.render_text(text, current_x, current_y)
Ejemplo n.º 7
0
    def on_draw(self):
        """
        Render the screen.
        """

        # Start the render process. This must be done before any drawing commands.
        arcadeplus.start_render()

        # Draw a grid
        # Draw vertical lines every 120 pixels
        for x in range(0, 601, 120):
            arcadeplus.draw_line(x, 0, x, 600, arcadeplus.color.BLACK, 2)

        # Draw horizontal lines every 200 pixels
        for y in range(0, 601, 200):
            arcadeplus.draw_line(0, y, 800, y, arcadeplus.color.BLACK, 2)

        # Draw a point
        arcadeplus.draw_text("draw_point", 3, 405, arcadeplus.color.BLACK, 12)
        arcadeplus.draw_point(60, 495, arcadeplus.color.RED, 10)

        # Draw a set of points
        arcadeplus.draw_text("draw_points", 123, 405, arcadeplus.color.BLACK,
                             12)
        point_list = ((165, 495), (165, 480), (165, 465), (195, 495),
                      (195, 480), (195, 465))
        arcadeplus.draw_points(point_list, arcadeplus.color.ZAFFRE, 10)

        # Draw a line
        arcadeplus.draw_text("draw_line", 243, 405, arcadeplus.color.BLACK, 12)
        arcadeplus.draw_line(270, 495, 300, 450, arcadeplus.color.WOOD_BROWN,
                             3)

        # Draw a set of lines
        arcadeplus.draw_text("draw_lines", 363, 405, arcadeplus.color.BLACK,
                             12)
        point_list = ((390, 450), (450, 450), (390, 480), (450, 480),
                      (390, 510), (450, 510))
        arcadeplus.draw_lines(point_list, arcadeplus.color.BLUE, 3)

        # Draw a line strip
        arcadeplus.draw_text("draw_line_strip", 483, 405,
                             arcadeplus.color.BLACK, 12)
        point_list = ((510, 450), (570, 450), (510, 480), (570, 480),
                      (510, 510), (570, 510))
        arcadeplus.draw_line_strip(point_list,
                                   arcadeplus.color.TROPICAL_RAIN_FOREST, 3)
        arcadeplus.draw_line_strip(point_list, arcadeplus.color.BEIGE)

        # Draw a polygon
        arcadeplus.draw_text("draw_polygon_outline", 3, 207,
                             arcadeplus.color.BLACK, 9)
        point_list = ((30, 240), (45, 240), (60, 255), (60, 285), (45, 300),
                      (30, 300))
        arcadeplus.draw_polygon_outline(point_list,
                                        arcadeplus.color.SPANISH_VIOLET, 3)

        # Draw a filled in polygon
        arcadeplus.draw_text("draw_polygon_filled", 123, 207,
                             arcadeplus.color.BLACK, 9)
        point_list = ((150, 240), (165, 240), (180, 255), (180, 285),
                      (165, 300), (150, 300))
        arcadeplus.draw_polygon_filled(point_list,
                                       arcadeplus.color.SPANISH_VIOLET)

        # Draw an outline of a circle
        arcadeplus.draw_text("draw_circle_outline", 243, 207,
                             arcadeplus.color.BLACK, 10)
        arcadeplus.draw_circle_outline(300, 285, 18, arcadeplus.color.WISTERIA,
                                       3)
        arcadeplus.draw_circle_outline(350, 285, 18, arcadeplus.color.WISTERIA)

        # Draw a filled in circle
        arcadeplus.draw_text("draw_circle_filled", 363, 207,
                             arcadeplus.color.BLACK, 10)
        arcadeplus.draw_circle_filled(420, 285, 18, arcadeplus.color.GREEN)

        # Draw an ellipse outline, and another one rotated
        arcadeplus.draw_text("draw_ellipse_outline", 483, 207,
                             arcadeplus.color.BLACK, 10)
        arcadeplus.draw_ellipse_outline(540, 273, 15, 36,
                                        arcadeplus.color.AMBER, 3)
        arcadeplus.draw_ellipse_outline(540, 336, 15, 36,
                                        arcadeplus.color.BLACK_BEAN, 3, 45)

        # Draw a filled ellipse, and another one rotated
        arcadeplus.draw_text("draw_ellipse_filled", 3, 3,
                             arcadeplus.color.BLACK, 10)
        arcadeplus.draw_ellipse_filled(60, 81, 15, 36, arcadeplus.color.AMBER)
        arcadeplus.draw_ellipse_filled(60, 144, 15, 36,
                                       arcadeplus.color.BLACK_BEAN, 45)

        # Draw an arc, and another one rotated
        arcadeplus.draw_text("draw_arc/filled_arc", 123, 3,
                             arcadeplus.color.BLACK, 10)
        arcadeplus.draw_arc_outline(150, 81, 15, 36,
                                    arcadeplus.color.BRIGHT_MAROON, 90, 360)
        arcadeplus.draw_arc_filled(150, 144, 15, 36,
                                   arcadeplus.color.BOTTLE_GREEN, 90, 360, 45)

        # Draw an rectangle outline
        arcadeplus.draw_text("draw_rect", 243, 3, arcadeplus.color.BLACK, 10)
        arcadeplus.draw_rectangle_outline(
            295, 100, 45, 65, arcadeplus.color.BRITISH_RACING_GREEN)
        arcadeplus.draw_rectangle_outline(
            295, 160, 20, 45, arcadeplus.color.BRITISH_RACING_GREEN, 3, 45)

        # Draw a filled in rectangle
        arcadeplus.draw_text("draw_filled_rect", 363, 3,
                             arcadeplus.color.BLACK, 10)
        arcadeplus.draw_rectangle_filled(420, 100, 45, 65,
                                         arcadeplus.color.BLUSH)
        arcadeplus.draw_rectangle_filled(420, 160, 20, 40,
                                         arcadeplus.color.BLUSH, 45)

        # Load and draw an image to the screen
        # Image from kenney.nl asset pack #1
        arcadeplus.draw_text("draw_bitmap", 483, 3, arcadeplus.color.BLACK, 12)
        texture = arcadeplus.load_texture(
            ":resources:images/space_shooter/playerShip1_orange.png")
        scale = .6
        # arcadeplus.draw_texture_rectangle(540, 120, scale * texture.width,
        #                               scale * texture.height, texture, 0)
        # arcadeplus.draw_texture_rectangle(540, 60, scale * texture.width,
        #                               scale * texture.height, texture, 45)
        #
        # Overlapping, with transparency test
        # Draw
        arcadeplus.draw_rectangle_filled(650, 100, 50, 50, (255, 0, 0))
        arcadeplus.draw_rectangle_filled(670, 100, 50, 50, (0, 255, 0, 127))

        # Test colors
        color = arcadeplus.get_pixel(635, 100)
        assert color == (255, 0, 0)
        color = arcadeplus.get_pixel(670, 100)
        assert color == (128, 127, 0)
        color = arcadeplus.get_pixel(690, 100)
        assert color == (128, 255, 128)

        # Test this other thing
        color = arcadeplus.get_pixel(100, 100)
        assert color == (255, 255, 255)

        # Run the get image. Ideally we'd test the output
        arcadeplus.get_image()
Ejemplo n.º 8
0
    def on_draw(self):
        """
        Render the screen.
        """

        # This command should happen before we start drawing. It will clear
        # the screen to the background color, and erase what we drew last frame.
        arcadeplus.start_render()

        # start_x and start_y make the start point for the text. We draw a dot to make it easy too see
        # the text in relation to its start x and y.
        start_x = 50
        start_y = 450
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Simple line of text in 12 point", start_x,
                             start_y, arcadeplus.color.BLACK, 12)

        start_x = 50
        start_y = 150
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Garamond Text",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             15,
                             font_name='GARA')

        start_x = 50
        start_y = 400
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Text anchored 'top' and 'left'.",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             12,
                             anchor_x="left",
                             anchor_y="top")

        start_y = 350
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("14 point multi\nline\ntext",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             14,
                             anchor_y="top")

        start_y = 450
        start_x = 300
        width = 200
        height = 20
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_lrtb_rectangle_outline(start_x, start_x + width,
                                               start_y + height, start_y,
                                               arcadeplus.color.BLUE, 1)
        arcadeplus.draw_text("Centered Text.",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             14,
                             width=200,
                             align="center")

        start_y = 250
        start_x = 300
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Text centered on\na point",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             14,
                             width=200,
                             align="center",
                             anchor_x="center",
                             anchor_y="center")

        start_y = 150
        start_x = 300
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Text rotated on\na point",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             14,
                             width=200,
                             align="center",
                             anchor_x="center",
                             anchor_y="center",
                             rotation=self.text_angle)

        start_y = 150
        start_x = 20
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text("Sideways text",
                             start_x,
                             start_y,
                             arcadeplus.color.BLACK,
                             14,
                             width=200,
                             align="center",
                             anchor_x="center",
                             anchor_y="center",
                             rotation=90.0)

        start_y = 20
        start_x = 50
        arcadeplus.draw_point(start_x, start_y, arcadeplus.color.BLUE, 5)
        arcadeplus.draw_text(f"Time elapsed: {self.time_elapsed:7.1f}",
                             start_x, start_y, arcadeplus.color.BLACK, 14)