一个处理三维空间中向量和点的简单向量工具包
vectors的Python项目详细描述
更改
- 0.0.9
- from __future__ import division添加到要使用的fix除法运算符 python 3.0中的真正除法,而不是经典除法。
向量
矢量是一个简单的库工具包,处理公共矢量和点 三维空间中的逻辑。
支持常用的矢量数学函数,包括:
- 矢量大小
- 与另一个向量或实数相加。
- 乘另一个向量或实数。
- 点积
- 交叉/标量积
- 矢量之间的角度
- 检查两个矢量是否垂直、平行或不平行
安装
pip install vectors
文档
用法
有多种方法可以使用向量创建向量实例 模块
我们可以先初始化一些向量和点,调用它们的repsective 类构造函数如下。
fromvectorsimportPoint,Vectorv1=Vector(1,2,3)#=> Vector(1, 2, 3)v2=Vector(2,4,6)#=> Vector(2, 4, 6)p1=Point(1,2,6)#=> Point(1, 2, 3)p2=Point(2,0,2)#=> Point(2, 4, 6)
我们还可以使用列表创建点实例或向量实例 使用来自_list()的类方法。
components=[1.2,2.4,3.8]v=Vector.from_list(components)#=> Vector(1.2, 2.4, 3.8)
我们还可以使用 来自_Points()的ClassMethod。
v=Vector.from_points(p1,p2)#=> Vector(1, -2, -4)
我们还可以访问向量数组,将其与其他 图书馆。
v1.vector#=> [1, 2, 3]
震级
我们可以很容易地得到矢量的大小。
v1.magnitude()#==> 3.7416573867739413
添加
我们可以给一个向量加一个实数,或者计算两个向量的和 向量如下。
v1.add(2)#=> Vector(3.0, 4.0, 5.0)v1.sum(v2)#=> Vector(3.0, 6.0, 9.0)
两个方法都返回一个向量实例。
乘法
我们可以用实数乘向量。
v1.multiply(4)#=> Vector(4.0, 8.0, 12.0)
上面返回一个向量实例。
点积
我们可以找到两个向量的点积。
v1.dot(v2)#=> 0.0
我们也可以在点函数上使用角度θ。
v1.dot(v2.180)
点积返回实数。
交叉/标量积
我们可以找到两个向量的叉积。
v1.cross(v2)#=> Vector(0, 0, 0)
叉积返回一个向量实例,它总是垂直的 其他两个向量。
角度θ
我们还可以找到两个向量之间的θ角。
v1.angle(v2)#=> 0.0
角度是以度为单位的。
平行、垂直、非平行
我们可以检查两个向量是平行的、垂直的还是非平行的 彼此之间。
v1.parallel(v2)#=> Truev1.perpendicular(v2)#=> Falsev1.non_parallel(v2)#=> False
以上所有返回值都是真或假。
待办事项
- 基于矢量工具箱创建解析几何工具箱。