FieldGroup< BaseTypeList_T, Dims_T >::PointIsect Struct Reference

`#include <FieldGroup.h>`

## Public Member Functions

template<typename T>
void | operator() (const T &vec) const
| Functor.
| PointIsect (const V3d &wsP)
| Ctor.
bool | result () const
| Result.

## Private Attributes

bool | m_doesIntersect
V3d | m_wsP

## Detailed Description

template<typename BaseTypeList_T, int Dims_T>
struct FieldGroup< BaseTypeList_T, Dims_T >::PointIsect

Definition at line 1424 of file FieldGroup.h.

## Constructor & Destructor Documentation

## PointIsect()

template<typename BaseTypeList_T, int Dims_T>

FieldGroup< BaseTypeList_T, Dims_T >::PointIsect::PointIsect | ( | const V3d & | wsP | ) |

inline

Ctor.

Definition at line 1427 of file FieldGroup.h.

: m_wsP(wsP), m_doesIntersect(false)
{ }
FieldGroup::PointIsect::m_doesIntersect
bool m_doesIntersect
Definition FieldGroup.h:1459
FieldGroup::PointIsect::m_wsP
V3d m_wsP
Definition FieldGroup.h:1458
FieldGroup
Definition FieldGroup.h:304

References m_doesIntersect, and m_wsP.

## Member Function Documentation

## operator()()

template<typename BaseTypeList_T, int Dims_T>
template<typename T>

void FieldGroup< BaseTypeList_T, Dims_T >::PointIsect::operator() | ( | const T & | vec | ) | const

inline

Functor.

Definition at line 1432 of file FieldGroup.h.

{
for (size_t field = 0, end = vec.size(); field < end; ++field) {
// Loop over fields in vector
for (size_t i = 0, end = vec.size(); i < end; ++i) {
V3d vsP;
// Apply world to object transform
if (vec[i].doOsToWs) {
V3d osP;
vec[i].wsToOs.multVecMatrix(m_wsP, osP);
vec[i].mapping->worldToVoxel(osP, vsP);
} else {
vec[i].mapping->worldToVoxel(m_wsP, vsP);
}
// Sample
if (vec[i].vsBounds.intersects(vsP)) {
m_doesIntersect = true;
}
}
}
}
FieldGroup::size
virtual size_t size() const
The number of fields in the group.
Definition FieldGroup.h:689
FieldGroup::intersects
bool intersects(const V3d &wsP) const
Whether the given point intersects any of the fields in the FieldGroup.
Definition FieldGroup.h:826

References m_doesIntersect, and m_wsP.

## result()

template<typename BaseTypeList_T, int Dims_T>

bool FieldGroup< BaseTypeList_T, Dims_T >::PointIsect::result | ( |  | ) | const

inline

Result.

Definition at line 1454 of file FieldGroup.h.

{ return m_doesIntersect; }

References m_doesIntersect.

Referenced by FieldGroup< BaseTypeList_T, Dims_T >::intersects().

## Member Data Documentation

## m_wsP

template<typename BaseTypeList_T, int Dims_T>

V3d FieldGroup< BaseTypeList_T, Dims_T >::PointIsect::m_wsP

private

Definition at line 1458 of file FieldGroup.h.

Referenced by operator()(), and PointIsect().

## m_doesIntersect

template<typename BaseTypeList_T, int Dims_T>

bool FieldGroup< BaseTypeList_T, Dims_T >::PointIsect::m_doesIntersect

private

Definition at line 1459 of file FieldGroup.h.

Referenced by operator()(), PointIsect(), and result().

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

- export/FieldGroup.h