14 #ifndef OBJTOEGGCONVERTER_H 15 #define OBJTOEGGCONVERTER_H 41 virtual std::string
get_name()
const;
50 bool process(
const Filename &filename);
51 bool process_line(
const std::string &line);
52 bool process_ref_plane_res(
const std::string &line);
54 bool process_v(vector_string &words);
55 bool process_vt(vector_string &words);
56 bool process_xvt(vector_string &words);
57 bool process_xvc(vector_string &words);
58 bool process_vn(vector_string &words);
59 bool process_f(vector_string &words);
60 bool process_g(vector_string &words);
62 EggVertex *get_face_vertex(
const std::string &face_reference);
63 void generate_egg_points();
65 bool process_node(
const Filename &filename);
66 bool process_line_node(
const std::string &line);
68 bool process_f_node(vector_string &words);
69 bool process_g_node(vector_string &words);
71 void generate_points();
72 int add_synth_normal(
const LVecBase3d &normal);
76 typedef epvector<LVecBase4d> Vec4Table;
77 typedef epvector<LVecBase3d> Vec3Table;
78 typedef epvector<LVecBase2d> Vec2Table;
82 Vec3Table _vn_table, _rgb_table;
85 Vec3Table _synth_vn_table;
87 LVecBase2d _ref_plane_res;
88 bool _v4_given, _vt3_given;
106 INLINE
bool operator < (
const VertexEntry &other)
const;
107 INLINE
bool operator == (
const VertexEntry &other)
const;
108 INLINE
bool matches_except_normal(
const VertexEntry &other)
const;
122 VertexData(
PandaNode *parent,
const std::string &name);
126 const VertexEntry &v1,
const VertexEntry &v2,
138 bool _v4_given, _vt3_given;
139 bool _vt_given, _rgb_given, _vn_given;
142 VertexData *_current_vertex_data;
144 friend class VertexData;
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A basic node of the scene graph or data graph.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual SomethingToEggConverter * make_copy()
Allocates and returns a new copy of the converter.
Specifies parameters that may be passed to the loader.
This is an abstract base class for a family of classes that represent the fundamental geometry primit...
virtual std::string get_extension() const
Returns the common extension of the file type this converter supports.
virtual std::string get_name() const
Returns the English name of the file type this converter supports.
virtual bool convert_file(const Filename &filename)
Handles the reading of the input file and converting it to egg.
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 structure...
The main glue of the egg hierarchy, this corresponds to the <Group>, <Instance>, and <Joint> type nod...
The name of a file, such as a texture file or an Egg file.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Any one-, two-, three-, or four-component vertex, possibly with attributes such as a normal.
Convert an Obj file to egg data.
virtual bool supports_compressed() const
Returns true if this file type can transparently load compressed files (with a .pz extension),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is a base class for a family of converter classes that manage a conversion from some file type t...
A collection of vertices.
A node that holds Geom objects, renderable pieces of geometry.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.