Go to the documentation of this file.
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.
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.
Specifies parameters that may be passed to the loader.
A node that holds Geom objects, renderable pieces of geometry.
virtual std::string get_extension() const
Returns the common extension of the file type this converter supports.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Any one-, two-, three-, or four-component vertex, possibly with attributes such as a normal.
This is a base class for a family of converter classes that manage a conversion from some file type t...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
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...
Convert an Obj file to egg data.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
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.
A collection of vertices.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual SomethingToEggConverter * make_copy()
Allocates and returns a new copy of the converter.
A basic node of the scene graph or data graph.
The main glue of the egg hierarchy, this corresponds to the <Group>, <Instance>, and <Joint> type nod...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
The name of a file, such as a texture file or an Egg file.
This is an abstract base class for a family of classes that represent the fundamental geometry primit...