Blender V4.3
ArmatureImporter Class Reference

#include <ArmatureImporter.h>

Inherits TransformReader.

Public Member Functions

 ArmatureImporter (UnitConverter *conv, MeshImporterBase *mesh, Main *bmain, Scene *sce, ViewLayer *view_layer, const ImportSettings *import_settings)
 
 ~ArmatureImporter ()
 
void add_root_joint (COLLADAFW::Node *node, Object *parent)
 
void make_armatures (bContext *C, std::vector< Object * > &objects_to_scale)
 
void make_shape_keys (bContext *C)
 
bool write_skin_controller_data (const COLLADAFW::SkinControllerData *data)
 
bool write_controller (const COLLADAFW::Controller *controller)
 
COLLADAFW::UniqueId * get_geometry_uid (const COLLADAFW::UniqueId &controller_uid)
 
Objectget_armature_for_joint (COLLADAFW::Node *node)
 
void get_rna_path_for_joint (COLLADAFW::Node *node, char *joint_path, size_t joint_path_maxncpy)
 
bool get_joint_bind_mat (float m[4][4], COLLADAFW::Node *joint)
 
void set_tags_map (TagsMap &tags_map)
 

Detailed Description

Definition at line 41 of file ArmatureImporter.h.

Constructor & Destructor Documentation

◆ ArmatureImporter()

ArmatureImporter::ArmatureImporter ( UnitConverter * conv,
MeshImporterBase * mesh,
Main * bmain,
Scene * sce,
ViewLayer * view_layer,
const ImportSettings * import_settings )

Definition at line 38 of file ArmatureImporter.cpp.

◆ ~ArmatureImporter()

ArmatureImporter::~ArmatureImporter ( )

Definition at line 55 of file ArmatureImporter.cpp.

Member Function Documentation

◆ add_root_joint()

void ArmatureImporter::add_root_joint ( COLLADAFW::Node * node,
Object * parent )

root - if this joint is the top joint in hierarchy, if a joint is a child of a node (not joint), root should be true since this is where we build armature bones from

Definition at line 753 of file ArmatureImporter.cpp.

Referenced by DocumentImporter::write_node().

◆ get_armature_for_joint()

Object * ArmatureImporter::get_armature_for_joint ( COLLADAFW::Node * node)

◆ get_geometry_uid()

COLLADAFW::UniqueId * ArmatureImporter::get_geometry_uid ( const COLLADAFW::UniqueId & controller_uid)

Definition at line 990 of file ArmatureImporter.cpp.

Referenced by MeshImporter::create_mesh_object(), and make_armatures().

◆ get_joint_bind_mat()

bool ArmatureImporter::get_joint_bind_mat ( float m[4][4],
COLLADAFW::Node * joint )

Gives a world-space mat.

Definition at line 1033 of file ArmatureImporter.cpp.

References invert_m4().

Referenced by AnimationImporter::calc_joint_parent_mat_rest(), and AnimationImporter::get_joint_rest_mat().

◆ get_rna_path_for_joint()

void ArmatureImporter::get_rna_path_for_joint ( COLLADAFW::Node * node,
char * joint_path,
size_t joint_path_maxncpy )

◆ make_armatures()

void ArmatureImporter::make_armatures ( bContext * C,
std::vector< Object * > & objects_to_scale )

Here we add bones to armatures, having armatures previously created in write_controller.

Definition at line 777 of file ArmatureImporter.cpp.

References bc_set_parent(), bArmature::bonebase, CTX_data_main(), Object::data, ED_armature_edit_free(), ED_armature_from_edit(), ED_armature_to_edit(), ListBase::first, FLT_MAX, get_geometry_uid(), and MeshImporterBase::get_object_by_geom_uid().

Referenced by DocumentImporter::finish().

◆ make_shape_keys()

◆ set_tags_map()

void ArmatureImporter::set_tags_map ( TagsMap & tags_map)

Definition at line 1019 of file ArmatureImporter.cpp.

Referenced by DocumentImporter::finish().

◆ write_controller()

bool ArmatureImporter::write_controller ( const COLLADAFW::Controller * controller)

Definition at line 905 of file ArmatureImporter.cpp.

References controller.

Referenced by DocumentImporter::writeController().

◆ write_skin_controller_data()

bool ArmatureImporter::write_skin_controller_data ( const COLLADAFW::SkinControllerData * data)

Definition at line 880 of file ArmatureImporter.cpp.

Referenced by DocumentImporter::writeSkinControllerData().


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