当前位置: 首页 > news >正文

优秀的国外网站卖辅助网站怎么做

优秀的国外网站,卖辅助网站怎么做,佛山网站建设的首选公司,定制app网站阶段一:第2课:几何数学 一、课程目标 掌握图形学中常用的几何数学基础,包括向量、矩阵的运算及空间变换原理。 二、向量(Vector) 1. 向量的基本概念 定义:既有大小又有方向的量,区别于只有大小的标量。表示方法&#x…

阶段一:第2课:几何数学

一、课程目标

掌握图形学中常用的几何数学基础,包括向量、矩阵的运算及空间变换原理。

二、向量(Vector)

1. 向量的基本概念

  • 定义:既有大小又有方向的量,区别于只有大小的标量。
  • 表示方法
    • 几何表示:带箭头的线段
    • 坐标表示:二维向量(x,y),三维向量(x,y,z)

2. 向量运算

(1)加法与减法
  • 几何意义:遵循平行四边形法则或三角形法则
  • 坐标运算:对应分量相加减
    若向量A=(x₁,y₁,z₁),向量B=(x₂,y₂,z₂)
    则A+B=(x₁+x₂,y₁+y₂,z₁+z₂)
    
(2)数乘
  • 几何意义:缩放向量长度,方向可能反转
  • 坐标运算:各分量乘以标量
    若向量A=(x,y,z),标量k
    则kA=(kx,ky,kz)
    
(3)点积(Dot Product)
  • 定义:A·B = |A||B|cosθ
  • 坐标运算
    A·B = x₁x₂ + y₁y₂ + z₁z₂
    
  • 几何应用
    • 计算两向量夹角
    • 判断方向关系(同向、垂直、反向)
    • 投影计算
(4)叉积(Cross Product)
  • 定义:A×B = |A||B|sinθ·n(n为垂直于A和B的单位向量)
  • 坐标运算
    A×B = (y₁z₂-y₂z₁, z₁x₂-z₂x₁, x₁y₂-x₂y₁)
    
  • 几何应用
    • 计算垂直于两向量的法向量
    • 判断向量的左右/内外关系
    • 计算平行四边形面积

3. 向量的归一化(Normalization)

  • 定义:将向量缩放为单位长度(模长为1)
  • 计算方法
    单位向量 Â = A/|A|
    其中|A| = √(x²+y²+z²)
    

三、矩阵(Matrix)

1. 矩阵的基本概念

  • 定义:由m行n列数排列成的矩形阵列
  • 表示方法:[aᵢⱼ],其中i为行标,j为列标

2. 矩阵运算

(1)矩阵加法与减法
  • 条件:同型矩阵(行数和列数相同)
  • 运算规则:对应元素相加减
(2)矩阵乘法
  • 条件:左矩阵列数等于右矩阵行数
  • 运算规则
    若A为m×n矩阵,B为n×p矩阵,则C=AB为m×p矩阵
    Cᵢⱼ = Σ(Aᵢₖ×Bₖⱼ) (k从1到n)
    
  • 重要性质
    • 不满足交换律:AB≠BA
    • 满足结合律:(AB)C=A(BC)
(3)矩阵与向量的乘法
  • 几何意义:对向量进行变换(旋转、缩放、平移等)
  • 运算规则:将向量视为列矩阵进行乘法

3. 特殊矩阵

(1)单位矩阵(Identity Matrix)
  • 定义:主对角线元素为1,其余元素为0的方阵
  • 性质:任何矩阵乘以单位矩阵等于本身
(2)转置矩阵(Transpose Matrix)
  • 定义:将原矩阵的行和列互换得到的矩阵
  • 表示:Aᵀ
(3)逆矩阵(Inverse Matrix)
  • 定义:对于方阵A,若存在方阵B使得AB=BA=I,则B为A的逆矩阵,记为A⁻¹
  • 性质
    • 只有行列式不为0的方阵才有逆矩阵
    • (AB)⁻¹ = B⁻¹A⁻¹

四、空间变换

1. 变换的分类

  • 线性变换:保持向量加法和数乘的变换(旋转、缩放)
  • 仿射变换:线性变换+平移
  • 投影变换:将三维空间投影到二维平面

2. 基本变换矩阵

(1)平移变换
[x']   [1 0 0 tx] [x]
[y'] = [0 1 0 ty] [y]
[z']   [0 0 1 tz] [z]
[1 ]   [0 0 0 1 ] [1]
(2)旋转变换
  • 绕Z轴旋转θ角
[x']   [cosθ -sinθ 0 0] [x]
[y'] = [sinθ  cosθ 0 0] [y]
[z']   [0      0    1 0] [z]
[1 ]   [0      0    0 1] [1]
  • 绕X轴、Y轴旋转的矩阵类似
(3)缩放变换
[x']   [sx 0  0  0] [x]
[y'] = [0  sy 0  0] [y]
[z']   [0  0  sz 0] [z]
[1 ]   [0  0  0  1] [1]

3. 齐次坐标(Homogeneous Coordinates)

  • 引入目的:用矩阵运算统一表示线性变换和平移变换
  • 表示方法:将三维坐标(x,y,z)表示为四维坐标(x,y,z,w)
    • 当w=1时,表示点
    • 当w=0时,表示向量

4. 变换的组合

  • 顺序问题:变换矩阵的乘法顺序不可交换
  • 一般顺序:缩放→旋转→平移

五、实践案例

1. 向量运算实现

import mathclass Vector3:def __init__(self, x=0, y=0, z=0):self.x = xself.y = yself.z = zdef __add__(self, other):return Vector3(self.x+other.x, self.y+other.y, self.z+other.z)def __sub__(self, other):return Vector3(self.x-other.x, self.y-other.y, self.z-other.z)def dot(self, other):return self.x*other.x + self.y*other.y + self.z*other.zdef cross(self, other):return Vector3(self.y*other.z - self.z*other.y,self.z*other.x - self.x*other.z,self.x*other.y - self.y*other.x)def magnitude(self):return math.sqrt(self.x**2 + self.y**2 + self.z**2)def normalize(self):mag = self.magnitude()if mag != 0:return Vector3(self.x/mag, self.y/mag, self.z/mag)return Vector3()

2. 矩阵运算实现

class Matrix4x4:def __init__(self):# 初始化为单位矩阵self.data = [[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]]def multiply(self, other):result = Matrix4x4()for i in range(4):for j in range(4):result.data[i][j] = sum(self.data[i][k] * other.data[k][j] for k in range(4))return result@staticmethoddef translation(tx, ty, tz):m = Matrix4x4()m.data[0][3] = txm.data[1][3] = tym.data[2][3] = tzreturn m@staticmethoddef rotation_z(angle):m = Matrix4x4()c = math.cos(angle)s = math.sin(angle)m.data[0][0] = cm.data[0][1] = -sm.data[1][0] = sm.data[1][1] = creturn mdef transform_point(self, point):x = self.data[0][0]*point.x + self.data[0][1]*point.y + self.data[0][2]*point.z + self.data[0][3]y = self.data[1][0]*point.x + self.data[1][1]*point.y + self.data[1][2]*point.z + self.data[1][3]z = self.data[2][0]*point.x + self.data[2][1]*point.y + self.data[2][2]*point.z + self.data[2][3]return Vector3(x, y, z)

六、课后练习

  1. 实现向量类的反射向量计算方法
  2. 推导绕Y轴旋转的变换矩阵
  3. 编写代码实现点在复合变换下的坐标计算
  4. 思考:为什么变换矩阵的乘法顺序很重要?

七、参考资料

  • 《3D数学基础:图形与游戏开发》
  • 《计算机图形学》(Foley版)
  • OpenGL官方文档
  • GLSL着色语言规范
http://www.dtcms.com/a/579745.html

相关文章:

  • 滨海县城乡建设局网站游戏代理加盟
  • 江苏网站seo优化做网站需要服务器么
  • 手机网站建设流程 知乎平面设计图网站有哪些?
  • 做网站怎么找优质客户信用网站建设成效
  • 云建站网址找人做网站应该注意什么
  • 佛山网站建设企划动力十大室内设计师
  • 将网站加入小程序找不到自己做的dw网站
  • 国内阿里巴巴网站怎么做网站做等保测评
  • 网站全景看图怎么做织梦网站栏目管理空白
  • 织梦网站广告代码如何写wordpress noren
  • 零食软文范例300字网站建设优化服务精英
  • 嘉祥建设局网站wordpress 社交登陆
  • 天津市建设工程管理总队网站齐齐哈尔网站seo
  • 微网站开发软件网站开发图片加载慢
  • 广州定制型网站谷歌自建站和优化
  • 怎么做游戏平台网站Wordpress文章加入作者
  • 子网站建设内涵图网站源码
  • 电子销售网站报表模块如何做正规app软件开发价格
  • 什么官网比较容易做网站温州哪里有网站
  • 单页网站修改wordpress中文是什意思
  • 上海建设银行网站首页网站怎么上传ftp
  • 学校网站的系统建设方式软件库合集资料网站
  • 哪个网站财经做的最好外贸营销网站建设公司
  • 做英文网站 用阿里服务器行吗温州专业手机网站制作哪家好
  • 酒泉市城乡建设局网站路线最优1路线2
  • 做网站什么科目wordpress仿大众点评
  • 网站建设的广告语python django做网页
  • 《c程序设计》精品课程网站建设南京市城乡建设局网站
  • 天眼查网站thecontent WordPress
  • 信息管理网站开发实验报告顺德网站制作案例平台