【四】3D Object Model之创建Creation——write_object_model_3d()算子

2023-11-29 14:52

本文主要是介绍【四】3D Object Model之创建Creation——write_object_model_3d()算子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


😊😊😊欢迎来到本博客😊😊😊

🌟🌟🌟 Halcon算子太多,学习查找都没有系统的学习查找路径,本专栏主要分享Halcon各类算子含义及用法,有时间会更新具体案例。

😊😊😊 具体食用方式:可以点击本专栏【Halcon算子快速查找】–>搜索你要查询的算子名称;或者点击Halcon算子汇总博客,即可食用。

🎁🎁🎁支持:如果觉得博主的文章还不错或者您用得到的话,可以悄悄关注一下博主哈,如果三连收藏支持就更好啦!这就是给予我最大的支持!😙😙😙


文章目录

  • 学习目标
  • 学习内容
    • 1、write_object_model_3d()
      • Halcon例程
  • 【3D Object Model之创建Creation】 待更新算子
  • 汇总

学习目标

  • write_object_model_3d()

学习内容

算子简介

函数名解释
write_object_model_3d()保存一个3D对象模型。

1、write_object_model_3d()

  write_object_model_3d( : : ObjectModel3D, FileType, FileName, GenParamName, GenParamValue : )

  函数说明:操作符write_object_model_3d将3d对象模型ObjectModel3D写入文件FileName。对象模型可以用read_object_model_3d再次读取,也可以导入到适当的CAD程序中。请注意,基元只能以HALCON格式“om3”存储。如果需要以另一种格式存储基元,则必须事先调用操作符sample_object_model_3d。然而,这导致了基元到3D点的转换,并且因此仅对应于基元的近似。
  所有坐标都以米为单位。如果以后使用read_object_model_3d读取文件,则必须将参数Scale设置为’m’以避免缩放数据。

  函数参数:
    ObjectModel3D输入 3D对象模型句柄;
    FileType输入写入的文件的类型;默认:'om3'参考: 'dxf', 'obj', 'off', 'om3', 'ply', 'ply_binary', 'stl', 'stl_ascii', 'stl_binary'具体如下:

参数名解释
'om3'使用此格式可以通过write_object_model_3d函数将文件写入。此格式的默认文件扩展名为'om3'
'dxf'AUTOCAD格式。此格式的默认文件扩展名为'dxf'
'off'Object File Format(.off)。这是一种基于ASCII的简单格式,可以存储3D点和多边形。不支持二进制OFF格式。此格式的默认文件扩展名为'off'
'ply'多边形文件格式(也称为斯坦福三角形格式)。这是一种简单的格式,可以存储3D点、点法线和多边形。HALCON支持该格式的ASCII和二进制版本。此格式的默认文件扩展名为'ply'
'obj'OBJ文件格式,也称为’Wavefront OBJ格式’。这是一种基于ASCII的格式,可以存储3D点、多边形、法线、纹理坐标、材质和其他信息。HALCON支持点('v’行)和多边形面(‘f’行)。其他实体将被忽略。此格式的默认文件扩展名为'obj'
'stl''stl_binary''stl_ascii'STL文件格式,也称为’立体光刻格式’、‘表面三角化语言’、‘标准三角化语言’和’标准三角剖分语言’。该格式存储三角形和三角形法线。然而,由于HALCON 3D对象模型不支持三角形法线,只读取三角形,而忽略三角形法线。如果需要,法线会从三角形重新计算。HALCON同时支持该格式的ASCII和二进制版本。如果设置为’stl’,HALCON将自动检测格式类型。将类型设置为’stl_binary’或’stl_ascii’将强制使用相应的格式。此格式的默认文件扩展名为'stl'

    FileName输入写入的文件的名称;参考.off, .ply, .dxf, .om3, .obj, .stl
    GenParamName输入通用参数的名称;
    GenParamValue输入通用参数的值;

  可以设置一组附加的可选参数。参数的名称和值分别在GenParamNameGenParamValue中传递。某些可选参数只能针对特定的文件类型进行设置。GenParamName具有以下值:

参数名解释
'invert_normals'在保存三维对象模型之前反转法线和面方向。如果此值设置为“true”,则对于'off''ply''obj''stl'格式,面(三角形和多边形)的方向将反转。对于支持点法线( 'ply''obj')的格式,在将所有法线写入光盘之前,将反转所有法线。请注意,对于类型'om3''dxf',该参数没有任何作用。

Halcon例程


【3D Object Model之创建Creation】 待更新算子

  • clear_object_model_3d()
  • copy_object_model_3d()
  • deserialize_object_model_3d()
  • gen_box_object_model_3d()
  • gen_cylinder_object_model_3d()
  • gen_empty_object_model_3d()
  • gen_object_model_3d_from_points()
  • gen_plane_object_model_3d()
  • gen_sphere_object_model_3d()
  • gen_sphere_object_model_3d_center()
  • read_object_model_3d()
  • serialize_object_model_3d()
  • set_object_model_3d_attrib()
  • set_object_model_3d_attrib_mod()
  • union_object_model_3d()
  • write_object_model_3d()

汇总

  本专栏博客汇总:Halcon算子汇总


🚶🚶🚶今天的文章就到这里啦~
喜欢的话,点赞👍、收藏⭐️、关注💟哦 ~

这篇关于【四】3D Object Model之创建Creation——write_object_model_3d()算子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/433258

相关文章

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

使用Python绘制3D堆叠条形图全解析

《使用Python绘制3D堆叠条形图全解析》在数据可视化的工具箱里,3D图表总能带来眼前一亮的效果,本文就来和大家聊聊如何使用Python实现绘制3D堆叠条形图,感兴趣的小伙伴可以了解下... 目录为什么选择 3D 堆叠条形图代码实现:从数据到 3D 世界的搭建核心代码逐行解析细节优化应用场景:3D 堆叠图

python如何创建等差数列

《python如何创建等差数列》:本文主要介绍python如何创建等差数列的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python创建等差数列例题运行代码回车输出结果总结python创建等差数列import numpy as np x=int(in

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

如何使用Maven创建web目录结构

《如何使用Maven创建web目录结构》:本文主要介绍如何使用Maven创建web目录结构的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录创建web工程第一步第二步第三步第四步第五步第六步第七步总结创建web工程第一步js通过Maven骨架创pytho

MySQL 用户创建与授权最佳实践

《MySQL用户创建与授权最佳实践》在MySQL中,用户管理和权限控制是数据库安全的重要组成部分,下面详细介绍如何在MySQL中创建用户并授予适当的权限,感兴趣的朋友跟随小编一起看看吧... 目录mysql 用户创建与授权详解一、MySQL用户管理基础1. 用户账户组成2. 查看现有用户二、创建用户1. 基

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创