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 SomethingToEggConverter * make_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...
 
EggData * get_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...
 
PathReplace * get_path_replace ()
 Returns a pointer to the PathReplace object associated with this converter. More...
 
const PathReplace * get_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 Color & get_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 Filename & filename
 
- 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: