PhysicsBasedAnimationToolkit 0.0.10
Cross-platform C++20 library of algorithms and data structures commonly used in computer graphics research on physically-based simulation.
Loading...
Searching...
No Matches
pbat::geometry::sdf::Link< TScalar > Struct Template Reference

Link shape as elongated torus with elongation length \( le \) and minor+major radius \(t = (r,R) \). More...

#include <Primitive.h>

Inheritance diagram for pbat::geometry::sdf::Link< TScalar >:
pbat::geometry::sdf::Primitive

Public Types

using ScalarType = TScalar
 Scalar type.
 

Public Member Functions

 Link ()=default
 Default constructor.
 
 Link (Vec2< ScalarType > const &t_, ScalarType le_)
 Construct a new Link object.
 
PBAT_HOST_DEVICE ScalarType Eval (Vec3< ScalarType > const &p) const
 Evaluate the signed distance function at a point.
 

Public Attributes

Vec2< ScalarTypet {TScalar(1), TScalar(0.5)}
 t[0]: minor radius, t[1]: major radius
 
ScalarType le {TScalar(1)}
 Elongation length.
 

Detailed Description

template<common::CArithmetic TScalar>
struct pbat::geometry::sdf::Link< TScalar >

Link shape as elongated torus with elongation length \( le \) and minor+major radius \(t = (r,R) \).

Template Parameters
TScalarScalar type

Constructor & Destructor Documentation

◆ Link()

template<common::CArithmetic TScalar>
pbat::geometry::sdf::Link< TScalar >::Link ( Vec2< ScalarType > const & t_,
ScalarType le_ )
inlineexplicit

Construct a new Link object.

Parameters
t_Minor and major radius of the link
le_Elongation length of the link

Member Function Documentation

◆ Eval()

template<common::CArithmetic TScalar>
PBAT_HOST_DEVICE ScalarType pbat::geometry::sdf::Link< TScalar >::Eval ( Vec3< ScalarType > const & p) const
inline

Evaluate the signed distance function at a point.

Parameters
pPoint in 3D space
Returns
Signed distance to the link shape (negative inside, positive outside)

The documentation for this struct was generated from the following file: