gKit3
Loading...
Searching...
No Matches
mesh_io.h
1
2#ifndef _MESH_IO_H
3#define _MESH_IO_H
4
5#include <vector>
6
7#include "vec.h"
8#include "materials.h"
9#include "image.h"
10#include "files.h"
11
14
49bool read_positions( const char *filename, std::vector<Point>& positions );
50
87bool read_indexed_positions( const char *filename, std::vector<Point>& positions, std::vector<unsigned>& indices );
88
89
134bool read_materials( const char *filename, Materials& materials, std::vector<int>& indices );
135
157bool read_images( const Materials& materials, std::vector<Image>& images );
158
159
161{
162 int id;
163 unsigned first;
164 unsigned count;
165};
166
168{
169 std::vector<Point> positions;
170 std::vector<Point> texcoords;
171 std::vector<Vector> normals;
172 std::vector<unsigned> indices;
173
174 Materials materials;
175 std::vector<int> material_indices;
176
177 std::vector<std::string> object_names;
178 std::vector<int> object_indices;
179
180 int find_object( const char *name );
181 std::vector<MeshIOGroup> sort_by_material( ) { return groups(material_indices); }
182 std::vector<MeshIOGroup> sort_by_object( ) { return groups(object_indices); }
183 std::vector<MeshIOGroup> groups( const std::vector<int>& properties );
184};
185
227bool read_meshio_data( const char *filename, MeshIOData& data );
228
229bool read_images( const MeshIOData& data, std::vector<Image>& images );
230
232
233#endif
bool read_indexed_positions(const char *filename, std::vector< Point > &positions, std::vector< unsigned > &indices)
Definition mesh_io.cpp:112
bool read_positions(const char *filename, std::vector< Point > &positions)
Definition mesh_io.cpp:12
bool read_images(const Materials &materials, std::vector< Image > &images)
Definition mesh_io.cpp:714
bool read_meshio_data(const char *filename, MeshIOData &data)
Definition mesh_io.cpp:505
bool read_materials(const char *filename, Materials &materials, std::vector< int > &indices)
Definition mesh_io.cpp:302