Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
rviz
ogre_helpers
stl_loader.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2008, Willow Garage, Inc.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
*
8
* * Redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer.
10
* * Redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution.
13
* * Neither the name of the Willow Garage, Inc. nor the names of its
14
* contributors may be used to endorse or promote products derived from
15
* this software without specific prior written permission.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27
* POSSIBILITY OF SUCH DAMAGE.
28
*/
29
30
#ifndef OGRE_TOOLS_STL_LOADER_H
31
#define OGRE_TOOLS_STL_LOADER_H
32
33
#include <OgreVector3.h>
34
#include <OgreMesh.h>
35
36
#include <vector>
37
#include <stdint.h>
38
39
namespace
ogre_tools
40
{
41
42
class
STLLoader
43
{
44
public
:
45
STLLoader
();
46
~STLLoader
();
47
48
bool
load
(
const
std::string& path);
49
bool
load
(uint8_t* buffer,
const
size_t
num_bytes,
const
std::string& origin);
50
51
Ogre::MeshPtr
toMesh
(
const
std::string& name);
52
53
struct
Triangle
54
{
55
Ogre::Vector3
vertices_
[3];
56
Ogre::Vector3
normal_
;
57
};
58
59
typedef
std::vector<Triangle>
V_Triangle
;
60
V_Triangle
triangles_
;
61
62
protected
:
64
bool
load_binary
(uint8_t* buffer);
65
};
66
67
}
68
69
#endif // OGRE_TOOLS_STL_LOADER_H
ogre_tools::STLLoader::triangles_
V_Triangle triangles_
Definition:
stl_loader.h:60
ogre_tools::STLLoader::~STLLoader
~STLLoader()
Definition:
stl_loader.cpp:43
ogre_tools::STLLoader::Triangle::normal_
Ogre::Vector3 normal_
Definition:
stl_loader.h:56
ogre_tools::STLLoader::load_binary
bool load_binary(uint8_t *buffer)
Load a binary STL file.
Definition:
stl_loader.cpp:158
ogre_tools::STLLoader::load
bool load(const std::string &path)
Definition:
stl_loader.cpp:48
ogre_tools::STLLoader::STLLoader
STLLoader()
Definition:
stl_loader.cpp:38
ogre_tools::STLLoader::Triangle::vertices_
Ogre::Vector3 vertices_[3]
Definition:
stl_loader.h:55
ogre_tools::STLLoader
Definition:
stl_loader.h:42
ogre_tools::STLLoader::V_Triangle
std::vector< Triangle > V_Triangle
Definition:
stl_loader.h:59
ogre_tools::STLLoader::toMesh
Ogre::MeshPtr toMesh(const std::string &name)
Definition:
stl_loader.cpp:233
ogre_tools::STLLoader::Triangle
Definition:
stl_loader.h:53
ogre_tools
Definition:
stl_loader.cpp:35
rviz
Author(s): Dave Hershberger, David Gossow, Josh Faust
autogenerated on Wed Aug 28 2019 04:01:51