如何判断一个点是否在长方体的内部 急送高分

windy1211 2007-04-18 02:24:40
假定这个点的位置Pos
这是我绘制的长方体的位置:
glTranslatef(56, 14, 56);
glBindTexture(GL_TEXTURE_2D, texture[0]); // 选择纹理
glBegin(GL_QUADS);
// 前面
glTexCoord2f(0.0f, 0.0f); glVertex3f(-4.0f, -2.0f, 4.0f); // 纹理和四边形的左下
glTexCoord2f(1.0f, 0.0f); glVertex3f( 4.0f, -2.0f, 4.0f); // 纹理和四边形的右下
glTexCoord2f(1.0f, 1.0f); glVertex3f( 4.0f, 2.0f, 4.0f); // 纹理和四边形的右上
glTexCoord2f(0.0f, 1.0f); glVertex3f(-4.0f, 2.0f, 4.0f); // 纹理和四边形的左上
// 后面
glTexCoord2f(1.0f, 0.0f); glVertex3f(-4.0f, -2.0f, -4.0f); // 纹理和四边形的右下
glTexCoord2f(1.0f, 1.0f); glVertex3f(-4.0f, 2.0f, -4.0f); // 纹理和四边形的右上
glTexCoord2f(0.0f, 1.0f); glVertex3f( 4.0f, 2.0f, -4.0f); // 纹理和四边形的左上
glTexCoord2f(0.0f, 0.0f); glVertex3f( 4.0f, -2.0f, -4.0f); // 纹理和四边形的左下
// 顶面
glTexCoord2f(0.0f, 1.0f); glVertex3f(-4.0f, 2.0f, -4.0f); // 纹理和四边形的左上
glTexCoord2f(0.0f, 0.0f); glVertex3f(-4.0f, 2.0f, 4.0f); // 纹理和四边形的左下
glTexCoord2f(1.0f, 0.0f); glVertex3f( 4.0f, 2.0f, 4.0f); // 纹理和四边形的右下
glTexCoord2f(1.0f, 1.0f); glVertex3f( 4.0f, 2.0f, -4.0f); // 纹理和四边形的右上
// 底面
glTexCoord2f(1.0f, 1.0f); glVertex3f(-4.0f, -2.0f, -4.0f); // 纹理和四边形的右上
glTexCoord2f(0.0f, 1.0f); glVertex3f( 4.0f, -2.0f, -4.0f); // 纹理和四边形的左上
glTexCoord2f(0.0f, 0.0f); glVertex3f( 4.0f, -2.0f, 4.0f); // 纹理和四边形的左下
glTexCoord2f(1.0f, 0.0f); glVertex3f(-4.0f, -2.0f, 4.0f); // 纹理和四边形的右下
// 右面
glTexCoord2f(1.0f, 0.0f); glVertex3f( 4.0f, -2.0f, -4.0f); // 纹理和四边形的右下
glTexCoord2f(1.0f, 1.0f); glVertex3f( 4.0f, 2.0f, -4.0f); // 纹理和四边形的右上
glTexCoord2f(0.0f, 1.0f); glVertex3f( 4.0f, 2.0f, 4.0f); // 纹理和四边形的左上
glTexCoord2f(0.0f, 0.0f); glVertex3f( 4.0f, -2.0f, 4.0f); // 纹理和四边形的左下
// 左面
glTexCoord2f(0.0f, 0.0f); glVertex3f(-4.0f, -2.0f, -4.0f); // 纹理和四边形的左下
glTexCoord2f(1.0f, 0.0f); glVertex3f(-4.0f, -2.0f, 4.0f); // 纹理和四边形的右下
glTexCoord2f(1.0f, 1.0f); glVertex3f(-4.0f, 2.0f, 4.0f); // 纹理和四边形的右上
glTexCoord2f(0.0f, 1.0f); glVertex3f(-4.0f, 2.0f, -4.0f); // 纹理和四边形的左上
glEnd();
glPopMatrix();
这是我的课程设计,我知道应该通过平面方程来判断。假定box的6个面均为法向向内,你分别计算这个点与6个面的位置,如果都是〉0,说明点在6个面的上方,即在box内部。
但是由于只学了两星期OpenGL,所以不知道具体该怎么写,明天就要验收了,急啊,哪位好心人帮我一下啊,我请吃饭-
...全文
1236 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
纯数学的问题
计算这个点和六个平面的关系.如果分别与法线相反,则在长方体内.计算方法是将点的坐标代入到每个平面的ax+by+cz+d=0中计算其值,大于0则和法线相同,小于0则与法线相反
hertz2007 2007-05-11
  • 打赏
  • 举报
