Blender V4.3
obj_export_nurbs.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
9#pragma once
10
11#include "BLI_utility_mixins.hh"
12
13#include "DNA_curve_types.h"
14
15namespace blender::io::obj {
16
24 private:
25 const Object *export_object_eval_;
26 const Curve *export_curve_;
27 float world_axes_transform_[4][4];
28
29 public:
30 OBJCurve(const Depsgraph *depsgraph, const OBJExportParams &export_params, Object *curve_object);
31
32 const char *get_curve_name() const;
33 int total_splines() const;
38 int total_spline_vertices(int spline_index) const;
42 float3 vertex_coordinates(int spline_index, int vertex_index, float global_scale) const;
47 int total_spline_control_points(int spline_index) const;
51 int get_nurbs_degree(int spline_index) const;
55 short get_nurbs_flagu(int spline_index) const;
56
57 private:
61 void set_world_axes_transform(eIOAxis forward, eIOAxis up);
62};
63
64} // namespace blender::io::obj
eIOAxis
int total_spline_vertices(int spline_index) const
int total_spline_control_points(int spline_index) const
short get_nurbs_flagu(int spline_index) const
float3 vertex_coordinates(int spline_index, int vertex_index, float global_scale) const
int get_nurbs_degree(int spline_index) const
const char * get_curve_name() const
OBJCurve(const Depsgraph *depsgraph, const OBJExportParams &export_params, Object *curve_object)
const Depsgraph * depsgraph