我试图在openlayers中使用方形多边形来获取边界框.我需要从框中获取北,南,西和东的价值.现在我正在使用:
var topleft = vectors.features[0].geometry.getVertices()[0];
Run Code Online (Sandbox Code Playgroud)
得到左上角的顶点.但是它返回一个这样的值:
POINT(-13393350.718762 4024321.5982824)
Run Code Online (Sandbox Code Playgroud)
如何从此返回点获取lat和lon值?
我正在成功地从SceneKit原语中提取矢量数据,就像问题/答案一样:
这似乎不适用于SceneKit生成的所有几何图形.我可以提取标准框,球体等,但是像倒角或更复杂的几何形状(例如来自SCNText)等特殊功能似乎并不包含在标准的SceneKit几何体中.另外:普通的SCNBox和SCNSphere只有一种几何分辨率,并且不尊重所提供的参数(例如1.0的不同尺寸).
有没有人成功从SCNText中提取几何体?
谢谢,
费利克斯
我正在尝试在立方体上绘制纹理,该立方体基本上是一个带有8个顶点和14个指示的三角形条带:
static const GLfloat vertices[8] =
{
-1.f,-1.f,-1.f,
-1.f,-1.f, 1.f,
-1.f, 1.f,-1.f,
-1.f, 1.f, 1.f,
1.f,-1.f,-1.f,
1.f,-1.f, 1.f,
1.f, 1.f,-1.f,
1.f, 1.f, 1.f
};
static const GLubyte indices[14] =
{
2, 0, 6, 4, 5, 0, 1, 2, 3, 6, 7, 5, 3, 1
};
Run Code Online (Sandbox Code Playgroud)
你可以看到它开始用4个索引绘制后面2, 0, 6, 4,然后底部有3个索引5, 0, 1然后从三角形开始只是1, 2, 3左边3, 6, 7的一个三角形,顶部是一个三角形,依此类推......
我有点迷失了如何在这个立方体上绘制纹理.这是我的纹理(你明白了):

我设法得到背面纹理,不知何故可以在前面添加一些东西,但其他4个面部完全搞砸了,我有点困惑着色器如何处理关于纹理坐标的三角形.
我能做到的最好的是:

你可以清楚地看到两侧的三角形.这些是我的纹理坐标:
static const GLfloat texCoords[] = {
0.5, 0.5,
1.0, 0.5,
0.5, 1.0,
1.0, …Run Code Online (Sandbox Code Playgroud) 我是openGL的新手,我试图将纹理映射到正方形.我在这里关注了NeHe关于纹理映射的教程:http: //insanitydesign.com/wp/wp-content/uploads/lesson06.zip
现在我看到我的图像...但它没有正确映射.下面是原始图像:http: //ge.tt/2FzsdIx
......而且我看到了什么. http://ge.tt/6y3cdIu
我使用了这个伟大的iphone教程(下面的链接)中的顶点和纹理数组,所以我希望它们已被正确映射.下面是我在Square.java中的代码的链接,谢谢!
public class Square {
// Our vertices.
private float vertices[] = {
-1.0f, 1.0f, 0.0f, // 0, Top Left
-1.0f, -1.0f, 0.0f, // 1, Bottom Left
1.0f, -1.0f, 0.0f, // 2, Bottom Right
1.0f, 1.0f, 0.0f, // 3, Top Right
};
// The order we like to connect them.
private short[] indices = { 0, 1, 2, 0, 2, 3 };
// Our vertex buffer.
private FloatBuffer vertexBuffer;
// …Run Code Online (Sandbox Code Playgroud) 我有一个包含数千个顶点的OpenGL场景,并希望将它们作为VBO/IBO传递.执行glGetIntegerv(GL_MAX_ELEMENTS_VERTICES,&maxVertices)命令显示最大2048个顶点数量的限制,尽管事实上我有一个最近的视频卡.除此之外,C中的数组仅限于int,因此最大32k个顶点.
我如何解决这些限制,无论如何显示我的所有对象?
我目前正在制作一种方法来加载嘈杂的高度图,但缺少三角形来这样做。我想制作一个算法来获取图像,它的宽度和高度并从中构建一个地形节点。
这是我到目前为止所拥有的,有点伪
Vertex* vertices = new Vertices[image.width * image.height];
Index* indices; // How do I judge how many indices I will have?
float scaleX = 1 / image.width;
float scaleY = 1 / image.height;
float currentYScale = 0;
for(int y = 0; y < image.height; ++y) {
float currentXScale = 0;
for (int x = 0; x < image.width; ++x) {
Vertex* v = vertices[x * y];
v.x = currentXScale;
v.y = currentYScale;
v.z = image[x,y];
currentXScale += scaleX;
} …Run Code Online (Sandbox Code Playgroud) 我试图将两个几何/网格(红色和蓝色)合并为一个独特的几何/网格.但是在创建一个新几何体并应用geometry.merge()之后,我发现所有内部顶点和面仍然存在(绿色区域).
我想删除所有额外的信息,因为它会在渲染的面上产生视觉毛刺,而且我也无法正确计算合并的体积.我需要像最后一张图片一样的东西,一个只包含最小外部/外部的网格面和顶点,删除内部的.
我尝试应用ThreeCSG来减去网格,但我发现它在尝试加载大型模型时不断崩溃.我还尝试使用raycaster来检测常见的面孔,但这对大型模型的性能也有很大的影响.
ThreeCSG是唯一的好选择吗?但由于我不能在每个模型上使用它,我应该丢弃它.我想快速应用一些不太依赖于网格三角形数量的东西.
是否有任何方法(如在symfony应用程序中)列出vertx服务器上的所有可用/寄存器路由?我正面临一个问题,即我的注册路线在运行的休息测试中返回404.
如果你想在观看平截头体中一次渲染一个包含数千个多边形的大型景观,以及用户的视点不断变化,那么使用VAO或VBO是否切实可行?
我的意思是,每次玩家的位置或相机旋转发生变化时,您都必须重新计算顶点数据,以便正确地剔除任何不再看到的顶点或场景,以保持良好的FPS计数.但是在这样做时,你的FPS计数会下降,因为你正在不断地重新打包所有缓冲区.
那么在立即模式下使用这两种方法仍然有益吗?
我的猜测是肯定的,因为使用立即模式,你也可以重新计算每一帧的所有顶点,只是略有不同.可悲的是,我没有太多的背景,我很困惑,因为互联网上有关于这个主题的混合信息.
我有一些变形目标工作:
https://jsfiddle.net/3wtwzuh3/2/ (使用滑块控件查看变形)
但是,我希望能够在变形后访问顶点的新位置。如果您在链接的示例中注意到,我正在显示立方体第一个顶点的 y 坐标并且它没有更新!
// This Y vertex doesn't seem to update!
elInfo.innerHTML = geometry.vertices[0].y;
Run Code Online (Sandbox Code Playgroud)
是否有可能获得新职位?我试过设置各种标志,但没有运气。
谢谢!
请注意,此示例仅用于解决问题,在我的实际项目中它稍微复杂一些(我需要顶点数据!)。