回复
楼上的方法很好。
我再提一个思路:
考虑该点与8个顶点构成的向量与各条棱的向量之间的夹角关系。
比如顶点是A,B,有一点P,考虑向量AP与AB的夹角关系,可以做内积,如果内积为负,判断出点在外部,结束;如果为正,继续下一个点,直到所有点遍历过---此时判断在内部。
HUNTON 2007-04-18
  • 打赏
  • 举报
回复
长方体可以分解成几个四面体,只要判断点与这些四面体的位置关系就可以了。
菜牛 2007-04-18
  • 打赏
  • 举报
回复
这个计算和OpenGL没有关系,纯粹数学。
Rock_And_Roll 2007-04-18
  • 打赏
  • 举报
回复
不清除,计算距离吧至于怎么计算不清楚
syy64 2007-04-18
  • 打赏
  • 举报
回复
没有好的办法。
YOLO医学影像组织结构目标检测数据集 目标类别:['0', '1', '2', '3', 'object'] 中文类别:['其他', '其他', '其他', '其他', '物体'] 训练集:13984 张 验证集:1894 张 测试集:0 张 总计:15878 张 该数据集提供了data.yaml文件,内容如下: train: ../train/images val: ../valid/images test: ../test/images nc: 5 names: ['0', '1', '2', '3', 'object'] 该数据集聚焦于医学影像领域,专为组织结构识别与分析设计,具有高度专业性和临床应用价值。其核心检测目标为人体或生物组织的微观结构特征,适用于病理学研究、影像辅助诊断及医学图像自动化分析场景。数据采集覆盖多种组织形态,为相关算法模型训练提供高质量视觉样本。 数据集包含训练集13984张、验证集1894张、测试集0张,总计15878张图像。训练集规模充足,可支撑模型充分学习各类组织结构特征;验证集比例合理,确保模型在未见数据上的泛化能力评估可靠;测试集虽为空,但不影响模型开发与验证流程的完整性,整体分布符合工业级目标检测数据集的标准配置。 所有图像均经过专业标注,标注边界清晰、覆盖完整,针对不同组织形态提供了精确的区域标记。标注过程遵循医学影像分析规范,确保每个目标实例的语义一致性与空间准确性,为后续模型训练提供了高保真度的监督信号,有效保障了模型性能的稳定提升。 该数据集可广泛应用于医疗影像分析系统开发、病理切片自动识别、手术导航辅助系统训练等实际医疗场景。其高质量标注与多样化的组织结构样本,有助于推动人工智能技术在精准医疗、智能诊断和医学教育领域的落地应用,为提升临床效率与诊断准确性提供坚实的数据基础。
内容概要:本文系统性地介绍了2026年8月提出的新型优化算法——心率优化算法,并结合Matlab代码实现,深入探讨其在电力系统、智能优化、路径规划、信号处理等多个前沿科研领域的应用。文档涵盖了大量基于Matlab/Simulink的仿真案例,包括虚拟电厂中电动汽车V2G充放电优化、深度强化学习(如DDPG、QLearning)在能源调度与机器人控制中的应用、多无人机协同三维路径规划、微电网多时间尺度调度、逆变器阻抗建模与稳定性分析等关键技术课题。同时,文档强调科研中“借力”与“创新”并重的理念,倡导系统性思维与扎实实践相结合,配套提供了丰富的学习资源,包括网盘中的完整代码、模型与文献资料,助力读者高效复现研究成果。; 适合人群:具备一定Matlab/Simulink编程基础,从事电力系统、自动化控制、人工智能、路径规划、信号处理及相关交叉学科研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①为科研工作者提供可复现的算法代码与高保真仿真模型,加速论文复现与课题攻关;②支持智能优化算法、强化学习、电力电子控制等新技术的开发与性能验证;③辅助撰写高水平学术论文、完成学位论文或开展实际工程项目研发。; 阅读建议:建议读者按照文档目录结构系统性浏览,优先聚焦与自身研究方向契合的案例,结合网盘提供的完整资源进行代码调试与仿真验证,注重理论推导与编程实践的深度融合,以全面提升科研效率与技术创新能力。

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