AI 协作日志

学生 Web 实验作品平台

学号:202412211402023 · 来源:ai-log.md

# 实验五AI协作与核验记录(学生填写)

学号:202412211402023    姓名:杨珊珊    日期:11.9

> 必须记录**自己的预测、原始问题、AI建议、自主判断与实际核验**。AI代码不能代替本人解释。可附完整对话链接/导出记录,避免只放聊天截图而无测试证据。

## 协作一:观察与投影概念核验(Task B / C,3分)

1. 我的问题和事先预测(M/V/P中谁变化?预期画面如何变化?):
正交投影下,两个等尺寸但深度不同的物体看起来大小基本相同;透视投影下,距离相机较近的物体看起来更大。
2. 我实际输入给AI的提示词:
检查实验的完成方法和具体修改位置,并结合模型归一化、相机观察和投影切换的实现,核对M、V、P分别负责的变化
3. AI建议摘要(包括关键数学依据):
AI建议采用控制变量的方法,每组实验只改变一种主要因素,并同时记录参数和模型世界中心,避免仅凭画面判断。

关键依据如下:
- 世界坐标为 p_world=M·N·p_local,其中不包含V和P,因此改变相机或投影不应改变模型世界中心。
- View通过 lookAt(eye,target,up) 构造,顶部观察时需要避免up与观察方向平行。
- 透视投影经过透视除法后,物体的表观尺寸与观察深度有关;正交投影没有同样的深度缩小效果。
4. 我的判断和采纳/拒绝理由:
采用“模型平移、相机切换、投影切换”三组对照,可以分别检查M、V、P的作用。

检查时应同时关注画面和状态数值。例如,切换相机后模型看起来改变了方向,但世界中心不变,说明变化来自观察矩阵;如果只看截图,很容易把相机移动和物体变换混淆。
5. 我的测试参数、测试操作与结果(附截图/数值):
测试:模型变换
参数和操作	:正面相机,将tx从0改为0.5
理论预期:世界中心X增加0.5,eye不变
本人实际结果:	将tx从0改为0.5后,模型世界中心由 (0.00,0.00,0.00) 变为 (0.50,0.00,0.00);相机eye始终为 (0.00,0.00,8.00)。
6. AI是否正确?我最终修正了什么认识?

## 协作二:程序故障诊断(Task C / D,4分)

1. 真实错误现象和我起初怀疑的原因:
本次代码检查发现,相机和交互相关文件存在函数结构及括号错误,影响后续任务运行。
其中,B中把观察基向量计算和View矩阵计算混在了同一个函数中,并存在多余的闭合符号;D也存在多余的闭合符号。
原因是打开后一直未出现模型
2. 向AI提出的诊断问题:
这些代码有问题吗
3. AI建议的至少两个可区分原因及测试:
原因假设	最小检查方法	区分依据
函数括号或闭合符号错误	对JS文件进行语法检查,定位报错行	语法错误会阻止该脚本执行
相机函数返回值或依赖错误	检查`view`是否返回16元素矩阵,`cameraBasis`是否存在	观察基对象不能直接作为View矩阵,D也需要相机基函数
4. 我实际逐项测试了什么?各自结果如何?
5. 最终根因、修复处及修复后结果:
① 语法检查定位到B中的多余 );,以及D、E中的多余闭合符号。

② 检查函数结构发现,B应分别定义 cameraBasis 和 view,前者返回观察基向量,后者返回 lookAt 矩阵。

③ 核对A、C的实现后,归一化与投影公式没有发现需要修改的问题,因此保持原样。

④ 修复后进行了自动检查,29项数值、状态和模拟页面初始化检查通过。这部分由AI辅助执行,不能代替本人浏览器操作记录。
> 若首次没有故障,可以备份后临时制造一处可恢复错误,完成排查后修复。

## 协作三:综合工作台方案比较(Task E,3分)

1. 我准备完成的观察任务:
观察辅助标记围绕指定参考点旋转时,标记中心坐标如何变化,以及它到参考点的距离是否保持不变。

同时利用已有相机和投影功能,区分模型在世界中的运动与观察画面的变化。
2. 向AI询问的两种设计方案:
可输入旋转参考点P,显示固定参考点和运动标记。
正交与透视双画布同步对照,共享模型和相机参数。
3. 两种方案的功能、矩阵链、测试难度对比:
比较项	可输入旋转参考点	双画布投影对照
功能	调节P和角度,观察绕点运动	同时观察两种投影
矩阵链	T(P)·Ry(θ)·T(-P)·T(q)·S	两侧共享M、V,分别使用不同P
新增工作	坐标输入、参考标记和状态联动	双视口或双画布、状态同步和独立宽高比
验证方法	检查中心坐标及到P的距离	检查两侧M/V相同、投影现象不同
验证难度	较低,能直接使用数值核验	较高,需要同时检查布局和同步
4. 最终采纳的方案与理由:
目前代码采用“可输入旋转参考点P”的方案。

该方案能够复用已有额外对象绘制接口和绕点矩阵,改动范围较小,也能通过坐标和距离进行验证。相比双画布方案,它更适合在本次实验中完成并解释清楚。
5. 自己实现或修改的功能差异:
相较教师提供的固定参考点示范,本版本接入了旋转中心X、Y、Z三个输入参数,使固定参考点和运动标记共用同一组P坐标。

同时将新增参数纳入默认状态和重置流程,并显示参考点P、变换后中心q′及到P的距离。AI提供了代码参考和排查帮助,具体修改范围以本次项目代码为准。

这里实现的是辅助标记绕指定参考点运动,主OBJ模型仍使用原来的模型变换。
6. 预测与实际结果对照,仍存在的局限:
局限是目前只实现绕Y方向轴的辅助标记运动,没有实现任意轴旋转或双画布同步对照。画布PNG不包含下方状态栏,参数证据需要另外截图或记录。

## 全局诚信声明

- 我提交的代码均已本人运行并核验;无法解释的AI输出未直接作为完成结果。
- 我明确标注了使用AI辅助的功能和本人自主完成的关键判断。