Panda3D
Public Member Functions | List of all members
DXFToEggConverter Class Reference

This class supervises the construction of an EggData structure from a DXF file. More...

#include "dxfToEggConverter.h"

Inheritance diagram for DXFToEggConverter:
SomethingToEggConverter DXFFile MemoryBase

Public Member Functions

 DXFToEggConverter (const DXFToEggConverter &copy)
 
virtual bool convert_file (const Filename &filename)
 Handles the reading of the input file and converting it to egg. More...
 
virtual std::string get_extension () const
 Returns the common extension of the file type this converter supports. More...
 
virtual std::string get_name () const
 Returns the English name of the file type this converter supports. More...
 
virtual SomethingToEggConvertermake_copy ()
 Allocates and returns a new copy of the converter. More...
 
virtual bool supports_compressed () const
 Returns true if this file type can transparently load compressed files (with a .pz extension), false otherwise. More...
 
- Public Member Functions inherited from SomethingToEggConverter
 SomethingToEggConverter (const SomethingToEggConverter &copy)
 
void clear_egg_data ()
 Sets the EggData to NULL and makes the converter invalid. More...
 
void clear_end_frame ()
 Removes the value previously set by set_end_frame(). More...
 
void clear_error ()
 Resets the error flag to the no-error state. More...
 
void clear_frame_inc ()
 Removes the value previously set by set_frame_inc(). More...
 
void clear_input_frame_rate ()
 Removes the value previously set by set_input_frame_rate(). More...
 
void clear_neutral_frame ()
 Removes the value previously set by set_neutral_frame(). More...
 
void clear_output_frame_rate ()
 Removes the value previously set by set_output_frame_rate(). More...
 
void clear_start_frame ()
 Removes the value previously set by set_start_frame(). More...
 
Filename convert_model_path (const Filename &orig_filename)
 Converts the indicated model filename to a relative or absolute or whatever filename, according to _path_replace. More...
 
virtual std::string get_additional_extensions () const
 Returns a space-separated list of extension, in addition to the one returned by get_extension(), that are recognized by this converter. More...
 
AnimationConvert get_animation_convert () const
 Returns how source animation will be converted into egg structures. More...
 
const std::string & get_character_name () const
 Returns the name of the character generated. More...
 
EggDataget_egg_data ()
 Returns the EggData structure. More...
 
double get_end_frame () const
 Returns the value set by a previous call to set_end_frame(). More...
 
double get_frame_inc () const
 Returns the value set by a previous call to set_frame_inc(). More...
 
double get_input_frame_rate () const
 Returns the value set by a previous call to set_input_frame_rate(). More...
 
virtual DistanceUnit get_input_units ()
 This may be called after convert_file() has been called and returned true, indicating a successful conversion. More...
 
bool get_merge_externals () const
 Returns the current state of the merge_externals flag. More...
 
double get_neutral_frame () const
 Returns the value set by a previous call to set_neutral_frame(). More...
 
double get_output_frame_rate () const
 Returns the value set by a previous call to set_output_frame_rate(). More...
 
PathReplaceget_path_replace ()
 Returns a pointer to the PathReplace object associated with this converter. More...
 
const PathReplaceget_path_replace () const
 Returns a pointer to the PathReplace object associated with this converter. More...
 
double get_start_frame () const
 Returns the value set by a previous call to set_start_frame(). More...
 
bool had_error () const
 Returns true if an error was detected during the conversion process (unless _allow_errors is true), false otherwise. More...
 
bool handle_external_reference (EggGroupNode *egg_parent, const Filename &ref_filename)
 Handles an external reference in the source file. More...
 
bool has_end_frame () const
 Returns true if the ending frame has been explicitly specified via set_end_frame(), or false if the ending frame should be implicit based on the source. More...
 
bool has_frame_inc () const
 Returns true if the frame increment has been explicitly specified via set_frame_inc(), or false if the ending frame should be implicit based on the source. More...
 
bool has_input_frame_rate () const
 Returns true if the frame rate has been explicitly specified via set_input_frame_rate(), or false otherwise. More...
 
bool has_neutral_frame () const
 Returns true if the neutral frame has been explicitly specified via set_neutral_frame(), or false otherwise. More...
 
bool has_output_frame_rate () const
 Returns true if the frame rate has been explicitly specified via set_output_frame_rate(), or false otherwise. More...
 
bool has_start_frame () const
 Returns true if the starting frame has been explicitly specified via set_start_frame(), or false if the starting frame should be implicit based on the source. More...
 
