Blender V5.0
blender::io::obj::OBJCurves Class Reference

#include <obj_export_nurbs.hh>

Inherits blender::io::obj::IOBJCurve, and blender::NonCopyable.

Public Member Functions

virtual ~OBJCurves () override=default
OBJCurves
 OBJCurves (const bke::CurvesGeometry &curve, const float4x4 &transform, const std::string &name)
const float4x4object_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< floatget_knots_u (int spline_index, Vector< float > &buffer) const override
Span< float3vertex_coordinates (int spline_index, Vector< float3 > &dynamic_point_buffer) const override
Public Member Functions inherited from blender::io::obj::IOBJCurve
virtual ~IOBJCurve ()=default

Detailed Description

Definition at line 89 of file obj_export_nurbs.hh.

Constructor & Destructor Documentation

◆ OBJCurves()

blender::io::obj::OBJCurves::OBJCurves ( const bke::CurvesGeometry & curve,
const float4x4 & transform,
const std::string & name )

Definition at line 89 of file obj_export_nurbs.cc.

References name, and transform().

◆ ~OBJCurves()

virtual blender::io::obj::OBJCurves::~OBJCurves ( )
overridevirtualdefault

Member Function Documentation

◆ get_curve_name()

const char * blender::io::obj::OBJCurves::get_curve_name ( ) const
overridevirtual

Implements blender::io::obj::IOBJCurve.

Definition at line 101 of file obj_export_nurbs.cc.

◆ get_cyclic_u()

bool blender::io::obj::OBJCurves::get_cyclic_u ( int spline_index) const
overridevirtual

True if the indexed spline is cyclic along U dimension.

Implements blender::io::obj::IOBJCurve.

Definition at line 138 of file obj_export_nurbs.cc.

Referenced by num_control_points_u().

◆ get_knots_u()

Span< float > blender::io::obj::OBJCurves::get_knots_u ( int spline_index,
Vector< float > & buffer ) const
overridevirtual

Get the knot vector for the U-dimension. Computes knots using the buffer if necessary.

Implements blender::io::obj::IOBJCurve.

Definition at line 143 of file obj_export_nurbs.cc.

References blender::bke::curves::nurbs::calculate_knots(), blender::bke::curves::nurbs::knots_num(), blender::Vector< T, InlineBufferCapacity, Allocator >::resize(), and Span< T >::size().

◆ get_nurbs_degree_u()

int blender::io::obj::OBJCurves::get_nurbs_degree_u ( int spline_index) const
overridevirtual

Get the degree of the NURBS spline for the U-dimension.

Implements blender::io::obj::IOBJCurve.

Definition at line 128 of file obj_export_nurbs.cc.

Referenced by num_control_points_u().

◆ get_nurbs_degree_v()

int blender::io::obj::OBJCurves::get_nurbs_degree_v ( int spline_index) const
overridevirtual

Get the degree of the NURBS spline for the V-dimension.

Implements blender::io::obj::IOBJCurve.

Definition at line 133 of file obj_export_nurbs.cc.

◆ num_control_points_u()

int blender::io::obj::OBJCurves::num_control_points_u ( int spline_index) const
overridevirtual

Get the number of control points on the U-dimension.

Implements blender::io::obj::IOBJCurve.

Definition at line 116 of file obj_export_nurbs.cc.

References blender::bke::curves::nurbs::control_points_num(), get_cyclic_u(), and get_nurbs_degree_u().

◆ num_control_points_v()

int blender::io::obj::OBJCurves::num_control_points_v ( int spline_index) const
overridevirtual

Get the number of control points on the V-dimension.

Implements blender::io::obj::IOBJCurve.

Definition at line 123 of file obj_export_nurbs.cc.

◆ object_transform()

const float4x4 & blender::io::obj::OBJCurves::object_transform ( ) const
overridevirtual

Implements blender::io::obj::IOBJCurve.

Definition at line 96 of file obj_export_nurbs.cc.

◆ total_spline_vertices()

int blender::io::obj::OBJCurves::total_spline_vertices ( int spline_index) const
overridevirtual
Parameters
spline_indexZero-based index of spline of interest.
Returns
Total vertices in a spline.

Implements blender::io::obj::IOBJCurve.

Definition at line 111 of file obj_export_nurbs.cc.

◆ total_splines()

int blender::io::obj::OBJCurves::total_splines ( ) const
overridevirtual

Number of splines associated with the Curve object.assign_if_different

Implements blender::io::obj::IOBJCurve.

Definition at line 106 of file obj_export_nurbs.cc.

◆ vertex_coordinates()

Span< float3 > blender::io::obj::OBJCurves::vertex_coordinates ( int spline_index,
Vector< float3 > & dynamic_point_buffer ) const
overridevirtual

Get coordinates for the (non-looped) spline control points.

Implements blender::io::obj::IOBJCurve.

Definition at line 156 of file obj_export_nurbs.cc.

References blender::IndexRange::slice().


The documentation for this class was generated from the following files: