首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在meshlabserver .mlx脚本中设置统一网格重采样的参数

如何在meshlabserver .mlx脚本中设置统一网格重采样的参数
EN

Stack Overflow用户
提问于 2017-04-18 19:20:10
回答 1查看 1.9K关注 0票数 2

我想应用均匀网格重采样过滤器自动到一组网格,每一个具有不同的几何。通过保存来自.mlx的输出,我为此获得了一个Filters:Show current filter script脚本。但是,脚本中的参数似乎是为我使用的网格的特定几何学设置的:

代码语言:javascript
运行
复制
<filter name="Uniform Mesh Resampling">
  <Param type="RichAbsPerc" value="1.1632" min="0" name="CellSize" max="232.648"/>
  <Param type="RichAbsPerc" value="0.93059" min="-46.5296" name="Offset" max="46.5296"/>
  <Param type="RichBool" value="true" name="mergeCloseVert"/>
  <Param type="RichBool" value="false" name="discretize"/>
  <Param type="RichBool" value="true" name="multisample"/>
  <Param type="RichBool" value="true" name="absDist"/>
 </filter>

我想要的是将单元格大小设置为0.5%,偏移量设置为51%,并使Meshlab从我正在处理的每个网格的几何形状中得到最小和最大的图形。我怎么能做到呢?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-20 19:44:09

我找到了一个解决方案:首先,我使用我编写的命令行-- Mesh几何学--来获取网格的大小(网格几何学在https://github.com/r03ert0/meshgeometry上可用)。然后,使用bash生成meshlabserver脚本,如下所示:

代码语言:javascript
运行
复制
diag=$(meshgeometry -i $holes_surf -size|cut -d' ' -f 2|awk -F, '{print sqrt($1**2+$2**2+$3**2)}')
diag5=$(echo $diag|awk '{print $1/5}');
precision=$(echo $diag|awk '{print $1*0.005}');
offset=$(echo $diag|awk '{print $1/5*2*0.01}');

cat>"script.mlx"<<EOF
<!DOCTYPE FilterScript>
<FilterScript>
 <filter name="Uniform Mesh Resampling">
  <Param type="RichAbsPerc" value="$precision" min="0" name="CellSize" max="$diag"/>
  <Param type="RichAbsPerc" value="$offset" min="-$diag5" name="Offset" max="$diag5"/>
  <Param type="RichBool" value="false" name="mergeCloseVert"/>
  <Param type="RichBool" value="false" name="discretize"/>
  <Param type="RichBool" value="true" name="multisample"/>
  <Param type="RichBool" value="true" name="absDist"/>
 </filter>

</FilterScript>
EOF

之后,我可以用这样的script.mlx文件调用script.mlx

代码语言:javascript
运行
复制
meshlabserver -i source-mesh.ply -o dest-mesh.ply -s "script.mlx"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43480518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档