11#ifndef PHYSIKA_PRIMITIVE_SWEEP_3D 
   12#define PHYSIKA_PRIMITIVE_SWEEP_3D 
   21    template<
typename Real>
 
   25        typedef typename ::dyno::Vector<Real, 2> 
Coord2D;
 
   26        typedef typename ::dyno::Vector<Real, 3> 
Coord3D;
 
 
   57    template<
typename Real>
 
0D geometric primitive in three-dimensional space
 
DYN_FUNC TPointSweep3D(TPoint3D< Real > &start, TPoint3D< Real > &end)
 
TPoint3D< double > end_point
 
DYN_FUNC TPointSweep3D(const TPointSweep3D &point_sweep)
 
DYN_FUNC bool intersect(const TTriangleSweep3D< Real > &triangle_sweep, typename TTriangle3D< Real >::Param &baryc, Real &t, const Real threshold=Real(0.00001)) const
Calculate the possible intersection for a moving point and a moving triangle. We assume both the poin...
 
::dyno::Vector< Real, 3 > Coord3D
 
TPoint3D< double > start_point
 
DYN_FUNC TPoint3D< Real > interpolate(Real t) const
Return the intermediate state for a point.
 
::dyno::Vector< Real, 2 > Coord2D
 
DYN_FUNC TTriangleSweep3D(TTriangle3D< Real > &start, TTriangle3D< Real > &end)
 
TTriangle3D< double > end_triangle
 
DYN_FUNC TTriangleSweep3D(const TTriangleSweep3D &triangle_sweep)
 
TTriangle3D< double > start_triangle
 
DYN_FUNC TTriangle3D< Real > interpolate(Real t) const
Return the intermediate state for a triangle.
 
This is an implementation of AdditiveCCD based on peridyno.
 
TPointSweep3D< double > PointSweep3D
 
TTriangleSweep3D< double > TriangleSweep3D