Blender V4.3
abc_writer_nurbs.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4#pragma once
5
10#include "abc_writer_abstract.h"
11#include "abc_writer_mesh.h"
12
13#include <Alembic/AbcGeom/ONuPatch.h>
14
15#include <vector>
16
17namespace blender::io::alembic {
18
20 private:
21 std::vector<Alembic::AbcGeom::ONuPatch> abc_nurbs_;
22 std::vector<Alembic::AbcGeom::ONuPatchSchema> abc_nurbs_schemas_;
23
24 public:
25 explicit ABCNurbsWriter(const ABCWriterConstructorArgs &args);
26
27 virtual void create_alembic_objects(const HierarchyContext *context) override;
28 virtual Alembic::Abc::OObject get_alembic_object() const override;
29
30 protected:
31 virtual bool is_supported(const HierarchyContext *context) const override;
32 virtual void do_write(HierarchyContext &context) override;
33 virtual bool check_is_animated(const HierarchyContext &context) const override;
34 Alembic::Abc::OCompoundProperty abc_prop_for_custom_props() override;
35};
36
38 public:
40
41 protected:
42 virtual Mesh *get_export_mesh(Object *object_eval, bool &r_needsfree) override;
43};
44
45} // namespace blender::io::alembic
virtual Mesh * get_export_mesh(Object *object_eval, bool &r_needsfree) override
ABCNurbsMeshWriter(const ABCWriterConstructorArgs &args)
virtual bool check_is_animated(const HierarchyContext &context) const override
virtual bool is_supported(const HierarchyContext *context) const override
virtual void create_alembic_objects(const HierarchyContext *context) override
ABCNurbsWriter(const ABCWriterConstructorArgs &args)
virtual void do_write(HierarchyContext &context) override
virtual Alembic::Abc::OObject get_alembic_object() const override
Alembic::Abc::OCompoundProperty abc_prop_for_custom_props() override