Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/io/wavefront_obj/importer/obj_import_nurbs.hh')
-rw-r--r--source/blender/io/wavefront_obj/importer/obj_import_nurbs.hh38
1 files changed, 38 insertions, 0 deletions
diff --git a/source/blender/io/wavefront_obj/importer/obj_import_nurbs.hh b/source/blender/io/wavefront_obj/importer/obj_import_nurbs.hh
new file mode 100644
index 00000000000..56ac299283d
--- /dev/null
+++ b/source/blender/io/wavefront_obj/importer/obj_import_nurbs.hh
@@ -0,0 +1,38 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+/** \file
+ * \ingroup obj
+ */
+
+#pragma once
+
+#include "BKE_curve.h"
+
+#include "BLI_utility_mixins.hh"
+
+#include "DNA_curve_types.h"
+
+#include "obj_import_objects.hh"
+
+namespace blender::io::obj {
+
+/**
+ * Make a Blender NURBS Curve block from a Geometry of GEOM_CURVE type.
+ */
+class CurveFromGeometry : NonMovable, NonCopyable {
+ private:
+ const Geometry &curve_geometry_;
+ const GlobalVertices &global_vertices_;
+
+ public:
+ CurveFromGeometry(const Geometry &geometry, const GlobalVertices &global_vertices)
+ : curve_geometry_(geometry), global_vertices_(global_vertices)
+ {
+ }
+
+ Object *create_curve(Main *bmain, const OBJImportParams &import_params);
+
+ private:
+ void create_nurbs(Curve *curve);
+};
+} // namespace blender::io::obj