STL三角网格模型体积计算

2023-05-16

float STLVolume()
{
	float vols = 0;
	for (int i = 0; i < Tmesh->faces.size(); i++)
	{
		vec p1 = Tmesh->vertices[Tmesh->faces[i][0]];
		vec p2 = Tmesh->vertices[Tmesh->faces[i][1]];
		vec p3 = Tmesh->vertices[Tmesh->faces[i][2]];

		float v321 = p3[0] * p2[1] * p1[2];
		float v231 = p2[0] * p3[1] * p1[2];
		float v312 = p3[0] * p1[1] * p2[2];
		float v132 = p1[0] * p3[1] * p2[2];
		float v213 = p2[0] * p1[1] * p3[2];
		float v123 = p1[0] * p2[1] * p3[2];
		vols +=(1.0f / 6.0f)*(-v321 + v231 + v312 - v132 - v213 + v123);
	}
	return abs(vols);
}

参考论文:EFFICIENT FEATURE EXTRACTION FOR 2D/3D OBJECTS IN MESH REPRESENTATION

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

STL三角网格模型体积计算 的相关文章

随机推荐

  • week12-作业(动态规划)

    C 必做题 3 东东每个学期都会去寝室接受扫楼的任务 xff0c 并清点每个寝室的人数 每个寝室里面有ai个人 1 lt 61 i lt 61 n 从第i到第j个宿舍一共有sum i j 61 a i 43 43 a j 个人 这让宿管阿姨
  • 自动写代码?Copilot尝鲜及其奇技淫巧

    自动写代码 Copilot尝鲜及其奇技淫巧 博主在同学那里了解到Copilot这个神奇的项目 xff0c 听说能自动帮你写代码 xff0c 顿时来了性质 xff0c 从现在起 xff0c 我不再写代码 xff0c 我要搭载Copilot起飞
  • 两台MAC时间机器的备份和系统恢复

    背景 xff1a 一台mbp16寸 xff08 2019 xff09 xff0c 系统为最新的12 2 1 xff0c 本文命名为A 一台mba13寸 xff08 2020 xff09 xff0c 系统为10 15 7 xff0c 本文命名
  • 个人深度学习工作站配置ssh&xrdp&vnc远程连接

    最近实验室买了台服务器主要用于跑深度学习 xff0c 买过来只有一台主机 xff0c 所有的东西都需要自己配置 xff0c 经过半个月了踩坑 xff0c 将自己配置成功的案例写下来 xff0c 有相关需求的小伙伴可以参考一下 xff1a 主
  • 程序员必须掌握的核心算法

    程序员必须掌握的核心算法 一 算法最最基础 1 时间复杂度 2 空间复杂度 一般最先接触的就是时间复杂度和空间复杂度的学习了 xff0c 这两个概念以及如何计算 xff0c 是必须学的 xff0c 也是必须最先学的 xff0c 主要有最大复
  • MFC实现计算器

    MFC实现计算器 简易计算器实现加减乘除等功能 xff0c 可以使用小数点 1 首先添加计算器按钮界面 2 设置好各个变量 xff0c 注意添加变量时要选择value 3 双击各个button按键依次添加功能 话不多说直接上代码 Mcoun
  • 关于图算法的整理DFS,BFS,Dijkstra,Prim代码

    图 邻接矩阵与邻接表 xff08 两者皆可用来表示有向图和无向图 xff09 创建一个基类graph pragma once include lt iostream gt include lt vector gt include lt ma
  • 哈夫曼树基本原理

    首先我们看看基本定义 哈夫曼树的学术定义为 xff0c 带权路径长度最短的二叉树 xff0c 即节点具有两个属性 xff1a 1 权值 xff0c 可以看作节点表达出的数值大小 xff0c 或者变换的表示为概率大小 2 路径 xff0c 可
  • Abaqus应力张量方向输出

    Abaqus应力张量方向输出 从abaqus中能够查看应力张量方向 xff0c 但是无法实现方向场的输出 xff0c 由于实际工程需要考虑应力方向 xff0c 必须将应力张量的方向考虑进去 具体实现 xff0c 不会可以私聊我
  • POV-Ray简单案例

    POV Ray xff0c 全名是Persistence of Vision Raytracer xff0c 是一个使用光线跟踪绘制三维图像的开放源代码免费软件 按照3 7版本给的参考 xff0c 写的代码 xff0c 以下为部分源码 ve
  • MFC图片保存

    MFC保存图片 添加事件处理程序于view类中 代码如下 xff1a void CVoronoi2View OnFileSaveAs CClientDC dc this CRect rect GetClientRect amp rect 获
  • c++代码运行时间测试

    测试代码运行时间 xff08 以秒 为单位 xff09 使用高精度时控函数QueryPerformanceFrequency xff08 xff09 和 QueryPerformanceCounter xff08 xff09 具体实现如下
  • 内存四区的深入学习

    内存四区 1 代码区 写的代码 xff0c 包括各种函数 由OS管理 xff0c 程序结束时 才释放 2 全局区 主要的数据有 xff1a 全局变量 静态变量 常量 xff08 字符串常量 xff09 在函数返回类型前加static xff
  • 三维空间点到线段的距离

    点到线段的最短距离 与点到直线的最短距离 存在区别 xff0c 求点到线段的最短距离 时要考虑参考点P沿线段方向的投影点Q是否在线段 上如图所示 xff1a 点到线段的最短距离如下图所示 xff1a 解决点到线段的距离可以用面积法等 xff
  • Apple Developer会员注册以及续订“支付授权失败...”问题

    2020 08 20更新 xff1a 从去年年底开始 xff0c 苹果开发者账号的注册方式已经修改为通过iOS设备上的Apple Developer App进行注册 xff0c 账号的年费支付方式也被调整为与一般的App一样 xff0c 以
  • 十大经典排序算法

    十大经典排序算法 目录 十大经典排序算法 1 时间复杂度为O n2 1 1 冒泡排序 xff08 Bubble Sort xff09 1 2 选择排序 xff08 Selectin Sort xff09 1 3 插入排序 xff08 Ins
  • 指针传参的深入思考

    对指针传参的深入思考 xff0c 很重要的一点还是需要看指针是否指向新的地址 1 如果指向新的空间 xff0c 那么对形参处理后不会影响实参 xff0c 即参数没有传回 xff0c 因为实参的指针地址和形参指针的地址不同 xff0c 对不同
  • 建立二叉树

    一颗二叉树 创建结点 typedef struct node int data node lchild node rchild node lchild NULL rchild NULL Tree tree 建树 tree bulid tre
  • 学习STL的历程——关联容器

    STL模板库包括了容器 算法 迭代器 仿函数 适配器 分配器 主要谈谈容器 STL中的容器有序列容器和关联容器 xff0c 容器适配器等 1 xff09 序列容器 xff08 以线性序列的方式存储元素 xff0c 没对元素进行排序 xff0
  • STL三角网格模型体积计算

    float STLVolume float vols 61 0 for int i 61 0 i lt Tmesh gt faces size i 43 43 vec p1 61 Tmesh gt vertices Tmesh gt fac