本文整理汇总了C++中Sphere::centroid方法的典型用法代码示例。如果您正苦于以下问题:C++ Sphere::centroid方法的具体用法?C++ Sphere::centroid怎么用?C++ Sphere::centroid使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sphere
的用法示例。
在下文中一共展示了Sphere::centroid方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: expand
// expand an axis-aligned bounding box to include a sphere
KOKKOS_INLINE_FUNCTION
void expand( Box &box, Sphere const &sphere )
{
using KokkosExt::max;
using KokkosExt::min;
for ( int d = 0; d < 3; ++d )
{
box.minCorner()[d] =
min( box.minCorner()[d], sphere.centroid()[d] - sphere.radius() );
box.maxCorner()[d] =
max( box.maxCorner()[d], sphere.centroid()[d] + sphere.radius() );
}
}
示例2: isValid
KOKKOS_INLINE_FUNCTION
bool isValid( Sphere const &s )
{
using KokkosExt::isFinite;
return isValid( s.centroid() ) && isFinite( s.radius() ) &&
( s.radius() >= 0. );
}
示例3: equals
KOKKOS_INLINE_FUNCTION
bool equals( Sphere const &l, Sphere const &r )
{
return equals( l.centroid(), r.centroid() ) && l.radius() == r.radius();
}
示例4: returnCentroid
KOKKOS_INLINE_FUNCTION
Point returnCentroid( Sphere const &sphere ) { return sphere.centroid(); }
示例5: intersects
// check if a sphere intersects with an axis-aligned bounding box
KOKKOS_INLINE_FUNCTION
bool intersects( Sphere const &sphere, Box const &box )
{
return distance( sphere.centroid(), box ) <= sphere.radius();
}
示例6: distance
// distance point-sphere
KOKKOS_INLINE_FUNCTION
double distance( Point const &point, Sphere const &sphere )
{
using KokkosExt::max;
return max( distance( point, sphere.centroid() ) - sphere.radius(), 0. );
}