Mayavi 纹理覆盖整个表面

2023-11-29

我想做类似的事情:使用 python 和 Mayavi2 进行 3D 地形可视化

作为输入,我有一个图像(地图),其宽度和高度以像素为单位定义。对于此图像/地图,我获得了图像/地图所代表的表面(范围)的数字高程模型。范围由最小/最大经度和纬度值组成。对于高程模型,我使用与图像像素相同数量的值插入网格。

im # PIL Image object

pixel_x, pixel_y = im.size
ext = [lon_min, lon_max, lat_min, lat_max]

xstep = float(ext[1] - ext[0]) / float(pixel_x)
ystep = float(ext[3] - ext[2]) / float(pixel_y)     
X, Y = np.mgrid[ext[0]:ext[1]:xstep,ext[2]:ext[3]:ystep]
Z = griddata(coords, elevations, (X, Y), method='cubic', fill_value=-1)

从 X、Y、Z 绘制曲面

surf = mlab.surf(X,Y,Z, color=(1.0,1.0,1.0)) 

现在我想将图像覆盖在表面上:

img = image_from_array(np.array(im))
texture_img = tvtk.Texture(interpolate = 1)
texture_img.input = img

surf.actor.enable_texture = True
surf.actor.tcoord_generator_mode = 'plane'
surf.actor.actor.texture = texture_img

This gives me a result as in Resulting file with wrong texture Here I used the matplotlib lena version: lena.png

在边界处,纹理是重复的,并且没有拉伸到整个表面区域(如我所愿)。我想实现图像的任何像素都不会“重复”。

我该如何防止纹理在边界处“重叠”?

我尝试将 X 和 Y 值标准化为 0 到 1 之间,但这没有帮助。


None

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

Mayavi 纹理覆盖整个表面 的相关文章

  • Python:在列表理解本身中引用列表理解?

    这个想法刚刚出现在我的脑海中 假设您出于某种原因想要通过 Python 中的列表理解来获取列表的唯一元素 i if i in created comprehension else 0 for i in 1 2 1 2 3 1 2 0 0 3
  • Python 的键盘中断不会中止 Rust 函数 (PyO3)

    我有一个使用 PyO3 用 Rust 编写的 Python 库 它涉及一些昂贵的计算 单个函数调用最多需要 10 分钟 从 Python 调用时如何中止执行 Ctrl C 好像只有执行结束后才会处理 所以本质上没什么用 最小可重现示例 Ca
  • 将 saxon 与 python 结合使用

    我需要使用 python 处理 XSLT 目前我正在使用仅支持 XSLT 1 的 lxml 现在我需要处理 XSLT 2 有没有办法将 saxon XSLT 处理器与 python 一起使用 有两种可能的方法 设置一个 HTTP 服务 接受
  • 使 django 服务器可以在 LAN 中访问

    我已经安装了Django服务器 可以如下访问 http localhost 8000 get sms http 127 0 0 1 8000 get sms 假设我的IP是x x x x 当我这样做时 从同一网络下的另一台电脑 my ip
  • Python(Selenium):如何通过登录重定向/组织登录登录网站

    我不是专业程序员 所以请原谅任何愚蠢的错误 我正在做一些研究 我正在尝试使用 Selenium 登录数据库来搜索大约 1000 个术语 我有两个问题 1 重定向到组织登录页面后如何使用 Selenium 登录 2 如何检索数据库 在我解决
  • 是否可以忽略一行的pyright检查?

    我需要忽略一行的pyright 检查 有什么特别的评论吗 def create slog group SLogGroup data Optional dict None SLog insert one SLog group group da
  • Python pickle:腌制对象不等于源对象

    我认为这是预期的行为 但想检查一下 也许找出原因 因为我所做的研究结果是空白 我有一个函数可以提取数据 创建自定义类的新实例 然后将其附加到列表中 该类仅包含变量 然后 我使用协议 2 作为二进制文件将该列表腌制到文件中 稍后我重新运行脚本
  • 如何在Python中获取葡萄牙语字符?

    我正在研究葡萄牙语 角色看起来很奇怪 我怎样才能解决这个问题 代码 import feedparser import random Vou definir os feeds feeds conf feedurl http pplware s
  • Pygame:有没有简单的方法可以找到按下的任何字母数字的字母/数字?

    我目前正在开发的游戏需要让人们以自己的名义在高分板上计时 我对如何处理按键有点熟悉 但我只处理过寻找特定的按键 有没有一种简单的方法可以按下任意键的字母 而不必执行以下操作 for event in pygame event get if
  • 在f字符串中转义字符[重复]

    这个问题在这里已经有答案了 我遇到了以下问题f string gt gt gt a hello how to print hello gt gt gt f a a gt gt gt f a File
  • Pandas:merge_asof() 对多行求和/不重复

    我正在处理两个数据集 每个数据集具有不同的关联日期 我想合并它们 但因为日期不完全匹配 我相信merge asof 是最好的方法 然而 有两件事发生merge asof 不理想的 数字重复 数字丢失 以下代码是一个示例 df a pd Da
  • Jupyter Notebook 内核一直很忙

    我已经安装了 anaconda 并且 python 在 Spyder IPython 等中工作正常 但是我无法运行 python 笔记本 内核被创建 它也连接 但它始终显示黑圈忙碌符号 防火墙或防病毒软件没有问题 我尝试过禁用两者 我也无法
  • 对年龄列进行分组/分类

    我有一个数据框说df有一个柱子 Ages gt gt gt df Age 0 22 1 38 2 26 3 35 4 35 5 1 6 54 我想对这个年龄段进行分组并创建一个像这样的新专栏 If age gt 0 age lt 2 the
  • 有人用过 Dabo 做过中型项目吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们正处于一个新的 ERP 风格的客户端 服务器应用程序的开始阶段 该应用程序是作为 Python 富客户端开发的 我们目前正在评估 Dabo
  • 如何计算 pandas 数据帧上的连续有序值

    我试图从给定的数据帧中获取连续 0 值的最大计数 其中包含来自 pandas 数据帧的 id date value 列 如下所示 id date value 354 2019 03 01 0 354 2019 03 02 0 354 201
  • 使用其构造函数初始化 OrderedDict 以便保留初始数据的顺序的正确方法?

    初始化有序字典 OD 以使其保留初始数据的顺序的正确方法是什么 from collections import OrderedDict Obviously wrong because regular dict loses order d O
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某
  • 导入错误:没有名为 site 的模块 - mac

    我已经有这个问题几个月了 每次我想获取一个新的 python 包并使用它时 我都会在终端中收到此错误 ImportError No module named site 我不知道为什么会出现这个错误 实际上 我无法使用任何新软件包 因为每次我
  • 如何将输入读取为数字?

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 Why are x and y下面的代码中使用字符串而不是整数 注意 在Python 2
  • Statsmodels.formula.api OLS不显示截距的统计值

    我正在运行以下源代码 import statsmodels formula api as sm Add one column of ones for the intercept term X np append arr np ones 50

