octomap  1.9.7
testing.h
Go to the documentation of this file.
1 #include <math.h>
2 #include <stdlib.h>
3 
4 // this is mimicing gtest expressions
5 
6 #define EXPECT_TRUE(args) { \
7  if (!(args)) { fprintf(stderr, "test failed (EXPECT_TRUE) in %s, line %d\n", __FILE__, __LINE__); \
8  exit(1); \
9  } }
10 
11 #define EXPECT_FALSE(args) { \
12  if (args) { fprintf(stderr, "test failed (EXPECT_FALSE) in %s, line %d\n", __FILE__, __LINE__); \
13  exit(1); \
14  } }
15 
16 #define EXPECT_EQ(a,b) { \
17  if (!(a == b)) { std::cerr << "test failed: " <<a<<"!="<<b<< " in " \
18  << __FILE__ << ", line " <<__LINE__ << std::endl; \
19  exit(1); \
20  } }
21 
22 #define EXPECT_FLOAT_EQ(a,b) { \
23  if (!(fabs(a-b) <= 1e-5)) { fprintf(stderr, "test failed: %f != %f in %s, line %d\n", a, b, __FILE__, __LINE__); \
24  exit(1); \
25  } }
26 
27 #define EXPECT_NEAR(a,b,prec) { \
28  if (!(fabs(a-b) <= prec)) { fprintf(stderr, "test failed: |%f - %f| > %f in %s, line %d\n", a, b, prec, __FILE__, __LINE__); \
29  exit(1); \
30  } }
31 
octomath::Pose6D::x
float & x()
Definition: Pose6D.h:102
octomath::Quaternion::Quaternion
Quaternion()
Default constructor.
Definition: Quaternion.h:66
octomap::OcTreeBaseImpl::end_leafs_bbx
const leaf_bbx_iterator end_leafs_bbx() const
Definition: OcTreeBaseImpl.h:345
octomath::Vector3::pitch
float & pitch()
Definition: Vector3.h:166
octomap::AbstractOccupancyOcTree::setProbMiss
void setProbMiss(double prob)
sets the probability for a "miss" (will be converted to logodds) - sensor model
Definition: AbstractOccupancyOcTree.h:192
octomath::Pose6D::~Pose6D
~Pose6D()
Definition: Pose6D.cpp:55
SPECIAL
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY SPECIAL
Definition: LICENSE.txt:25
octomap::CountingOcTreeNode::getCount
unsigned int getCount() const
Definition: CountingOcTree.h:60
octomap::OccupancyOcTreeBase::castRay
virtual bool castRay(const point3d &origin, const point3d &direction, point3d &end, bool ignoreUnknownCells=false, double maxRange=-1.0) const
Performs raycasting in 3d, similar to computeRay().
Definition: OccupancyOcTreeBase.hxx:639
main
int main(int argc, char **argv)
Definition: compare_octrees.cpp:59
octomap::OccupancyOcTreeBase::toMaxLikelihood
virtual void toMaxLikelihood()
Creates the maximum likelihood map by calling toMaxLikelihood on all tree nodes, setting their occupa...
Definition: OccupancyOcTreeBase.hxx:518
octomap::AbstractOccupancyOcTree::writeBinaryConst
bool writeBinaryConst(const std::string &filename) const
Writes OcTree to a binary file using writeBinaryConst().
Definition: AbstractOccupancyOcTree.cpp:60
octomap::AbstractOcTree::prune
virtual void prune()=0
octomap::OcTreeStamped::StaticMemberInitializer::ensureLinking
void ensureLinking()
Dummy function to ensure that MSVC does not drop the StaticMemberInitializer, causing this tree faili...
Definition: OcTreeStamped.h:119
octomap::ColorOcTree::getTreeType
std::string getTreeType() const
returns actual class name as string for identification
Definition: ColorOcTree.h:118
boundingBoxTest
void boundingBoxTest(OcTree *tree)
Definition: test_iterators.cpp:126
octomap::OcTreeStamped::OcTreeStamped
OcTreeStamped(double resolution)
Default constructor, sets resolution of leafs.
Definition: OcTreeStamped.cpp:38
ColorOcTree.h
octomap::MapCollection::isOccupied
bool isOccupied(const point3d &p) const
Definition: MapCollection.hxx:153
main
int main(int argc, char **argv)
Definition: bt2vrml.cpp:55
octomap::AbstractOccupancyOcTree::writeBinaryData
virtual std::ostream & writeBinaryData(std::ostream &s) const =0
Writes the actual data, implemented in OccupancyOcTreeBase::writeBinaryData()
octomap::CountingOcTree::StaticMemberInitializer
Static member object which ensures that this OcTree's prototype ends up in the classIDMapping only on...
Definition: CountingOcTree.h:100
octomap::OccupancyOcTreeBase::updateInnerOccupancy
void updateInnerOccupancy()
Updates the occupancy of all inner nodes to reflect their children's occupancy.
Definition: OccupancyOcTreeBase.hxx:494
main
int main(int argc, char **argv)
Definition: graph2tree.cpp:106
octomap::key_type
uint16_t key_type
Definition: OcTreeKey.h:63
octomath::Pose6D::operator*=
const Pose6D & operator*=(const Pose6D &p)
In place concatenation.
Definition: Pose6D.cpp:97
octomap::ColorOcTree::isNodeCollapsible
virtual bool isNodeCollapsible(const ColorOcTreeNode *node) const
A node is collapsible if all children exist, don't have children of their own and have the same occup...
Definition: ColorOcTree.cpp:127
octomap::Pointcloud::points
point3d_collection points
Definition: Pointcloud.h:120
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::search
ColorOcTreeNode * search(double x, double y, double z, unsigned int depth=0) const
Search node at specified depth given a 3d point (depth=0: search full tree depth).
Definition: OcTreeBaseImpl.hxx:421
octomap::ColorOcTreeNode::updateColorChildren
void updateColorChildren()
Definition: ColorOcTree.cpp:85
main
int main(int, char **)
Definition: simple_example.cpp:49
octomath::Vector3::yaw
float & yaw()
Definition: Vector3.h:171
CountingOcTree.h
printUsage
void printUsage(char *self)
Definition: log2graph.cpp:41
timediff
double timediff(const timeval &start, const timeval &stop)
Definition: test_iterators.cpp:122
octomap::ScanGraph::clear
void clear()
Clears all nodes and edges, and will delete the corresponding objects.
Definition: ScanGraph.cpp:167
octomap::OccupancyOcTreeBase
Base implementation for Occupancy Octrees (e.g.
Definition: OccupancyOcTreeBase.h:69
octomap::AbstractOccupancyOcTree::getClampingThresMin
double getClampingThresMin() const
Definition: AbstractOccupancyOcTree.h:213
octomap::Pointcloud::readBinary
std::istream & readBinary(std::istream &s)
Definition: Pointcloud.cpp:296
octomap::ColorOcTree::ColorOcTree
ColorOcTree(double resolution)
Default constructor, sets resolution of leafs.
Definition: ColorOcTree.cpp:91
octomath::Pose6D::translation
Vector3 translation
Definition: Pose6D.h:197
print_query_info
void print_query_info(point3d query, OcTreeNode *node)
Definition: simple_example.cpp:41
OCTOMAP_WARNING_STR
#define OCTOMAP_WARNING_STR(args)
Definition: octomap_types.h:77
octomap::ScanNode::pose
pose6d pose
6D pose from which the scan was performed
Definition: ScanGraph.h:74
octomap::ColorOcTreeNode::Color::b
uint8_t b
Definition: ColorOcTree.h:63
octomap::OcTreeDataNode
Basic node in the OcTree that can hold arbitrary data of type T in value.
Definition: OcTreeDataNode.h:63
octomap::ColorOcTree::pruneNode
virtual bool pruneNode(ColorOcTreeNode *node)
Prunes a node when it is collapsible.
Definition: ColorOcTree.cpp:107
octomap::OcTreeBaseImpl::size
virtual size_t size() const
Definition: OcTreeBaseImpl.h:241
octomap::OcTreeVolume
std::pair< point3d, double > OcTreeVolume
A voxel defined by its center point3d and its side length.
Definition: octomap_types.h:57
octomap::AbstractOccupancyOcTree::binaryFileHeader
static const std::string binaryFileHeader
Definition: AbstractOccupancyOcTree.h:235
octomath::Pose6D::operator==
bool operator==(const Pose6D &other) const
Definition: Pose6D.cpp:115
octomap::MapCollection::castRay
bool castRay(const point3d &origin, const point3d &direction, point3d &end, bool ignoreUnknownCells=false, double maxRange=-1.0) const
Definition: MapCollection.hxx:189
octomath::Quaternion::toRotMatrix
void toRotMatrix(std::vector< double > &rot_matrix_3_3) const
Definition: Quaternion.cpp:167
octomap::OcTreeBaseImpl::pruneNode
virtual bool pruneNode(NODE *node)
Prunes a node when it is collapsible.
Definition: OcTreeBaseImpl.hxx:267
octomath::Vector3::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Definition: Vector3.cpp:99
library
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap library
Definition: LICENSE.txt:6
octomath::Quaternion::x
float & x()
Definition: Quaternion.h:179
octomap::OcTreeBaseImpl::end_leafs
const leaf_iterator end_leafs() const
Definition: OcTreeBaseImpl.h:334
octomap::Pointcloud
A collection of 3D coordinates (point3d), which are regarded as endpoints of a 3D laser scan.
Definition: Pointcloud.h:47
octomap::byte
unsigned char byte
Definition: binvox2bt.cpp:60
main
int main(int argc, char **argv)
Definition: test_iterators.cpp:212
octomap::ColorOcTree::StaticMemberInitializer::ensureLinking
void ensureLinking()
Dummy function to ensure that MSVC does not drop the StaticMemberInitializer, causing this tree faili...
Definition: ColorOcTree.h:195
octomap::Pointcloud::calcBBX
void calcBBX(point3d &lowerBound, point3d &upperBound) const
Calculate bounding box of Pointcloud.
Definition: Pointcloud.cpp:134
octomap::AbstractOccupancyOcTree::setOccupancyThres
void setOccupancyThres(double prob)
sets the threshold for occupancy (sensor model)
Definition: AbstractOccupancyOcTree.h:188
printUsage
void printUsage(char *self)
Definition: convert_octree.cpp:46
octomap::OccupancyOcTreeBase::changedKeysBegin
KeyBoolMap::const_iterator changedKeysBegin() const
Iterator to traverse all keys of changed nodes.
Definition: OccupancyOcTreeBase.h:363
octomap::ScanEdge::constraint
pose6d constraint
Definition: ScanGraph.h:104
octomap::OcTree::StaticMemberInitializer
Static member object which ensures that this OcTree's prototype ends up in the classIDMapping only on...
Definition: OcTree.h:79
octomath::operator<<
std::ostream & operator<<(std::ostream &s, const Pose6D &p)
user friendly output in format (x y z, u x y z) which is (translation, rotation)
Definition: Pose6D.cpp:152
octomap::OcTreeStamped::getTreeType
std::string getTreeType() const
returns actual class name as string for identification
Definition: OcTreeStamped.h:88
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::getNodeChild
ColorOcTreeNode * getNodeChild(ColorOcTreeNode *node, unsigned int childIdx) const
Definition: OcTreeBaseImpl.hxx:200
octomath::Quaternion::toEuler
Vector3 toEuler() const
Conversion to Euler angles.
Definition: Quaternion.cpp:124
octomap::Pointcloud::crop
void crop(point3d lowerBound, point3d upperBound)
Crop Pointcloud to given bounding box.
Definition: Pointcloud.cpp:162
octomap::ColorOcTree::averageNodeColor
ColorOcTreeNode * averageNodeColor(const OcTreeKey &key, uint8_t r, uint8_t g, uint8_t b)
Definition: ColorOcTree.cpp:146
main
int main(int, char **argv)
Definition: color_tree_histogram.cpp:8
CONTRACT
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY OR CONSEQUENTIAL WHETHER IN CONTRACT
Definition: LICENSE.txt:29
octomath::Quaternion::norm
float norm() const
Definition: Quaternion.cpp:99
octomap::ScanNode::readPoseASCII
std::istream & readPoseASCII(std::istream &s)
Definition: ScanGraph.cpp:90
octomath::Pose6D::z
float & z()
Definition: Pose6D.h:104
octomap::Pointcloud::push_back
void push_back(float x, float y, float z)
Definition: Pointcloud.h:61
INCLUDING
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED INCLUDING
Definition: LICENSE.txt:22
octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >::tree_max_val
const unsigned int tree_max_val
Definition: OcTreeBaseImpl.h:546
octomap::OcTreeStamped::StaticMemberInitializer
Static member object which ensures that this OcTree's prototype ends up in the classIDMapping only on...
Definition: OcTreeStamped.h:106
octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >::keyToCoord
double keyToCoord(key_type key, unsigned depth) const
converts from a discrete key at a given depth into a coordinate corresponding to the key's center
Definition: OcTreeBaseImpl.hxx:394
main
int main(int, char **)
Definition: test_raycasting.cpp:13
octomap::ScanGraph::edges_begin
edge_iterator edges_begin()
Definition: ScanGraph.h:185
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::deleteNodeChild
void deleteNodeChild(ColorOcTreeNode *node, unsigned int childIdx)
Deletes the i-th child of the node.
Definition: OcTreeBaseImpl.hxx:189
octomap::OcTree::OcTree
OcTree(double resolution)
Default constructor, sets resolution of leafs.
Definition: OcTree.cpp:39
octomap::AbstractOccupancyOcTree::AbstractOccupancyOcTree
AbstractOccupancyOcTree()
Definition: AbstractOccupancyOcTree.cpp:40
AbstractOcTree.h
octomap::OcTree::ocTreeMemberInit
static StaticMemberInitializer ocTreeMemberInit
to ensure static initialization (only once)
Definition: OcTree.h:96
main
int main(int, char **)
Definition: test_changedkeys.cpp:56
main
int main(int, char **)
Definition: test_pruning.cpp:9
octomap::ColorOcTreeNode::writeData
std::ostream & writeData(std::ostream &s) const
Definition: ColorOcTree.cpp:40
octomap::ScanGraph::readEdgesASCII
std::istream & readEdgesASCII(std::istream &s)
Definition: ScanGraph.cpp:510
octomap::ColorOcTreeNode::setColor
void setColor(Color c)
Definition: ColorOcTree.h:81
octomath::Pose6D::operator*
Pose6D operator*(const Pose6D &p) const
Concatenation.
Definition: Pose6D.cpp:91
octomap::ScanNode::writePoseASCII
std::ostream & writePoseASCII(std::ostream &s) const
Definition: ScanGraph.cpp:80
octomap::OcTreeBaseImpl::begin_leafs
leaf_iterator begin_leafs(unsigned char maxDepth=0) const
Definition: OcTreeBaseImpl.h:332
octomap::OcTreeDataNode< float >::value
float value
stored data (payload)
Definition: OcTreeDataNode.h:128
octomap::OcTreeStamped::getLastUpdateTime
unsigned int getLastUpdateTime()
Definition: OcTreeStamped.cpp:43
INCIDENTAL
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY INCIDENTAL
Definition: LICENSE.txt:25
octomath::Vector3::rotate_IP
Vector3 & rotate_IP(double roll, double pitch, double yaw)
Definition: Vector3.cpp:41
octomap::ScanNode::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Definition: ScanGraph.cpp:52
octomath::Quaternion::read
std::istream & read(std::istream &s)
Definition: Quaternion.cpp:261
octomath::Vector3::roll
float & roll()
Definition: Vector3.h:161
octomap::Pointcloud::getPoint
point3d getPoint(unsigned int i) const
Returns a copy of the ith point in point cloud. Use operator[] for direct access to point reference.
Definition: Pointcloud.cpp:93
octomath::Quaternion::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Definition: Quaternion.cpp:291
octomap::OcTreeNode::getLogOdds
float getLogOdds() const
Definition: OcTreeNode.h:68
octomap::AbstractOcTree::writeData
virtual std::ostream & writeData(std::ostream &s) const =0
Write complete state of tree to stream (without file header) unmodified. Pruning the tree first produ...
octomap::Pointcloud::clear
void clear()
Definition: Pointcloud.cpp:65
octomap::OcTreeBaseImpl::setResolution
void setResolution(double r)
Change the resolution of the octree, scaling all voxels. This will not preserve the (metric) scale!
Definition: OcTreeBaseImpl.hxx:156
octomath::Quaternion::write
std::ostream & write(std::ostream &s) const
Definition: Quaternion.cpp:270
octomap::AbstractOcTree::fileHeader
static const std::string fileHeader
Definition: AbstractOcTree.h:155
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::tree_depth
const unsigned int tree_depth
Maximum tree depth is fixed to 16 currently.
Definition: OcTreeBaseImpl.h:545
octomap::AbstractOccupancyOcTree::readBinary
bool readBinary(std::istream &s)
Reads an OcTree from an input stream.
Definition: AbstractOccupancyOcTree.cpp:135
octomap::ColorOcTree
Definition: ColorOcTree.h:108
octomap::ColorOcTree::updateInnerOccupancy
void updateInnerOccupancy()
Definition: ColorOcTree.cpp:188
octomap::AbstractOcTree::write
bool write(const std::string &filename) const
Write file header and complete tree to file (serialization)
Definition: AbstractOcTree.cpp:45
octomap::ScanGraph::getOutEdges
std::vector< ScanEdge * > getOutEdges(ScanNode *node)
Definition: ScanGraph.cpp:287
LIABILITY
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY OR CONSEQUENTIAL WHETHER IN STRICT LIABILITY
Definition: LICENSE.txt:29
testing.h
octomap::OccupancyOcTreeBase::insertRay
virtual bool insertRay(const point3d &origin, const point3d &end, double maxrange=-1.0, bool lazy_eval=false)
Insert one ray between origin and end into the tree.
Definition: OccupancyOcTreeBase.hxx:865
printUsage
void printUsage(char *self)
Definition: test_iterators.cpp:14
OCTOMAP_DEBUG
#define OCTOMAP_DEBUG(...)
Definition: octomap_types.h:72
octomap::ScanGraph::edgeExists
bool edgeExists(unsigned int first_id, unsigned int second_id)
Definition: ScanGraph.cpp:259
octomap::OcTreeNode::getMaxChildLogOdds
float getMaxChildLogOdds() const
Definition: OcTreeNode.cpp:76
octomap::ScanGraph::writeEdgesASCII
std::ostream & writeEdgesASCII(std::ostream &s) const
Definition: ScanGraph.cpp:491
octomap::OccupancyOcTreeBase::insertPointCloud
virtual void insertPointCloud(const Pointcloud &scan, const octomap::point3d &sensor_origin, double maxrange=-1., bool lazy_eval=false, bool discretize=false)
Integrate a Pointcloud (in global reference frame), parallelized with OpenMP.
Definition: OccupancyOcTreeBase.hxx:86
modification
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without modification
Definition: LICENSE.txt:10
octomap::Pointcloud::~Pointcloud
~Pointcloud()
Definition: Pointcloud.cpp:61
octomap::CountingOcTree::getCentersMinHitsRecurs
void getCentersMinHitsRecurs(point3d_list &node_centers, unsigned int &min_hits, unsigned int max_depth, CountingOcTreeNode *node, unsigned int depth, const OcTreeKey &parent_key) const
Definition: CountingOcTree.cpp:102
octomath::Quaternion::operator==
bool operator==(const Quaternion &other) const
Definition: Quaternion.cpp:113
octomap::ScanGraph::const_iterator
std::vector< ScanNode * >::const_iterator const_iterator
Definition: ScanGraph.h:174
leaf_iterator
Iterator to iterate over all leafs of the tree.
Definition: OcTreeIterator.hxx:263
EXPECT_TRUE
#define EXPECT_TRUE(args)
Definition: testing.h:6
octomap::AbstractOccupancyOcTree::readBinaryData
virtual std::istream & readBinaryData(std::istream &s)=0
Reads the actual data, implemented in OccupancyOcTreeBase::readBinaryData()
octomap::OcTreeNodeStamped::updateTimestamp
void updateTimestamp()
Definition: OcTreeStamped.h:63
octomath::Quaternion::normalized
Quaternion normalized() const
Definition: Quaternion.cpp:241
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::root
ColorOcTreeNode * root
Pointer to the root NODE, NULL for empty tree.
Definition: OcTreeBaseImpl.h:542
octomap::ScanEdge::second
ScanNode * second
Definition: ScanGraph.h:102
octomap::MapCollection
Definition: MapCollection.h:45
octomap::ScanGraph::readPlainASCII
std::istream & readPlainASCII(std::istream &s)
Reads in a ScanGraph from a "plain" ASCII file of the form NODE x y z R P Y x y z x y z x y z NODE x ...
Definition: ScanGraph.cpp:436
OCTOMAP_DEBUG_STR
#define OCTOMAP_DEBUG_STR(args)
Definition: octomap_types.h:73
octomath::Pose6D::y
float & y()
Definition: Pose6D.h:103
octomath::Vector3
This class represents a three-dimensional vector.
Definition: Vector3.h:50
DIRECT
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT
Definition: LICENSE.txt:25
octomap::OccupancyOcTreeBase::updateNode
virtual NODE * updateNode(const OcTreeKey &key, float log_odds_update, bool lazy_eval=false)
Manipulate log_odds value of a voxel by changing it by log_odds_update (relative).
Definition: OccupancyOcTreeBase.hxx:301
octomap::AbstractOccupancyOcTree::readBinaryLegacyHeader
bool readBinaryLegacyHeader(std::istream &s, unsigned int &size, double &res)
Try to read the old binary format for conversion, will be removed in the future.
Definition: AbstractOccupancyOcTree.cpp:98
octomap::ScanGraph::nodes
std::vector< ScanNode * > nodes
Definition: ScanGraph.h:224
DEG2RAD
#define DEG2RAD(x)
Definition: Utils.h:47
octomap::Pointcloud::subSampleRandom
void subSampleRandom(unsigned int num_samples, Pointcloud &sample_cloud)
Definition: Pointcloud.cpp:210
octomap::OcTree
octomap main map data structure, stores 3D occupancy grid map in an OcTree.
Definition: OcTree.h:49
octomap::OcTreeBaseImpl::getResolution
double getResolution() const
Definition: OcTreeBaseImpl.h:109
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::nodeChildExists
bool nodeChildExists(const ColorOcTreeNode *node, unsigned int childIdx) const
Safe test if node has a child at index childIdx.
Definition: OcTreeBaseImpl.hxx:235
octomath::Quaternion::rotate
Vector3 rotate(const Vector3 &v) const
Rotate a vector.
Definition: Quaternion.cpp:255
octomap::Pointcloud::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Definition: Pointcloud.cpp:324
octomap::OcTreeBaseImpl::memoryUsage
virtual size_t memoryUsage() const
Definition: OcTreeBaseImpl.hxx:1039
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::end_tree
const tree_iterator end_tree() const
Definition: OcTreeBaseImpl.h:350
octomap::ScanGraph
A ScanGraph is a collection of ScanNodes, connected by ScanEdges.
Definition: ScanGraph.h:114
Utils.h
octomap::ColorOcTreeNode::color
Color color
Definition: ColorOcTree.h:103
getVoxelsRecurs
void getVoxelsRecurs(std::list< OcTreeVolume > &voxels, unsigned int max_depth, OcTreeNode *node, unsigned int depth, const point3d &parent_center, const point3d &tree_center, OcTree *tree)
mimics old deprecated behavior to compare against
Definition: test_iterators.cpp:71
octomap::OcTreeDataNode::setValue
void setValue(T v)
sets value to be stored in the node
Definition: OcTreeDataNode.h:105
octomap::ScanGraph::~ScanGraph
~ScanGraph()
Definition: ScanGraph.cpp:163
octomap::AbstractOccupancyOcTree::isNodeOccupied
bool isNodeOccupied(const OcTreeNode *occupancyNode) const
queries whether a node is occupied according to the tree's parameter for "occupancy"
Definition: AbstractOccupancyOcTree.h:114
octomap::ScanGraph::end
iterator end()
Definition: ScanGraph.h:176
octomap::AbstractOcTree::getResolution
virtual double getResolution() const =0
octomap::OcTreeNodeStamped
Definition: OcTreeStamped.h:45
EXPECT_FLOAT_EQ
#define EXPECT_FLOAT_EQ(a, b)
Definition: testing.h:22
printChanges
void printChanges(OcTree &tree)
Definition: test_changedkeys.cpp:9
printUsage
void printUsage(char *self)
Definition: compare_octrees.cpp:51
print_query_info
void print_query_info(point3d query, OcTreeNode *node)
Definition: normals_example.cpp:44
main
int main(int argc, char **argv)
Definition: binvox2bt.cpp:63
octomap::ScanNode::~ScanNode
~ScanNode()
Definition: ScanGraph.cpp:45
AbstractOccupancyOcTree.h
octomap::OcTreeNode::~OcTreeNode
~OcTreeNode()
Definition: OcTreeNode.cpp:50
octomap::OcTreeBaseImpl::getMetricMin
virtual void getMetricMin(double &x, double &y, double &z)
minimum value of the bounding box of all known space in x, y, z
Definition: OcTreeBaseImpl.hxx:942
octomap::KeySet
unordered_ns::unordered_set< OcTreeKey, OcTreeKey::KeyHash > KeySet
Data structure to efficiently compute the nodes to update from a scan insertion using a hash set.
Definition: OcTreeKey.h:129
Hornung
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A Hornung
Definition: LICENSE.txt:6
octomap::ScanGraph::getNumPoints
size_t getNumPoints(unsigned int max_id=-1) const
Definition: ScanGraph.cpp:611
octomap::OccupancyOcTreeBase::computeUpdate
void computeUpdate(const Pointcloud &scan, const octomap::point3d &origin, KeySet &free_cells, KeySet &occupied_cells, double maxrange)
Helper for insertPointCloud().
Definition: OccupancyOcTreeBase.hxx:169
octomap::OcTreeNode
Nodes to be used in OcTree.
Definition: OcTreeNode.h:55
notice
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright notice
Definition: LICENSE.txt:15
main
int main(int argc, char **argv)
Definition: log2graph.cpp:56
octomap::ScanGraph::writeNodePosesASCII
std::ostream & writeNodePosesASCII(std::ostream &s) const
Definition: ScanGraph.cpp:543
octomap::ScanEdge::first
ScanNode * first
Definition: ScanGraph.h:101
octomap::AbstractOcTree
This abstract class is an interface to all octrees and provides a factory design pattern for readin a...
Definition: AbstractOcTree.h:50
octomap::ScanNode
A 3D scan as Pointcloud, performed from a Pose6D.
Definition: ScanGraph.h:52
octomap::ScanGraph::exportDot
void exportDot(std::string filename)
Definition: ScanGraph.cpp:236
EXEMPLARY
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY EXEMPLARY
Definition: LICENSE.txt:25
octomap::OcTreeBaseImpl::expand
virtual void expand()
Expands all pruned nodes (reverse of prune())
Definition: OcTreeBaseImpl.hxx:536
octomath::Vector3::read
std::istream & read(std::istream &s)
Definition: Vector3.cpp:69
octomap::ScanGraph::begin
iterator begin()
Definition: ScanGraph.h:175
octomath::Pose6D::transform
Vector3 transform(const Vector3 &v) const
Transformation of a vector.
Definition: Pose6D.cpp:85
octomap::ScanGraph::connectPrevious
void connectPrevious()
Connect previously added ScanNode to the one before that.
Definition: ScanGraph.cpp:226
octomap::Pointcloud::writeVrml
void writeVrml(std::string filename)
Export the Pointcloud to a VRML file.
Definition: Pointcloud.cpp:233
EXPECT_NEAR
#define EXPECT_NEAR(a, b, prec)
Definition: testing.h:27
octomap::OcTreeNode::OcTreeNode
OcTreeNode()
Definition: OcTreeNode.cpp:45
octomap::AbstractOccupancyOcTree::setClampingThresMin
void setClampingThresMin(double thresProb)
sets the minimum threshold for occupancy clamping (sensor model)
Definition: AbstractOccupancyOcTree.h:194
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::nodeHasChildren
bool nodeHasChildren(const ColorOcTreeNode *node) const
Safe test if node has any children.
Definition: OcTreeBaseImpl.hxx:244
octomap::AbstractOccupancyOcTree::getClampingThresMax
double getClampingThresMax() const
Definition: AbstractOccupancyOcTree.h:217
main
int main(int, char **argv)
Definition: test_mapcollection.cpp:28
octomap::ScanGraph::size
size_t size() const
Definition: ScanGraph.h:180
octomap::CountingOcTree::CountingOcTree
CountingOcTree(double resolution)
Default constructor, sets resolution of leafs.
Definition: CountingOcTree.cpp:52
octomap::ColorOcTree::colorOcTreeMemberInit
static StaticMemberInitializer colorOcTreeMemberInit
static member to ensure static initialization (only once)
Definition: ColorOcTree.h:198
M_PI_2
#define M_PI_2
Definition: binvox2bt.cpp:46
octomap::OcTreeBaseImpl::getMetricSize
virtual void getMetricSize(double &x, double &y, double &z)
Size of OcTree (all known space) in meters for x, y and z dimension.
Definition: OcTreeBaseImpl.hxx:872
octomap::AbstractOccupancyOcTree::isNodeAtThreshold
bool isNodeAtThreshold(const OcTreeNode *occupancyNode) const
queries whether a node is at the clamping threshold according to the tree's parameter
Definition: AbstractOccupancyOcTree.h:124
octomap::OcTreeBaseImpl::prune
virtual void prune()
Lossless compression of the octree: A node will replace all of its eight children if they have identi...
Definition: OcTreeBaseImpl.hxx:523
octomap::OccupancyOcTreeBase::getRayIntersection
virtual bool getRayIntersection(const point3d &origin, const point3d &direction, const point3d &center, point3d &intersection, double delta=0.0) const
Retrieves the entry point of a ray into a voxel.
Definition: OccupancyOcTreeBase.hxx:762
octomap::Pointcloud::rotate
void rotate(double roll, double pitch, double yaw)
Rotate each point in pointcloud.
Definition: Pointcloud.cpp:126
octomap::AbstractOcTree::createTree
static AbstractOcTree * createTree(const std::string id, double res)
Creates a certain OcTree (factory pattern)
Definition: AbstractOcTree.cpp:184
octomap::Pointcloud::current_inv_transform
pose6d current_inv_transform
Definition: Pointcloud.h:119
octomap::Pointcloud::read
std::istream & read(std::istream &s)
Definition: Pointcloud.cpp:280
octomap::AbstractOcTree::clear
virtual void clear()=0
octomath::Quaternion::operator()
const float & operator()(unsigned int i) const
Definition: Quaternion.h:116
octomath::Pose6D::rotation
Quaternion rotation
Definition: Pose6D.h:198
octomap::ColorOcTreeNode
Definition: ColorOcTree.h:48
OcTreeStamped.h
octomap::ColorOcTree::integrateNodeColor
ColorOcTreeNode * integrateNodeColor(const OcTreeKey &key, uint8_t r, uint8_t g, uint8_t b)
Definition: ColorOcTree.cpp:163
octomap::CountingOcTreeNode::CountingOcTreeNode
CountingOcTreeNode()
implementation of CountingOcTreeNode -------------------------------—
Definition: CountingOcTree.cpp:42
octomap::ScanGraph::getNodeByID
ScanNode * getNodeByID(unsigned int id)
will return NULL if node was not found
Definition: ScanGraph.cpp:252
TORT
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY OR CONSEQUENTIAL WHETHER IN STRICT OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE
OCTOMAP_ERROR
#define OCTOMAP_ERROR(...)
Definition: octomap_types.h:78
contributors
OctoMap was originally developed by Kai M Wurm and Armin University of Freiburg Further contributors
Definition: AUTHORS.txt:5
Pose6D.h
octomap::ScanNode::readBinary
std::istream & readBinary(std::istream &s)
Definition: ScanGraph.cpp:65
octomap::OcTreeNode::updateOccupancyChildren
void updateOccupancyChildren()
update this node's occupancy according to its children's maximum occupancy
Definition: OcTreeNode.h:83
octomap::ScanNode::id
unsigned int id
Definition: ScanGraph.h:75
octomath
octomap::AbstractOcTree::readHeader
static bool readHeader(std::istream &s, std::string &id, unsigned &size, double &res)
Definition: AbstractOcTree.cpp:119
octomap::CountingOcTree::countingOcTreeMemberInit
static StaticMemberInitializer countingOcTreeMemberInit
static member to ensure static initialization (only once)
Definition: CountingOcTree.h:116
octomap::CountingOcTreeNode::~CountingOcTreeNode
~CountingOcTreeNode()
Definition: CountingOcTree.cpp:47
octomap::OcTreeBaseImpl::getMetricMax
virtual void getMetricMax(double &x, double &y, double &z)
maximum value of the bounding box of all known space in x, y, z
Definition: OcTreeBaseImpl.hxx:950
Quaternion.h
octomap::OcTreeBaseImpl::memoryFullGrid
unsigned long long memoryFullGrid() const
Definition: OcTreeBaseImpl.hxx:850
octomath::Quaternion::normalize
Quaternion & normalize()
Definition: Quaternion.cpp:234
main
int main(int argc, char **argv)
Definition: octree2pointcloud.cpp:52
octomap::OcTreeKey
OcTreeKey is a container class for internal key addressing.
Definition: OcTreeKey.h:70
octomap::Pointcloud::transform
void transform(pose6d transform)
Apply transform to each point.
Definition: Pointcloud.cpp:102
octomath::Pose6D::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Binary output operator.
Definition: Pose6D.cpp:146
octomath::Pose6D::readBinary
std::istream & readBinary(std::istream &s)
Binary input operator.
Definition: Pose6D.cpp:139
octomath::Quaternion::y
float & y()
Definition: Quaternion.h:180
octomap::OcTreeBaseImpl::calcNumNodes
size_t calcNumNodes() const
Traverses the tree to calculate the total number of nodes.
Definition: OcTreeBaseImpl.hxx:1016
octomap::AbstractOccupancyOcTree::setClampingThresMax
void setClampingThresMax(double thresProb)
sets the maximum threshold for occupancy clamping (sensor model)
Definition: AbstractOccupancyOcTree.h:196
octomap::ScanEdge::readBinary
std::istream & readBinary(std::istream &s, ScanGraph &graph)
Definition: ScanGraph.cpp:117
main
int main(int argc, char **argv)
Definition: offset_graph.cpp:43
octomath::Quaternion::inv
Quaternion inv() const
Inversion.
Definition: Quaternion.h:156
octomap::ColorOcTreeNode::copyData
void copyData(const ColorOcTreeNode &from)
Definition: ColorOcTree.h:75
main
int main(int argc, char **argv)
Definition: convert_octree.cpp:56
octomap::OcTreeStamped::ocTreeStampedMemberInit
static StaticMemberInitializer ocTreeStampedMemberInit
to ensure static initialization (only once)
Definition: OcTreeStamped.h:122
octomap::AbstractOcTree::getTreeType
virtual std::string getTreeType() const =0
returns actual class name as string for identification
octomap::computeChildIdx
uint8_t computeChildIdx(const OcTreeKey &key, int depth)
generate child index (between 0 and 7) from key at given tree depth
Definition: OcTreeKey.h:207
octomap::AbstractOccupancyOcTree::setProbHit
void setProbHit(double prob)
sets the probability for a "hit" (will be converted to logodds) - sensor model
Definition: AbstractOccupancyOcTree.h:190
octomap::CountingOcTree::StaticMemberInitializer::ensureLinking
void ensureLinking()
Dummy function to ensure that MSVC does not drop the StaticMemberInitializer, causing this tree faili...
Definition: CountingOcTree.h:113
octomap::operator<<
std::ostream & operator<<(std::ostream &out, ColorOcTreeNode::Color const &c)
user friendly output in format (r g b)
Definition: ColorOcTree.cpp:253
octomap.h
octomap::ScanGraph::edges_end
edge_iterator edges_end()
Definition: ScanGraph.h:186
octomap::OcTreeBaseImpl::begin
iterator begin(unsigned char maxDepth=0) const
Definition: OcTreeBaseImpl.h:327
octomap_types.h
OcTreeNode.h
octomap::ScanEdge::readASCII
std::istream & readASCII(std::istream &s, ScanGraph &graph)
Definition: ScanGraph.cpp:146
octomap::AbstractOccupancyOcTree::getProbHit
double getProbHit() const
Definition: AbstractOccupancyOcTree.h:204
octomap::point3d_collection
std::vector< octomath::Vector3 > point3d_collection
Definition: octomap_types.h:53
getLeafNodesRecurs
void getLeafNodesRecurs(std::list< OcTreeVolume > &voxels, unsigned int max_depth, OcTreeNode *node, unsigned int depth, const point3d &parent_center, const point3d &tree_center, OcTree *tree, bool occupied)
mimics old deprecated behavior to compare against
Definition: test_iterators.cpp:38
octomap::ScanGraph::getInEdges
std::vector< ScanEdge * > getInEdges(ScanNode *node)
Definition: ScanGraph.cpp:299
OcTreeVolumeSortPredicate
bool OcTreeVolumeSortPredicate(const OcTreeVolume &lhs, const OcTreeVolume &rhs)
Definition: test_iterators.cpp:112
octomap::MapCollection::size
size_t size() const
Definition: MapCollection.h:79
octomap::MapCollection::getOccupancy
double getOccupancy(const point3d &p)
Definition: MapCollection.hxx:171
octomap::OccupancyOcTreeBase::updateNodeLogOdds
virtual void updateNodeLogOdds(NODE *occupancyNode, const float &update) const
update logodds value of node by adding to the current value.
Definition: OccupancyOcTreeBase.hxx:1091
octomath::Pose6D::Pose6D
Pose6D()
Definition: Pose6D.cpp:39
octomath::Vector3::readBinary
std::istream & readBinary(std::istream &s)
Definition: Vector3.cpp:87
computeChildCenter
void computeChildCenter(const unsigned int &pos, const float &center_offset, const point3d &parent_center, point3d &child_center)
Definition: test_iterators.cpp:21
octomap::OcTree::StaticMemberInitializer::ensureLinking
void ensureLinking()
Dummy function to ensure that MSVC does not drop the StaticMemberInitializer, causing this tree faili...
Definition: OcTree.h:92
octomap::OcTreeNode::addValue
void addValue(const float &p)
adds p to the node's logOdds value (with no boundary / threshold checking!)
Definition: OcTreeNode.cpp:91
printUsage
void printUsage(char *self)
Definition: test_scans.cpp:10
OCTOMAP_ERROR_STR
#define OCTOMAP_ERROR_STR(args)
Definition: octomap_types.h:79
octomap::AbstractOcTree::size
virtual size_t size() const =0
octomath::Vector3::write
std::ostream & write(std::ostream &s) const
Definition: Vector3.cpp:78
octomap::OcTreeBaseImpl::clear
void clear()
Deletes the complete tree structure.
Definition: OcTreeBaseImpl.hxx:512
octomath::Quaternion::operator*
Quaternion operator*(const Quaternion &other) const
Quaternion multiplication.
Definition: Quaternion.cpp:219
octomap::AbstractOcTree::registerTreeType
static void registerTreeType(AbstractOcTree *tree)
Definition: AbstractOcTree.cpp:205
octomap::OcTreeBaseImpl::getNumLeafNodes
size_t getNumLeafNodes() const
Traverses the tree to calculate the total number of leaf nodes.
Definition: OcTreeBaseImpl.hxx:1086
INDIRECT
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY INDIRECT
Definition: LICENSE.txt:25
octomap::ScanEdge
A connection between two ScanNodes.
Definition: ScanGraph.h:82
main
int main(int argc, char **argv)
Definition: eval_octree_accuracy.cpp:60
octomap::AbstractOccupancyOcTree::getProbMiss
double getProbMiss() const
Definition: AbstractOccupancyOcTree.h:208
Pointcloud.h
octomap::ColorOcTreeNode::getColor
Color getColor() const
Definition: ColorOcTree.h:80
WARRANTIES
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES
Definition: LICENSE.txt:22
octomap::OcTreeBaseImpl< ColorOcTreeNode, AbstractOccupancyOcTree >::begin_tree
tree_iterator begin_tree(unsigned char maxDepth=0) const
Definition: OcTreeBaseImpl.h:348
octomap::point3d_list
std::list< octomath::Vector3 > point3d_list
Definition: octomap_types.h:54
octomap::Pointcloud::minDist
void minDist(double thres)
Definition: Pointcloud.cpp:194
main
int main(int, char **)
Definition: test_color_tree.cpp:20
OCTOMAP_WARNING
#define OCTOMAP_WARNING(...)
Definition: octomap_types.h:76
octomath::Pose6D::write
std::ostream & write(std::ostream &s) const
Output operator.
Definition: Pose6D.cpp:131
octomap::Pointcloud::Pointcloud
Pointcloud()
Definition: Pointcloud.cpp:57
octomap::OcTreeBase
Definition: OcTreeBase.h:44
main
int main(int argc, char **argv)
Definition: test_scans.cpp:16
octomath::Quaternion::u
float & u()
Definition: Quaternion.h:178
octomap::CountingOcTreeNode
An Octree-node which stores an internal counter per node / volume.
Definition: CountingOcTree.h:53
main
int main(int, char **)
Definition: intersection_example.cpp:43
octomap::MapCollection::write
bool write(std::string filename)
Definition: MapCollection.hxx:230
octomap::ScanGraph::const_edge_iterator
std::vector< ScanEdge * >::const_iterator const_edge_iterator
Definition: ScanGraph.h:184
octomap::ColorOcTreeNode::isColorSet
bool isColorSet() const
Definition: ColorOcTree.h:89
octomap::OccupancyOcTreeBase::changedKeysEnd
KeyBoolMap::const_iterator changedKeysEnd() const
Iterator to traverse all keys of changed nodes.
Definition: OccupancyOcTreeBase.h:366
compareResults
void compareResults(const std::list< OcTreeVolume > &list_iterator, const std::list< OcTreeVolume > &list_depr)
compare two lists of octree nodes on equality
Definition: test_iterators.cpp:98
octomap::ColorOcTree::updateInnerOccupancyRecurs
void updateInnerOccupancyRecurs(ColorOcTreeNode *node, unsigned int depth)
Definition: ColorOcTree.cpp:192
octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >::createNodeChild
CountingOcTreeNode * createNodeChild(CountingOcTreeNode *node, unsigned int childIdx)
Creates (allocates) the i-th child of the node.
Definition: OcTreeBaseImpl.hxx:173
octomath::Vector3::y
float & y()
Definition: Vector3.h:136
octomap::CountingOcTree::getCentersMinHits
void getCentersMinHits(point3d_list &node_centers, unsigned int min_hits) const
Definition: CountingOcTree.cpp:94
octomap::OccupancyOcTreeBase::enableChangeDetection
void enableChangeDetection(bool enable)
track or ignore changes while inserting scans (default: ignore)
Definition: OccupancyOcTreeBase.h:353
octomap::ScanGraph::addNode
ScanNode * addNode(Pointcloud *scan, pose6d pose)
Creates a new ScanNode in the graph from a Pointcloud.
Definition: ScanGraph.cpp:179
octomap::ScanGraph::addEdge
ScanEdge * addEdge(ScanNode *first, ScanNode *second, pose6d constraint)
Creates an edge between two ScanNodes.
Definition: ScanGraph.cpp:191
octomap::Pointcloud::begin
iterator begin()
Definition: Pointcloud.h:100
octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >::tree_size
size_t tree_size
number of nodes in tree flag to denote whether the octree extent changed (for lazy min/max eval)
Definition: OcTreeBaseImpl.h:550
octomath::Pose6D::rot
Quaternion & rot()
Rotational component.
Definition: Pose6D.h:88
octomap::ColorOcTree::writeColorHistogram
void writeColorHistogram(std::string filename)
Definition: ColorOcTree.cpp:208
print_query_info
void print_query_info(point3d query, ColorOcTreeNode *node)
Definition: test_color_tree.cpp:9
octomap::AbstractOccupancyOcTree
Interface class for all octree types that store occupancy.
Definition: AbstractOccupancyOcTree.h:52
printUsage
void printUsage(char *self)
Definition: octree2pointcloud.cpp:45
octomath::Quaternion::data
float data[4]
Definition: Quaternion.h:194
octomap::AbstractOcTree::AbstractOcTree
AbstractOcTree()
Definition: AbstractOcTree.cpp:41
octomap::ScanEdge::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Definition: ScanGraph.cpp:106
Vector3.h
M_PI
#define M_PI
Definition: Utils.h:38
octomap::ScanGraph::writeBinary
std::ostream & writeBinary(std::ostream &s) const
Definition: ScanGraph.cpp:328
octomap::ColorOcTreeNode::getAverageChildColor
ColorOcTreeNode::Color getAverageChildColor() const
Definition: ColorOcTree.cpp:54
octomap::CountingOcTreeNode::increaseCount
void increaseCount()
Definition: CountingOcTree.h:61
octomap::ScanGraph::transformScans
void transformScans()
Transform every scan according to its pose.
Definition: ScanGraph.cpp:311
octomap::OcTreeDataNode::getValue
T getValue() const
Definition: OcTreeDataNode.h:103
octomath::Pose6D::inv_IP
Pose6D & inv_IP()
Inversion.
Definition: Pose6D.cpp:78
printUsage
void printUsage(char *self)
Definition: bt2vrml.cpp:44
octomap::OcTreeNode::getMeanChildLogOdds
double getMeanChildLogOdds() const
Definition: OcTreeNode.cpp:58
printUsage
void printUsage(char *self)
Definition: graph2tree.cpp:45
octomap::ScanGraph::readNodePosesASCII
std::istream & readNodePosesASCII(std::istream &s)
Definition: ScanGraph.cpp:556
outputStatistics
void outputStatistics(const OcTree *tree)
Definition: graph2tree.cpp:89
octomap::ScanGraph::edges
std::vector< ScanEdge * > edges
Definition: ScanGraph.h:225
octomap::ScanEdge::writeASCII
std::ostream & writeASCII(std::ostream &s) const
Definition: ScanGraph.cpp:134
generateSphereTree
OcTree * generateSphereTree(point3d origin, float radius)
Definition: test_mapcollection.cpp:11
octomap::OcTreeBaseImpl::end
const iterator end() const
Definition: OcTreeBaseImpl.h:329
octomap::OcTreeBaseImpl::getRoot
NODE * getRoot() const
Definition: OcTreeBaseImpl.h:179
main
int main(int argc, char **argv)
Definition: edit_octree.cpp:45
octomap::CountingOcTree::updateNode
virtual CountingOcTreeNode * updateNode(const point3d &value)
Definition: CountingOcTree.cpp:57
octomap::AbstractOcTree::read
static AbstractOcTree * read(const std::string &filename)
Read the file header, create the appropriate class and deserialize.
Definition: AbstractOcTree.cpp:74
printUsage
void printUsage(char *self)
Definition: eval_octree_accuracy.cpp:45
octomap::OcTreeNodeStamped::getTimestamp
unsigned int getTimestamp() const
Definition: OcTreeStamped.h:62
octomath::Quaternion::operator/=
void operator/=(float x)
Definition: Quaternion.cpp:107
octomap::ScanEdge::weight
double weight
Definition: ScanGraph.h:105
octomap::OcTreeStamped::degradeOutdatedNodes
void degradeOutdatedNodes(unsigned int time_thres)
Definition: OcTreeStamped.cpp:49
octomap::Pointcloud::const_iterator
point3d_collection::const_iterator const_iterator
Definition: Pointcloud.h:99
octomap::OcTreeNode::getOccupancy
double getOccupancy() const
Definition: OcTreeNode.h:65
octomap::ColorOcTree::setNodeColor
ColorOcTreeNode * setNodeColor(const OcTreeKey &key, uint8_t r, uint8_t g, uint8_t b)
Definition: ColorOcTree.cpp:96
octomap
Tables used by the Marching Cubes Algorithm The tables are from Paul Bourke's web page http://paulbou...
octomath::Vector3::operator()
const float & operator()(unsigned int i) const
Definition: Vector3.h:122
octomap::AbstractOcTree::readData
virtual std::istream & readData(std::istream &s)=0
Read all nodes from the input stream (without file header), for this the tree needs to be already cre...
octomap::computeChildKey
void computeChildKey(unsigned int pos, key_type center_offset_key, const OcTreeKey &parent_key, OcTreeKey &child_key)
Computes the key of a child node while traversing the octree, given child index and current key.
Definition: OcTreeKey.h:193
octomath::Pose6D::operator!=
bool operator!=(const Pose6D &other) const
Definition: Pose6D.cpp:120
octomath::Quaternion::readBinary
std::istream & readBinary(std::istream &s)
Definition: Quaternion.cpp:279
octomath::Pose6D
This class represents a tree-dimensional pose of an object.
Definition: Pose6D.h:49
octomap::OcTreeDataNode< float >::children
AbstractOcTreeNode ** children
pointer to array of children, may be NULL
Definition: OcTreeDataNode.h:126
octomath::Quaternion::z
float & z()
Definition: Quaternion.h:181
octomap::OcTreeBaseImpl< CountingOcTreeNode, AbstractOcTree >::coordToKeyChecked
bool coordToKeyChecked(const point3d &coord, OcTreeKey &key) const
Converts a 3D coordinate into a 3D OcTreeKey, with boundary checking.
Definition: OcTreeBaseImpl.hxx:340
octomap::ScanNode::scan
Pointcloud * scan
Definition: ScanGraph.h:73
octomap::Pointcloud::transformAbsolute
void transformAbsolute(pose6d transform)
Apply transform to each point, undo previous transforms.
Definition: Pointcloud.cpp:113
octomap::ScanGraph::cropEachScan
void cropEachScan(point3d lowerBound, point3d upperBound)
Cut Pointclouds to given BBX in local coords.
Definition: ScanGraph.cpp:588
octomap::OcTreeStamped::integrateMissNoTime
void integrateMissNoTime(OcTreeNodeStamped *node) const
Definition: OcTreeStamped.cpp:66
octomath::Pose6D::operator=
Pose6D & operator=(const Pose6D &other)
Definition: Pose6D.cpp:63
octomath::operator*
Quaternion operator*(const Vector3 &v, const Quaternion &q)
Definition: Quaternion.cpp:230
octomap_timing.h
octomap::OcTreeBaseImpl::readData
std::istream & readData(std::istream &s)
Read all nodes from the input stream (without file header), for this the tree needs to be already cre...
Definition: OcTreeBaseImpl.hxx:801
octomap::OcTreeStamped::updateNodeLogOdds
virtual void updateNodeLogOdds(OcTreeNodeStamped *node, const float &update) const
update logodds value of node by adding to the current value.
Definition: OcTreeStamped.cpp:61
octomap::ColorOcTreeNode::Color::r
uint8_t r
Definition: ColorOcTree.h:63
forms
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary forms
Definition: LICENSE.txt:9
DAMAGES
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, OR PROFITS;OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY
octomap::AbstractOccupancyOcTree::toMaxLikelihood
virtual void toMaxLikelihood()=0
octomath::Vector3::z
float & z()
Definition: Vector3.h:141
octomap::OccupancyOcTreeBase::getNormals
bool getNormals(const point3d &point, std::vector< point3d > &normals, bool unknownStatus=true) const
Performs a step of the marching cubes surface reconstruction algorithm to retrieve the normal of the ...
Definition: OccupancyOcTreeBase.hxx:551
octomath::Pose6D::distance
double distance(const Pose6D &other) const
Translational distance.
Definition: Pose6D.cpp:103
octomap::point3d
octomath::Vector3 point3d
Use Vector3 (float precision) as a point3d in octomap.
Definition: octomap_types.h:49
octomath::Quaternion::operator=
Quaternion & operator=(const Quaternion &other)
Definition: Quaternion.cpp:211
MapCollection.h
octomap::ScanGraph::iterator
std::vector< ScanNode * >::iterator iterator
Definition: ScanGraph.h:173
octomath::Pose6D::read
std::istream & read(std::istream &s)
Input operator.
Definition: Pose6D.cpp:124
octomath::Vector3::x
float & x()
Definition: Vector3.h:131
main
int main(int argc, char **argv)
Definition: test_io.cpp:14
octomap::ColorOcTreeNode::Color::g
uint8_t g
Definition: ColorOcTree.h:63
octomath::Quaternion::inv_IP
Quaternion & inv_IP()
Inversion.
Definition: Quaternion.cpp:248
octomap::Pointcloud::size
size_t size() const
Definition: Pointcloud.h:57
TO
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are this list of conditions and the following disclaimer *Redistributions in binary form must reproduce the above copyright this list of conditions and the following disclaimer in the documentation and or other materials provided with the distribution *Neither the name of the University of Freiburg nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED BUT NOT LIMITED TO
Definition: LICENSE.txt:22
octomath::Quaternion
This class represents a Quaternion.
Definition: Quaternion.h:56
octomap::OcTreeBaseImpl::swapContent
void swapContent(OcTreeBaseImpl< NODE, INTERFACE > &rhs)
Swap contents of two octrees, i.e., only the underlying pointer / tree structure.
Definition: OcTreeBaseImpl.hxx:114
OcTree.h
octomap::ScanGraph::getNeighborIDs
std::vector< unsigned int > getNeighborIDs(unsigned int id)
Definition: ScanGraph.cpp:272
EXPECT_EQ
#define EXPECT_EQ(a, b)
Definition: testing.h:16
octomap::OccupancyOcTreeBase::insertPointCloudRays
virtual void insertPointCloudRays(const Pointcloud &scan, const point3d &sensor_origin, double maxrange=-1., bool lazy_eval=false)
Integrate a Pointcloud (in global reference frame), parallelized with OpenMP.
Definition: OccupancyOcTreeBase.hxx:116
EXPECT_FALSE
#define EXPECT_FALSE(args)
Definition: testing.h:11
ScanGraph.h
octomap::Pointcloud::end
iterator end()
Definition: Pointcloud.h:101
octomap::OcTreeBaseImpl::begin_leafs_bbx
leaf_bbx_iterator begin_leafs_bbx(const OcTreeKey &min, const OcTreeKey &max, unsigned char maxDepth=0) const
Definition: OcTreeBaseImpl.h:337
octomath::Pose6D::inv
Pose6D inv() const
Inversion.
Definition: Pose6D.cpp:70
octomap::ColorOcTreeNode::readData
std::istream & readData(std::istream &s)
Definition: ColorOcTree.cpp:47
octomap::ScanGraph::crop
void crop(point3d lowerBound, point3d upperBound)
Cut graph (all containing Pointclouds) to given BBX in global coords.
Definition: ScanGraph.cpp:596
octomap::OcTreeBaseImpl::expandNode
virtual void expandNode(NODE *node)
Expands a node (reverse of pruning): All children are created and their occupancy probability is set ...
Definition: OcTreeBaseImpl.hxx:257
main
int main(int, char **)
Definition: normals_example.cpp:52
octomap::AbstractOcTree::setResolution
virtual void setResolution(double res)=0
octomap::AbstractOccupancyOcTree::prob_miss_log
float prob_miss_log
Definition: AbstractOccupancyOcTree.h:232
met
OctoMap An Efficient Probabilistic Mapping Framework Based on Octrees License for the octomap K M Wurm and A University of Freiburg All rights reserved Redistribution and use in source and binary with or without are permitted provided that the following conditions are met
Definition: LICENSE.txt:13
octomap::pose6d
octomath::Pose6D pose6d
Use our Pose6D (float precision) as pose6d in octomap.
Definition: octomap_types.h:51
octomath::Pose6D::transLength
double transLength() const
Translational length.
Definition: Pose6D.cpp:110
octomap::AbstractOccupancyOcTree::writeBinary
bool writeBinary(const std::string &filename)
Writes OcTree to a binary file using writeBinary().
Definition: AbstractOccupancyOcTree.cpp:50
octomap::OcTreeStamped
Definition: OcTreeStamped.h:78
octomap::OcTreeBaseImpl::getTreeDepth
unsigned int getTreeDepth() const
Definition: OcTreeBaseImpl.h:111
octomath::Pose6D::trans
Vector3 & trans()
Translational component.
Definition: Pose6D.h:82
octomap::ScanGraph::readBinary
std::istream & readBinary(std::ifstream &s)
Definition: ScanGraph.cpp:369
octomap::ScanGraph::edge_iterator
std::vector< ScanEdge * >::iterator edge_iterator
Definition: ScanGraph.h:183
octomap::ColorOcTreeNode::Color
Definition: ColorOcTree.h:52
calcThresholdedNodes
void calcThresholdedNodes(const OcTree *tree, unsigned int &num_thresholded, unsigned int &num_other)
Definition: graph2tree.cpp:74