Blender V4.3
usd_writer_points.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2024 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4#pragma once
5
7
8#include <pxr/usd/usdGeom/points.h>
9
10struct Main;
11struct PointCloud;
12
13namespace blender::bke {
14class AttributeIter;
15} // namespace blender::bke
16
17namespace blender::io::usd {
18
19/* Writer for USD points. */
20class USDPointsWriter final : public USDAbstractWriter {
21 public:
23 ~USDPointsWriter() final = default;
24
25 protected:
26 virtual void do_write(HierarchyContext &context) override;
27
28 private:
29 void write_generic_data(const bke::AttributeIter &attr,
30 const pxr::UsdGeomPoints &usd_points,
31 pxr::UsdTimeCode timecode);
32
33 void write_custom_data(const PointCloud *points,
34 const pxr::UsdGeomPoints &usd_points,
35 pxr::UsdTimeCode timecode);
36
37 void write_velocities(const PointCloud *points,
38 const pxr::UsdGeomPoints &usd_points,
39 pxr::UsdTimeCode timecode);
40
41 void set_extents(const pxr::UsdPrim &prim, pxr::UsdTimeCode timecode);
42};
43
44} // namespace blender::io::usd
virtual void do_write(HierarchyContext &context) override
USDPointsWriter(const USDExporterContext &ctx)
bool override
Definition wm_files.cc:1167