使用 Python 中的 Arcade 库绘制三角形
Arcade 库是 Python 的内置库之一。它广泛用于创建各种多媒体对象,可用于制作 2D 游戏和其他需要图形的应用程序。在本文中,我们将使用 Python 中的 Arcade 库来完成创建三角形的任务。我们将从简要介绍 Arcade 库、其功能和用法开始。
什么是 Arcade 库?
Arcade 库的开发是为了克服 Py.game 模块的限制,因为它是 Python 游戏程序员使用的唯一模块。该库能够解决其创建的目的,即为 2D 游戏开发更逼真的图形。要使用该库下的函数,首先需要导入该库,然后创建一个窗口,对象将显示在其中。
对于绘制不同的形状,Arcade 每个形状都有一个不同的函数。
arcade.draw_circle_filled
arcade.draw_rectangle_filled
arcade.draw_polygon_filled
arcade.draw_line()
arcade.draw_point()
arcade.draw_triangle_filled()
arcade.draw_ellipse()
使用 Arcade 库绘制三角形
示例
在以下示例中,我们使用 arcade 库的 arcade.draw_triangle_filled() 函数绘制了一个三角形。
我们首先使用 'arcade.open_window()' 函数创建了一个窗口,并通过它传递了三个参数,分别是屏幕宽度、高度和标题。
接下来,我们设置了背景颜色并启动了渲染过程。渲染启动后,我们接下来定义了要绘制的三角形的坐标,以及三角形的颜色。
import arcade SCR_WIDTH = 640 SCR_HEIGHT = 480 def draw_triangle(): arcade.open_window(SCR_WIDTH, SCR_HEIGHT, "Drawing a Triangle") arcade.set_background_color(arcade.color.ANTIQUE_WHITE) arcade.start_render() arcade.draw_triangle_filled( 320, 380, # x, y coordinate of point A 220, 180, # x, y coordinate of point B 420, 180, # x, y coordinate of point C arcade.color.ROYAL_BLUE ) arcade.finish_render() arcade.run() draw_triangle()
输出
绘制空心三角形
类似地,您可以对要创建的对象进行不同的更改。在此示例中,我们没有填充三角形,而是使用了 arcade.draw_triangle_outline() 函数。
此函数仅绘制三角形的轮廓。您可以向此代码添加图形以使三角形更具吸引力。
还有一种绘制三角形的方法,即使用 arcade.ShapeElementList() 函数。让我们使用此函数编写一段代码。
注意:要绘制完美的对象,您必须牢记传递给函数的坐标,因为坐标在调整对象的位置方面起着重要作用。
示例
import arcade WIDTH = 640 HEIGHT = 480 TITLE = "Triangle Example" arcade.open_window(WIDTH, HEIGHT, TITLE) arcade.set_background_color(arcade.color.WHITE) arcade.start_render() # Create a ShapeElementList object triangle_list = arcade.ShapeElementList() # Add three line segments to the list to create a triangle triangle_list.append(arcade.create_line(320, 100, 200, 300, arcade.color.BLUE, 3)) triangle_list.append(arcade.create_line(200, 300, 440, 300, arcade.color.BLUE, 3)) triangle_list.append(arcade.create_line(440, 300, 320, 100, arcade.color.BLUE, 3)) # Draw the ShapeElementList object triangle_list.draw() arcade.finish_render() arcade.run()
输出
示例
让我们再举一个例子,我们可以绘制两个三角形。
import arcade WIDTH = 640 HEIGHT = 480 TITLE = "Two Triangles Example" arcade.open_window(WIDTH, HEIGHT, TITLE) arcade.set_background_color(arcade.color.WHITE) arcade.start_render() # Draw the first triangle arcade.draw_triangle_outline( 320, 100, # Vertex 1 (x, y) 200, 300, # Vertex 2 (x, y) 440, 300, # Vertex 3 (x, y) arcade.color.PURPLE ) # Draw the second triangle arcade.draw_triangle_outline( 200, 100, # Vertex 1 (x, y) 80, 300, # Vertex 2 (x, y) 320, 300, # Vertex 3 (x, y) arcade.color.VIVID_BURGUNDY ) arcade.finish_render() arcade.run()
输出
使用 Arcade 库绘制其他形状
arcade.ShapeElementList 类基本上是一个类,它处理要在窗口上绘制的形状元素列表。使用此类,您可以通过组合形状来形成复杂对象,从而创建各种形状。
要使用此类——
您需要创建该类的实例。
然后使用 append() 方法将形状元素添加到列表中,并传递所需的形状。
在前面关于形状元素列表对象的示例中,我们使用了三条线段来创建三角形。
局限性
但是 Arcade 库也有一些局限性。
它不具备支持 3D 图形的特性,仅限于 2D 图形。
许多移动网络和网络浏览器的平台不支持它,因此在处理任何相关的项目时可能会成为问题。
因此,该库在处理较小的项目和初学者学习时更有帮助。
结论
在本文中,我们简要解释了什么是 Arcade 库。我们讨论了在编写使用 Arcade 绘制三角形的代码时使用的函数。提供了三个不同的示例,以便更好地理解在编写代码时应用的概念。
三种不同的方法包括三个不同的函数,分别是 arcade.draw_triangle_filled()、arcade.draw_triangle_outline 和 arcade.ShapeElementList()。每个函数都以不同的方式绘制三角形。