15 #ifndef SOFTTOEGGCONVERTER_H 16 #define SOFTTOEGGCONVERTER_H 18 #include "pandatoolbase.h" 19 #include "somethingToEggConverter.h" 20 #include "softNodeTree.h" 22 #include "eggTextureCollection.h" 23 #include "distanceUnit.h" 24 #include "coordinateSystem.h" 34 #include <SI_macros.h> 79 bool convert_flip(
double start_frame,
double end_frame,
80 double frame_inc,
double output_frame_rate);
82 bool make_soft_skin();
83 bool cleanup_soft_skin();
84 bool convert_char_chan();
85 bool convert_char_model();
91 void add_knots( vector <double> &eggKnots,
double *knots,
int numKnots, SAA_Boolean closed,
int degree );
94 void apply_texture_properties(
EggTexture &tex,
int uRepeat,
int vRepeat);
103 SAA_Database database;
114 const char *_commandName;
117 char _commandLine[4096];
138 int ignore_tex_offsets;
158 bool _polygon_output;
159 double _polygon_tolerance;
168 TransformType _transform_type;
173 MorphTable _morph_table;
179 extern const int TEX_PER_MAT;
A base class for any of a number of kinds of geometry primitives: polygons, point lights...
virtual string get_extension() const
Returns the common extension of the file type this converter supports.
bool open_api()
Attempts to open the Soft API if it was not already open, and returns true if successful, or false if there is an error.
virtual bool convert_file(const Filename &filename)
Handles the reading of the input file and converting it to egg.
void close_api()
Closes the Soft API, if it was previously opened.
A base class for nodes in the hierarchy that are not leaf nodes.
Defines a texture map that may be applied to geometry.
Corresponding to an <S$Anim> entry, this stores a single column of numbers, for instance for a morph ...
This is a collection of textures by TRef name.
void Help()
Displays the "what is this program" message, along with the usage message.
This is the primary interface into all the egg data, and the root of the egg file structure...
bool HandleGetopts(int &idx, int argc, char **argv)
increment idx based on what kind of option parsed Supported options are as follows: r:d:s:m:t:P:b:e:f...
Describes a complete tree of soft nodes for conversion.
char * GetTextureName(SAA_Scene *scene, SAA_Elem *texture)
Given a texture element, return texture name with given tex_path.
EggSAnimData * find_morph_table(char *name)
Given a tablename, it either creates a new eggSAnimData structure (if doesn't exist) or locates it...
The main glue of the egg hierarchy, this corresponds to the <Group>, <Instance>, and <Joint> type nod...
void ShowOpts()
Displays the valid options.
The name of a file, such as a texture file or an Egg file.
int * FindClosestTriVert(EggVertexPool *vpool, SAA_DVector *vertices, int numVert)
Given an egg vertex pool, map each vertex therein to a vertex within an array of SAA model vertices o...
This corresponds to an <Xfm$Anim_S$> entry, which is a collection of up to nine <S$Anim> entries that...
Describes a single instance of a node aka element in the Soft scene graph, relating it to the corresp...
A parametric NURBS curve.
This class supervises the construction of an EggData structure from a single Softimage file...
virtual SomethingToEggConverter * make_copy()
Allocates and returns a new copy of the converter.
void Usage()
Displays the usage message.
bool DoGetopts(int &argc, char **&argv)
Calls getopt() to parse the command-line switches.
SoftNodeDesc * find_node(string name)
Returns the English name of the file type this converter supports.
virtual string get_name() const
Returns the English name of the file type this converter supports.
bool convert_soft(bool from_selection)
Fills up the egg_data structure according to the global soft model data.
This is a base class for a family of converter classes that manage a conversion from some file type t...
A collection of vertices.
static TransformType string_transform_type(const string &arg)
Returns the TransformType value corresponding to the indicated string, or TT_invalid.