virtual PT (PandaNode) convert_to_node(const LoaderOptions &options
 
void set_animation_convert (AnimationConvert animation_convert)
 Specifies how source animation will be converted into egg structures. More...
 
void set_character_name (const std::string &character_name)
 Specifies the name of the character generated. More...
 
void set_egg_data (EggData *egg_data)
 Sets the egg data that will be filled in when convert_file() is called. More...
 
void set_end_frame (double end_frame)
 Specifies the ending frame of the animation to convert, in the units specified by set_input_frame_rate(). More...
 
void set_frame_inc (double frame_inc)
 Specifies the increment between frames to extract. More...
 
void set_input_frame_rate (double input_frame_rate)
 Specifies the number of frames per second that is represented by the "frame" unit in the animation package. More...
 
void set_merge_externals (bool merge_externals)
 Sets the merge_externals flag. More...
 
void set_neutral_frame (double neutral_frame)
 Specifies the frame of animation to represent the neutral pose of the model. More...
 
void set_output_frame_rate (double output_frame_rate)
 Specifies the number of frames per second that the resulting animation should be played at. More...
 
void set_path_replace (PathReplace *path_replace)
 Replaces the PathReplace object (which specifies how to mangle paths from the source to the destination egg file) with a new one. More...
 
void set_start_frame (double start_frame)
 Specifies the starting frame of the animation to convert, in the units specified by set_input_frame_rate(). More...
 
virtual bool supports_convert_to_node (const LoaderOptions &options) const
 Returns true if this converter can directly convert the model type to internal Panda memory structures, given the indicated options, or false otherwise. More...
 
- Public Member Functions inherited from DXFFile
virtual void begin_file ()
 A hook for user code, if desired. More...
 
virtual void begin_section ()
 A hook for user code, if desired. More...
 
virtual void done_vertex ()
 A hook for user code, if desired. More...
 
virtual void end_file ()
 A hook for user code, if desired. More...
 
virtual void end_section ()
 A hook for user code, if desired. More...
 
const Colorget_color () const
 This is a convenience function to return the r,g,b color of the current entity (at the time of done_entity()). More...
 
void ocs_2_wcs ()
 Assuming the current entity is a planar-based entity, for instance, a 2-d polygon (as opposed to a 3-d polygon), this converts the coordinates from the funny planar coordinate system to the world coordinates. More...
 
void process (Filename filename)
 Opens the indicated filename and reads it as a DXF file. More...
 
void process (std::istream *in, bool owns_in)
 Reads the indicated stream as a DXF file. More...
 

Additional Inherited Members

- Public Types inherited from DXFFile
enum  Entity {
  EN_unknown, EN_3dface, EN_point, EN_insert,
  EN_vertex, EN_polyline
}
 
enum  PolylineFlags {
  PF_closed = 0x01, PF_curve_fit = 0x02, PF_spline_fit = 0x04, PF_3d = 0x08,
  PF_3d_mesh = 0x10, PF_closed_n = 0x20, PF_polyface = 0x40, PF_continuous_linetype = 0x80
}
 
enum  Section {
  SE_unknown, SE_header, SE_tables, SE_blocks,
  SE_entities, SE_objects
}
 
enum  State {
  ST_top, ST_section, ST_entity, ST_verts,
  ST_error, ST_done
}
 
- Static Public Member Functions inherited from SomethingToEggConverter
static double get_default_frame_rate ()
 Returns the default frame rate if nothing is specified for input_frame_rate or output_frame_rate, and the animation package does not have an implicit frame rate. More...
 
- Static Public Member Functions inherited from DXFFile
static int find_color (double r, double g, double b)
 Returns the index of the closest matching AutoCAD color to the indicated r, g, b. More...
 
- Public Attributes inherited from SomethingToEggConverter
bool _allow_errors
 
virtual const Filenamefilename
 
- Public Attributes inherited from DXFFile
int _color_index
 
Entity _entity
 
int _flags
 
DXFLayer_layer
 
DXFLayerMap _layers
 
LPoint3d _p
 
LPoint3d _q
 
LPoint3d _r
 
LPoint3d _s
 
Section _section
 
DXFVertices _verts
 
LVector3d _z
 
- Static Public Attributes inherited from DXFFile
static Color _colors [DXF_num_colors]
 

Detailed Description

This class supervises the construction of an EggData structure from a DXF file.

Definition at line 26 of file dxfToEggConverter.h.

Member Function Documentation

◆ convert_file()

bool DXFToEggConverter::convert_file ( const Filename filename)
virtual

Handles the reading of the input file and converting it to egg.

Returns true if successful, false otherwise.

Implements SomethingToEggConverter.

Definition at line 80 of file dxfToEggConverter.cxx.

References SomethingToEggConverter::clear_error().

◆ get_extension()

std::string DXFToEggConverter::get_extension ( ) const
virtual

Returns the common extension of the file type this converter supports.

Implements SomethingToEggConverter.

Definition at line 62 of file dxfToEggConverter.cxx.

◆ get_name()

std::string DXFToEggConverter::get_name ( ) const
virtual

Returns the English name of the file type this converter supports.

Implements SomethingToEggConverter.

Definition at line 54 of file dxfToEggConverter.cxx.

◆ make_copy()

SomethingToEggConverter * DXFToEggConverter::make_copy ( )
virtual

Allocates and returns a new copy of the converter.

Implements SomethingToEggConverter.

Definition at line 45 of file dxfToEggConverter.cxx.

◆ supports_compressed()

bool DXFToEggConverter::supports_compressed ( ) const
virtual

Returns true if this file type can transparently load compressed files (with a .pz extension), false otherwise.

Reimplemented from SomethingToEggConverter.

Definition at line 71 of file dxfToEggConverter.cxx.


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