|
Blender V5.0
|
#include <obj_export_nurbs.hh>
Inherits blender::io::obj::IOBJCurve, and blender::NonCopyable.
Public Member Functions | |
| virtual | ~OBJLegacyCurve () override=default |
| Public Member Functions inherited from blender::io::obj::IOBJCurve | |
| virtual | ~IOBJCurve ()=default |
OBJLegacyCurve | |
| OBJLegacyCurve (const Depsgraph *depsgraph, Object *curve_object) | |
| const float4x4 & | object_transform () const override |
| const char * | get_curve_name () const override |
| int | total_splines () const override |
| int | total_spline_vertices (int spline_index) const override |
| int | num_control_points_u (int spline_index) const override |
| int | num_control_points_v (int spline_index) const override |
| int | get_nurbs_degree_u (int spline_index) const override |
| int | get_nurbs_degree_v (int spline_index) const override |
| bool | get_cyclic_u (int spline_index) const override |
| Span< float > | get_knots_u (int spline_index, Vector< float > &buffer) const override |
| Span< float3 > | vertex_coordinates (int spline_index, Vector< float3 > &dynamic_point_buffer) const override |
Definition at line 115 of file obj_export_nurbs.hh.
| blender::io::obj::OBJLegacyCurve::OBJLegacyCurve | ( | const Depsgraph * | depsgraph, |
| Object * | curve_object ) |
Definition at line 169 of file obj_export_nurbs.cc.
References DEG_get_evaluated(), and depsgraph.
|
overridevirtualdefault |
|
overridevirtual |
Implements blender::io::obj::IOBJCurve.
Definition at line 181 of file obj_export_nurbs.cc.
|
overridevirtual |
True if the indexed spline is cyclic along U dimension.
Implements blender::io::obj::IOBJCurve.
Definition at line 242 of file obj_export_nurbs.cc.
References CU_NURB_CYCLIC, and Nurb::flagu.
Referenced by num_control_points_u().
|
overridevirtual |
Get the knot vector for the U-dimension. Computes knots using the buffer if necessary.
Implements blender::io::obj::IOBJCurve.
Definition at line 248 of file obj_export_nurbs.cc.
References blender::bke::curves::nurbs::calculate_knots(), CU_NURB_CUSTOM, CU_NURB_CYCLIC, flag, Nurb::flagu, get_nurbs_degree_u(), blender::bke::knots_mode_from_legacy(), blender::bke::curves::nurbs::knots_num(), Nurb::knotsu, Nurb::pntsu, and blender::Vector< T, InlineBufferCapacity, Allocator >::resize().
|
overridevirtual |
Get the degree of the NURBS spline for the U-dimension.
Implements blender::io::obj::IOBJCurve.
Definition at line 230 of file obj_export_nurbs.cc.
References CU_POLY, Nurb::orderu, and Nurb::type.
Referenced by get_knots_u(), and num_control_points_u().
|
overridevirtual |
Get the degree of the NURBS spline for the V-dimension.
Implements blender::io::obj::IOBJCurve.
Definition at line 236 of file obj_export_nurbs.cc.
References CU_POLY, Nurb::orderv, and Nurb::type.
|
overridevirtual |
Get the number of control points on the U-dimension.
Implements blender::io::obj::IOBJCurve.
Definition at line 216 of file obj_export_nurbs.cc.
References blender::bke::curves::nurbs::control_points_num(), get_cyclic_u(), get_nurbs_degree_u(), and Nurb::pntsu.
|
overridevirtual |
Get the number of control points on the V-dimension.
Implements blender::io::obj::IOBJCurve.
Definition at line 224 of file obj_export_nurbs.cc.
References Nurb::pntsv.
|
overridevirtual |
Implements blender::io::obj::IOBJCurve.
Definition at line 191 of file obj_export_nurbs.cc.
|
overridevirtual |
| spline_index | Zero-based index of spline of interest. |
Implements blender::io::obj::IOBJCurve.
Definition at line 196 of file obj_export_nurbs.cc.
References Nurb::pntsu, and Nurb::pntsv.
|
overridevirtual |
Number of splines associated with the Curve object.assign_if_different
Implements blender::io::obj::IOBJCurve.
Definition at line 186 of file obj_export_nurbs.cc.
References BLI_listbase_count().
|
overridevirtual |
Get coordinates for the (non-looped) spline control points.
Implements blender::io::obj::IOBJCurve.
Definition at line 202 of file obj_export_nurbs.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), Nurb::bp, copy_v3_v3(), i, Nurb::pntsu, blender::Vector< T, InlineBufferCapacity, Allocator >::resize(), and BPoint::vec.