如何在ArcGIS中绘制矢量网格图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在ArcGIS中绘制矢量网格图相关的知识,希望对你有一定的参考价值。

实现用网格把研究区进行分割的目的

参考技术A 先生成网格线:
1.在arccatalog中:new→feature class:输入名称和别名,类型为:line features并定义其空间参考以及属性字段,
2.在arcmap中,添加此文件。并按网格值输入网格,全部输完以后,注意保存文件。全部选中,执行planarize lines,按钮。线就自动剪断了。再保存线。(用cad绘好网格,再转入,更快)
3.运行feature to polygon工具,生成了面文件。
4.用生成的面文件与其他feature class进行空间分析,就实现了研究区分割的目的。
希望对你有用!本回答被提问者采纳

如何在 OpenGL 中绘制 3D 矢量?

【中文标题】如何在 OpenGL 中绘制 3D 矢量?【英文标题】:How to draw a 3D vector in OpenGL? 【发布时间】:2014-10-20 02:47:05 【问题描述】:

我正在对粒子的运动进行 3D 模拟,并且我想在某些位置绘制代表电场的箭头。 我在 Blender 中制作了一个箭头网格并将其导出为 .obj 以便我可以在我的代码中使用它(我制作了一个 .obj 加载器),但我似乎无法正确旋转它以使其指向正确的方向,即使我检查了电场矢量是否正确计算。 我也得到了一些奇怪的结果。例如,如果向量应该指向上方,它会指向下方,但是当我注释掉沿 x 轴旋转的代码时,箭头会像预期的那样指向下方。然后如果它应该指向右边,它指向内部(朝向负 z 轴),但是当我注释掉 y 轴上的旋转时,它指向右边。

这是我的箭头旋转和渲染代码:

void Render(Vector3 cameraPos)

    glScalef(field.length() * ArrowLength,1.0,1.0);
    glTranslatef(0,0,_zdefault);
    glRotatef(Entity::yangle,0,1,0);
    glTranslatef(pos.getX() + cameraPos.getX(), pos.getY() + cameraPos.getY(), pos.getZ() + cameraPos.getZ() - _zdefault);

    glRotatef(atan2(field.getZ(),field.getY()) * 180/M_PI, 1.0,0.0,0.0);
    glRotatef(atan2(field.getX(),field.getZ()) * 180/M_PI, 0.0,1.0,0.0);
    glRotatef(atan2(field.getY(),field.getX()) * 180/M_PI, 0.0,0.0,1.0);

    glBindTexture(GL_TEXTURE_2D,arrowTexture);

    glCallList(arrow);
    glLoadIdentity();
;

field 是表示电场的向量。 线条

glTranslatef(0,0,_zdefault);
glRotatef(Entity::yangle,0,1,0);

在那里我可以旋转整个场景,有点像在 Blender 中围绕它旋转。 此外,Vector3 只是我编写的一个简单的 Vector 类,具有非常基本的功能。就像我说的那样,矢量计算没有问题,我检查了一下,我只是不能使用矢量来正确旋转物体。

我感觉我的角度对于我使用 atan2 的 glRotatef 有点搞砸了,但我仍然不明白这会如何影响前面描述的旋转。

有没有什么方法可以仅基于矢量分量来旋转某些东西?

【问题讨论】:

与其处理旋转角度,直接构建旋转矩阵更容易。在这里查看我的答案,这是针对同一类型的问题:***.com/questions/24705225/…。 未转换的箭头指向什么方向?上面的答案是针对指向正 z 方向的原始向量。它应该很容易适应您的原始箭头,例如x 方向上的点。但如有必要,我可以写一个新版本的答案。 【参考方案1】:

首先,您可能不应该使用 glRotatef glTranslatef 等遗留管道,而是使用着色器并管理您自己的矩阵。

此外,最好使用lookAt 转换,使用field 作为您的方向方向,一些向上作为up 向量

要旋转整个场景,您只需定义一个中心,并在平移后使用相同的变换围绕该中心旋转所有矢量

【讨论】:

以上是关于如何在ArcGIS中绘制矢量网格图的主要内容,如果未能解决你的问题,请参考以下文章

Arcgis中栅格山脊线如何转换成矢量线

如何使用arcgis将栅格图转为矢量图,

arcgis下如何矢量化rgb彩色栅格图?

如何使用arcgis将栅格图转为矢量图,

arcgis如何加载需要矢量化的地图?

arcgis如何提取全国矢量图的一部分