21#ifndef OCCTL_HPP_IO_VRML_HPP
22#define OCCTL_HPP_IO_VRML_HPP
33namespace occtl::io_vrml
62 double file_length_unit_m = 1.0;
65 bool fill_incomplete =
true;
97inline std::pair<Graph, NodeId> read(
const std::string& thePath,
102 const ::occtl_io_vrml_read_options_t aOpts = theOptions.to_c();
104 return {Graph(aRaw), NodeId(aRoot)};
109inline void write(
const Graph& theGraph,
111 const std::string& thePath,
114 const ::occtl_io_vrml_write_options_t aOpts = theOptions.to_c();
120inline std::pair<Graph, NodeId> read_memory(
const std::vector<uint8_t>& theData,
125 const ::occtl_io_vrml_read_options_t aOpts = theOptions.to_c();
127 return {Graph(aRaw), NodeId(aRoot)};
132inline std::vector<uint8_t> write_memory(
const Graph& theGraph,
136 const ::occtl_io_vrml_write_options_t aOpts = theOptions.to_c();
139 std::vector<uint8_t> aBuffer(aSize);
RAII handle for a topology graph. Mirrors occtl_graph_t.
Definition topo.hpp:1444
::occtl_graph_t * get() const noexcept
Borrows-it pointer to the underlying C handle, for direct ABI calls.
Definition topo.hpp:1494
Session-local identity of a graph node. Mirrors occtl_node_id_t.
Definition topo.hpp:52
::occtl_node_id_t get() const noexcept
Borrows-it view of the underlying C value type, for direct ABI calls.
Definition topo.hpp:64
C++ veneer for the core module.
void check(const ::occtl_status_t theStatus)
Throw on non-OK; otherwise a no-op.
Definition core.hpp:85
Representation
VRML output representation.
Definition io_vrml.hpp:53
WriterVersion
VRML writer version.
Definition io_vrml.hpp:46
CoordinateSystem
Coordinate system used by VRML import/export conversion.
Definition io_vrml.hpp:38
OCCT-Light: VRML file I/O.
occtl_status_t occtl_io_vrml_write_memory(const occtl_graph_t *graph, occtl_node_id_t root, const occtl_io_vrml_write_options_t *options, uint8_t *out_data, size_t capacity, size_t *out_size)
@ OCCTL_IO_VRML_WRITER_VERSION_1
Definition occtl_io_vrml.h:58
@ OCCTL_IO_VRML_WRITER_VERSION_2
Definition occtl_io_vrml.h:59
@ OCCTL_IO_VRML_REPRESENTATION_SHADED
Definition occtl_io_vrml.h:68
@ OCCTL_IO_VRML_REPRESENTATION_WIREFRAME
Definition occtl_io_vrml.h:69
@ OCCTL_IO_VRML_REPRESENTATION_BOTH
Definition occtl_io_vrml.h:70
occtl_status_t occtl_io_vrml_read_memory(const uint8_t *data, size_t size, occtl_graph_t **out_graph, occtl_node_id_t *out_root, const occtl_io_vrml_read_options_t *options)
occtl_status_t occtl_io_vrml_read(const char *path, occtl_graph_t **out_graph, occtl_node_id_t *out_root, const occtl_io_vrml_read_options_t *options)
enum occtl_io_vrml_writer_version occtl_io_vrml_writer_version_t
enum occtl_io_vrml_representation occtl_io_vrml_representation_t
enum occtl_io_vrml_coordinate_system occtl_io_vrml_coordinate_system_t
occtl_status_t occtl_io_vrml_write(const occtl_graph_t *graph, occtl_node_id_t root, const char *path, const occtl_io_vrml_write_options_t *options)
@ OCCTL_IO_VRML_COORDINATE_SYSTEM_Z_UP
Definition occtl_io_vrml.h:48
@ OCCTL_IO_VRML_COORDINATE_SYSTEM_GLTF
Definition occtl_io_vrml.h:49
@ OCCTL_IO_VRML_COORDINATE_SYSTEM_Y_UP
Definition occtl_io_vrml.h:47
struct occtl_graph occtl_graph_t
Definition occtl_topo_types.h:152
Options for read. PascalCase mirror of occtl_io_vrml_read_options_t.
Definition io_vrml.hpp:61
Options for write. PascalCase mirror of occtl_io_vrml_write_options_t.
Definition io_vrml.hpp:82
Definition occtl_io_vrml.h:81
occtl_io_vrml_coordinate_system_t system_coordinate_system
Definition occtl_io_vrml.h:86
occtl_io_vrml_coordinate_system_t file_coordinate_system
Definition occtl_io_vrml.h:88
double file_length_unit_m
Definition occtl_io_vrml.h:84
int32_t fill_incomplete
Definition occtl_io_vrml.h:89
Definition occtl_io_vrml.h:104
occtl_io_vrml_representation_t representation
Definition occtl_io_vrml.h:108
occtl_io_vrml_writer_version_t writer_version
Definition occtl_io_vrml.h:107
Definition occtl_topo_types.h:50
C++ veneer for the topo module.