Definition at line 40 of file HexagonalArray.H.
Public Member Functions | |
HexagonalArray (std::size_t numRadii, double deltaRadius, const std::array< double, 3 > ¢er={0, 0, 0}) | |
const std::size_t & | getPatternRowCol (int row, int col) const |
const std::size_t & | getPatternCoordCenter (int right, int rightUp) const |
void | setPatternRowCol (int row, int col, std::size_t patternKey) |
void | setPatternCoordCenter (int right, int rightUp, std::size_t patternKey) |
The shape will be translated by right * [getGridDistance(), 0, 0] + rightUp * [getGridDistance() * cos(60), getGridDistance() * sin(60), 0] + getCenter() . More... | |
std::size_t | getNumRadii () const |
double | getGridDistance () const |
void | setGridDistance (double gridDistance) |
std::size_t | getNumPatternShapes () const |
const ShapeBase * | getPatternShape (std::size_t idx) const |
void | setPatternShape (std::size_t idx, const std::shared_ptr< ShapeBase > &shape) |
template<typename Shape > | |
void | insertPatternShape (std::size_t idx, Shape &&shape) |
template<typename Shape , typename... Args> | |
void | makePatternShape (std::size_t idx, Args &&...args) |
void | fillPattern (std::size_t idx) |
const std::array< double, 3 > & | getCenter () const |
void | setCenter (const std::array< double, 3 > ¢er) |
Static Public Member Functions | |
static std::array< double, 3 > | getRotatedPoint (const std::array< double, 3 > ¢er, const std::array< double, 2 > &rotation) |
Protected Member Functions | |
NEM::GEO::GeoManager | createGeo () const override |
Construct a NEM::GEO::GeoManager . More... | |
std::size_t | getPatternSize () const |
const std::size_t & | getPattern (std::size_t idx) const |
void | setPattern (std::size_t idx, std::size_t patternKey) |
template<typename Modifier > | |
NEM::GEO::GeoManager | createGeoImpl (Modifier &&modifier) const |
Static Protected Member Functions | |
static NEM::GEO::GeoManager | basicTransformation (const gp_Trsf &transformation, NEM::GEO::GeoManager &&geoMetadata) |
static void | mergeGeo (NEM::GEO::GeoManager &keepGeo, NEM::GEO::GeoManager &&removeGeo) |
Merge two 2d NEM::GEO::GeoManager objects by cutting shapes in removeGeo from shapes in keepGeo and sewing the resulting faces. More... | |
Private Attributes | |
double | delta_ |
std::size_t | numRadii_ |
Inherits NEM::NUCMESH::ShapesArray.
NEM::NUCMESH::HexagonalArray::HexagonalArray | ( | std::size_t | numRadii, |
double | deltaRadius, | ||
const std::array< double, 3 > & | center = {0, 0, 0} |
||
) |
Definition at line 141 of file HexagonalArray.C.
|
staticprotectedinherited |
Definition at line 81 of file ShapesArray.C.
References NEM::GEO::GeoManager::buildCompound(), NEM::GEO::GeoManager::insert(), and NEM::DRV::JSON::shapeType.
Referenced by createGeo(), NEM::NUCMESH::RectangularArray::createGeo(), and NEM::NUCMESH::PolarArray::createGeo().
|
overrideprotectedvirtual |
NEM::GEO::GeoManager
object representing the shape described by this object Implements NEM::NUCMESH::ShapeBase.
Definition at line 171 of file HexagonalArray.C.
References NEM::NUCMESH::ShapesArray::basicTransformation(), NEM::NUCMESH::ShapesArray::createGeoImpl(), delta_, and NEM::NUCMESH::ShapeBase::getCenter().
|
inlineprotectedinherited |
Definition at line 87 of file ShapesArray.H.
References NEM::NUCMESH::ShapeBase::mergeGeo().
Referenced by createGeo(), NEM::NUCMESH::RectangularArray::createGeo(), and NEM::NUCMESH::PolarArray::createGeo().
|
inherited |
Definition at line 65 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::pattern_.
|
inherited |
Definition at line 50 of file ShapeBase.C.
References NEM::NUCMESH::ShapeBase::center_.
Referenced by createGeo(), NEM::NUCMESH::RectangularArray::createGeo(), NEM::NUCMESH::CirclesAndPolys::createGeo(), NEM::NUCMESH::PolarArray::createGeo(), and NEM::NUCMESH::Circles::createGeo().
|
inline |
Definition at line 57 of file HexagonalArray.H.
|
inherited |
Definition at line 45 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::patternShapes_.
Referenced by NEM::DRV::JSON::modify_helper().
|
inline |
Definition at line 56 of file HexagonalArray.H.
|
protectedinherited |
Definition at line 73 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::pattern_.
Referenced by NEM::NUCMESH::RectangularArray::getPattern(), and getPatternCoordCenter().
const std::size_t & NEM::NUCMESH::HexagonalArray::getPatternCoordCenter | ( | int | right, |
int | rightUp | ||
) | const |
Definition at line 152 of file HexagonalArray.C.
References NEM::NUCMESH::ShapesArray::getPattern().
Referenced by getPatternRowCol().
const std::size_t & NEM::NUCMESH::HexagonalArray::getPatternRowCol | ( | int | row, |
int | col | ||
) | const |
Definition at line 147 of file HexagonalArray.C.
References getPatternCoordCenter(), and numRadii_.
|
inherited |
Definition at line 49 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::patternShapes_.
|
protectedinherited |
Definition at line 71 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::pattern_.
|
staticinherited |
center | Center of circle |
rotation | {Radius, angle in degrees} |
center
and normal [0, 0, 1], radius rotation
[0] and angle (in degrees) rotation
[1] Definition at line 58 of file ShapeBase.C.
Referenced by NEM::NUCMESH::PolarArray::createGeo(), and NEM::DRV::JSON::modify_helper().
|
inlineinherited |
Definition at line 62 of file ShapesArray.H.
|
inlineinherited |
Definition at line 69 of file ShapesArray.H.
|
staticprotectedinherited |
[in,out] | keepGeo | Merge geometry from removeGeo into this object |
[in] | removeGeo | Move geometry and data from this object into keepGeo |
Definition at line 66 of file ShapeBase.C.
References NEM::GEO::GeoManager::buildCompound(), NEM::GEO::GeoManager::deleteShapes(), NEM::GEO::GeoManager::getDim(), NEM::GEO::GeoManager::insert(), NEM::GEO::GeoManager::modify(), NEM::GEO::GeoManager::setDim(), and NEM::DRV::JSON::shapeType.
Referenced by NEM::NUCMESH::ShapesArray::createGeoImpl(), and NEM::SRV::NucMeshSrv::FillOutputPortInformation().
|
inherited |
Definition at line 52 of file ShapeBase.C.
References NEM::NUCMESH::ShapeBase::center_.
Referenced by NEM::DRV::JSON::modify_helper().
|
inline |
|
protectedinherited |
Definition at line 77 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::pattern_.
Referenced by NEM::DRV::JSON::modify_helper(), NEM::NUCMESH::RectangularArray::setPattern(), and setPatternCoordCenter().
void NEM::NUCMESH::HexagonalArray::setPatternCoordCenter | ( | int | right, |
int | rightUp, | ||
std::size_t | patternKey | ||
) |
Definition at line 163 of file HexagonalArray.C.
References NEM::NUCMESH::ShapesArray::setPattern().
Referenced by setPatternRowCol().
void NEM::NUCMESH::HexagonalArray::setPatternRowCol | ( | int | row, |
int | col, | ||
std::size_t | patternKey | ||
) |
Definition at line 157 of file HexagonalArray.C.
References numRadii_, and setPatternCoordCenter().
Referenced by NEM::DRV::JSON::modify_helper().
|
inherited |
Definition at line 57 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::patternShapes_.
Referenced by NEM::DRV::JSON::modify_helper().
|
private |
Definition at line 64 of file HexagonalArray.H.
Referenced by createGeo().
|
private |
Definition at line 65 of file HexagonalArray.H.
Referenced by getPatternRowCol(), and setPatternRowCol().