随机推荐

  • 如何在 awk 表达式中使用变量

    我正在尝试执行这个命令 sed bla bla filename awk printf s s entry 3f 3f 3f 3f 1 3 4 5 6 7 但问题是 我希望 3f 部分是可变的 因此 在一种情况下 它可能是 3f 在另一种情
  • 处理带参数的点击手势 iphone / ipad

    当我的点击手势触发时 我需要发送一个额外的参数 但我一定做了一些非常愚蠢的事情 我在这里做错了什么 这是我正在创建和添加的手势 UITapGestureRecognizer tapGesture UITapGestureRecognizer
  • ProcessBuilder 不会停止

    我正在尝试使用 Linux 下的 ProcessBuilder 类将 mp3 文件解码为 wav 文件 由于某种原因 该过程不会停止 因此我必须手动取消它 有人可以给我一个提示吗 我认为引用的代码很容易重现 import java io p
  • 验证数学方程 C++ [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我目前正在尝试构建一个非常简单的编译器 我创建了一个函数 使用调车场算法将中缀表示法的数学方程转换为 RPN 但是我遇到了问题 我没有在转换函数中包含错误检查 因此我想知道是否有
  • 在 PHP 中的嵌套关​​联数组中搜索值并返回其路径

    我正在尝试在 PHP 中的嵌套关 联数组中搜索值 很像 array search 但嵌套 我需要导致该特定值的所有键 我没有看到任何关于此特定功能的帮助 所以现在我要问 其他示例似乎返回数组中的所有值 而不仅仅是单个键 值对的路径 func
  • MonoTouch Enterprise - 部署

    我们公司已开始构建用于企业部署的 MonoTouch iPad iPhone 应用程序 如何使用该应用程序并创建 ipa 文件以上传到我们的 MDM 服务器 ipa 文件基本上是一个美化的 zip 文件 您可以选择以下几条路线 将项目导出到
  • 带路径的 PHP 数组中的递归搜索

    我有这个干草堆数组 array name gt Intro id gt 123 children gt name gt foo id gt 234 children gt name gt mur id gt 445 name gt chap
  • 无法找到可安装的 ISAM 错误疑难解答

    我安装了 32 位 MS Office 2013 以及 32 位 Office 可再发行组件和一个设置为编译为 32 位的小型 C 控制台应用程序 以下代码会导致OleDbException提示 找不到可安装的 ISAM public vo
  • mysql_query 仅返回 int/fload 数据库类型的字符串类型

    我正在尝试处理 MySQL 选择结果 我的问题是下面的示例代码仅返回一个包含所有值的数组string 甚至对于包含整数和浮点数的列也要键入 sth mysql query selectstr rows array while r mysql
  • Rcpparmadillo :将 fastLM 对象转换为“lm”类型

    首先感谢您提供这么好的包裹 我希望对 fastLM 的输出运行 anova 但是 anova 只接受 lm 类型的对象 有没有办法将 fastLM 对象转换为 lm 对象 谢谢 S 首先 fastLM 存在是为了提供比lm 使其更快的方法之
  • “你好,世界!”遇到了意想不到的困难

    我想学习 Clojure 我已经下载并设置了以下小工具 Clojure 1 6 0 来自官方网站 莱宁根2 4 3 来自 GitHub 的苹果酒 0 6 0 我已经成功了 现在我正在尝试打印消息 Hello World 同时从 Emacs
  • Google 日历 API - 创建活动时邀请电子邮件不会发送给与会者

    我想使用 google api 将事件添加到 google 日历 但活动创建后 邀请电子邮件不会发送到与会者电子邮件列表 这是我的代码
  • python 正则表达式仅匹配第一个实例

    我有一个 python 代码 我正在读取证书并仅匹配根证书 例如 我的证书如下 begin certificate CZImiZPyLGQBGRYFbG9jYWwxGjAYBgoJkiaJk IasdasdassZAEZFgp2aXJ0dW
  • Android:多个警报不起作用

    在我的应用程序中 我设置了两个闹钟 在 ToogleButton 上 我将使用以下代码将其设置为打开 case R id toggleButtonTwoMonth myPrefs this getSharedPreferences myPr
  • 如何在内核中放置微秒延迟?

    我想放置微秒延迟Linux kernel 哪些函数支持它 需要添加什么头文件 你最好读书Documentation timers timers howto txt在linux内核源代码中 简而言之 您可以使用msleep unsigned
  • 为什么PWA提倡添加到主屏幕但只是创建chrome快捷方式而不是安装为apk?

    我检查所有添加到主屏幕条件 我想我在我的 PWA 中提供了所有这些 当用户访问我的 PWA 迷你信息栏时 当用户单击 添加到主屏幕 时 仅将 PWA 的快捷方式添加到主屏幕 但未安装 PWA 不在应用程序列表中 并且深层链接不起作用 UPD
  • SlimDX/DirectX9/C# - 如何访问纹理中的像素数据

    这是我在 StackOverflow 上遇到的第一个问题 万岁 我可以诚实地说 我每天都使用 StackOverflow 来处理我的工作和个人编程谜题 99 9 的情况下 我实际上也在这里找到了我需要的答案 这太棒了 我当前的问题实际上让我
  • 图像处理/超轻OCR

    我有 55 000 个图像文件 JPG 和 TIFF 格式 它们是书中的图片 每个页面的结构是这样的 一些文字 水平线 a number 一些文字 水平线 另一个号码 一些文字 任何给定页面上可以有 0 到 4 条水平线 我需要找到水平线下
  • 将 ASPX 导出为 HTML

    我们正在构建一个 CMS 该网站将由用户在 aspx 页面中构建和管理 但我们希望创建一个 HTML 的静态网站 我们现在的做法是使用我找到的代码here重载 Aspx 页面中的 Render 方法并将 HTML 字符串写入文件 这对于单个
  • Mayavi 纹理覆盖整个表面

    我想做类似的事情 使用 python 和 Mayavi2 进行 3D 地形可视化 作为输入 我有一个图像 地图 其宽度和高度以像素为单位定义 对于此图像 地图 我获得了图像 地图所代表的表面 范围 的数字高程模型 范围由最小 最大经度和纬度