草庐IT

三角剖分

全部标签

c++ - 对三角形缠绕和变换感到困惑

首先,我想为这么长的问题道歉。你不必阅读它。您可以直接跳到问题部分,然后在需要时查找详细信息(我已尝试提供尽可能多的信息,因为根据我的经验,代码太多总比代码太少好)。所以,...我对三角形缠绕和变换有点困惑,我以为我理解了。我正在尝试绘制一个定义如下的立方体:constfloata=0.5f;//halfofthecubesidelengthfloatpositions[nComponents]={//frontface-a,-a,-a,a,-a,-a,a,a,-a,-a,-a,-a,a,a,-a,-a,a,-a,//backface-a,-a,a,a,a,a,a,-a,a,-a,-a

c++ - 网格面三角形的纵横比

我需要计算三角形的纵横比。我有3个点,因此我有长度和中点。我试图使用this教程(虽然在我看来它不是很多),但它非常模糊并且没有提供太多信息。有人可以详细说明,特别是在矩形创建部分,甚至可以分享一些C++代码来解决这个问题吗?James的解决方案:doubles=(a+b+c)/2.0;doubleAR=(a*b*c)/(8.0*(s-a)*(s-b)*(s-c));@詹姆斯:Cubit报告如下:FunctionNameAverageStdDevMinimumMaximum-------------------------------------------------AspectRa

c++ - 三角扇有多少个顶点用opengl

我正在学习openGL,我遇到过使用顶点缓冲对象的三角扇。如果给定要渲染的顶点数组,openGL如何决定必须使用多少顶点来构造三角形扇形。似乎可以使用任意数量的顶点。 最佳答案 这可以很容易地通过比较三角带和三角扇来解释。三角带您可能知道,三角形带是一组共享顶点的连接三角形,这样可以更有效地使用内存。(我们节省了内存,因为我们不存储所有重复的顶点)三角带示例三角扇另一方面,我们有一个三角扇,这也是一组相连的三角形。尽管所有这些三角形都有一个共同的顶点,即中心顶点。(第一个顶点总是中心)话虽如此,我们可以拍摄上面的相同图像并更改顶点的

c++ - C++判断3条边是否构成三角形

我试图在C++中检查3个边是否形成一个三角形,但我试过的所有可能数字的答案都说错了......#include#includeusingnamespacestd;intmain(){inta,b,c;cin>>a>>b>>c;if(pow(a,2)==pow(b,2)*pow(c,2)||pow(b,2)==pow(a,2)*pow(c,2)||pow(c,2)==pow(a,2)*pow(b,2))cout 最佳答案 假设a、b、c是三角形的边。因此,它必须满足以下条件:a+b>ca+c>bb+c>a所有条件都必须为真。如果其中之

c++ - 找到最大可能三角弦的总和

我有一个二叉树2/\34/\\518/\/\1692\4我想找到给定树中节点(在任意两个叶子和具有左右子节点的节点之间)的最大可能三角弦信息和。一个三角和弦将是三角弦:想象一下任意两片叶子之间的一条线,向上走向根,找到一个共同的parent(可以是parent、祖parent、祖parent,甚至是根本身)。向上移动时,对于每片叶子(对于任何叶子,我们要么只能向上移动左左......等等,要么只能右右右右......等等)意味着(左叶只会向右移动仅向上,右叶将向左仅向上移动.....因此对于任何单片叶子,我们不能在向上移动时同时向两个方向移动)..现在我们得到一个三角形..其中边可以包

c++ - 行进立方体实现 - 网格中缺少三角形

我目前正致力于通过在OpenGL中渲染示例数据集来理解和使用C++实现MarchingCubes算法。我一直遇到渲染的网格缺少三角形的问题。我看到几乎一半的三角形缺失,如下所示。填充三角形和创建四边形是否是解决问题的正确方法,还是我遗漏了一些明显的东西?我用过的边交表来自以下链接:http://paulbourke.net/geometry/polygonise/我没有使用12位条目的边缘标志数组,而是有12个if语句(显示了其中的2个)。我使用3D数组中的索引来根据边缘值(0-11)确定x、y、z的值if((edge.point1==0&&edge.point2==1)||(edge

c++ - 找到两个全等三角形之间的旋转

我正在研究3D网格解析工具。目前,我正在尝试确定3D空间中两个全等三角形之间的旋转——我们称它们为ABC和DEF。我能够将点A和D平移到同一位置,现在需要确定将DEF放置在与ABC在同一平面和同一方向,但我对数学不够熟悉,无法做到这一点。谁能告诉我如何解决这个问题?我一直在想用AB和DE的叉积来确定旋转轴,然后点积求角度,然后做四元数在他们之外;但我不知道这是否总能正确对齐它们。我对上述想法有误吗?它会始终对齐三角形吗?如果不能,找到轮换的替代方法是什么? 最佳答案 你的第一部分是将AB旋转到DE(或相反)。但这只会对齐一条边。要对

c++ - 对 VBO 中的特定三角形使用不同的纹理

我有9个由三角形组成的四边形,如下所示:我正在使用VBO来存储关于它们的数据-它们的位置和纹理坐标。我的问题是-是否可以通过仅使用一个VBO和shader使四边形5具有与其余四边形不同的纹理?:绿色代表纹理1,黄色代表纹理2。到目前为止我得到了:GLfloatvertices[]={//Positions0.0f,0.0f,...//Texturecoordinates0.0f,0.0f,...};我正在使用vertices[]数组创建VBO,然后绑定(bind)我的第一个纹理m_texture1(我也可以访问第二个-m_texture2)并调用着色器:glBindTexture(GL

c++ - 子三角形中最大元素的总和

我试过了lastquestion来自今年的CCC2019S5。问题陈述:在平行宇宙中,计算机科学中最重要的数据结构是三角形。大小为M的三角形由M行组成,第i行包含i个元素。此外,这些行必须排列成等边三角形的形状。也就是说,每一行都以通过三角形中间的垂直对称线为中心。例如,下图显示了一个大小为4的三角形:一个三角形包含子三角形。例如,上面的三角形包含十个大小为1的子三角形,六个大小为2的子三角形(其中两个是包含(3,1,2)的三角形和包含(4,6,1)的三角形),三个大小为3的子三角形(其中一个包含(2,2,1,1,4,2))。请注意,每个三角形都是其自身的子三角形。给定一个大小为N的三

c++ - 如何判断三角形网格是否凹陷?

给定一个三维三角形网格,如何确定它是凸面还是凹面?有算法来检查吗?如果是这样,定义一个公差范围以忽略小的凹陷会很有用。图片来源:http://www.rustycode.com/tutorials/convex.html 最佳答案 凸多面体maybedefined作为有限数量的半空间的交集。这些半空间实际上是刻面定义的半空间。编辑:假设您的网格实际上定义了一个多面体(即有一个“内部”和一个“外部”)你可以这样做(伪代码):foreachtrianglep=triangleplanen=normalofp(pointingoutsid