Functions
ContactFunctions.h File Reference
#include <vector>
Include dependency graph for ContactFunctions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void setUpFrictionEdges (unsigned int &numEdges, std::vector< double > &frictionEdges)
void setUpFrictionEllipsoid (unsigned int numLatitudes, unsigned int numDirs[], double phi[], double eccen[], unsigned int &numFrictionEdges, std::vector< double > &frictionEdges)
void setUpSoftFrictionEdges (unsigned int &numEdges, std::vector< double > &frictionEdges)

Function Documentation

void setUpFrictionEdges ( unsigned int &  numEdges,
std::vector< double > &  frictionEdges 
)

Definition at line 99 of file ContactFunctions.cpp.

void setUpFrictionEllipsoid ( unsigned int  numLatitudes,
unsigned int  numDirs[],
double  phi[],
double  eccen[],
unsigned int &  numFrictionEdges,
std::vector< double > &  frictionEdges 
)

Copyright (C) 2015 Jennifer Buehler

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Copied and adapted from GraspIt! Contact class, April 2014.

Sets up the friction edges of this contact using an ellipsoid approximation. This is convenience function, as friction edges can be set in many ways. However, we currently use PCWF and SFC models which are both cases of linearized ellipsoids, so this function can be used for both.

Consider a 3D friction ellipsoid, where the first two dimensions are tangential frictional force (along X and Y) and the third is frictional torque (along Z). This function samples this ellipsoid at numLatitudes latitudes contained in phi[]; at each latitude l it takes numDirs[l] equally spaced discrete samples. Each of those samples becomes a friction edge, after it is converted to the full 6D space by filling in the other dimensions with zeroes.

Parameters:
numFrictionEdgesoutput: number of edges generated
frictionEdgesthe array (size numEdges*6) defining the friction cone

Copyright (C) 2015 Jennifer Buehler

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Definition at line 21 of file ContactFunctions.cpp.

void setUpSoftFrictionEdges ( unsigned int &  numEdges,
std::vector< double > &  frictionEdges 
)

Copied and adapted from GraspIt! Contact class (soft contact), April 2014.

Sets up friction edges as a 3D friction ellipsoid. All the computations for fitting analytical surfaces to the two bodies should already have been completed.

Definition at line 60 of file ContactFunctions.cpp.



urdf2graspit
Author(s): Jennifer Buehler
autogenerated on Wed May 8 2019 02:53:45