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