Arrange a series of other ShapeBase objects along a circular arc.
More...
Definition at line 43 of file PolarArray.H.
Public Member Functions | |
| PolarArray (std::size_t numSubshapes, double startAngle, double endAngle, double radius, bool rotateWithArray=false, const std::array< double, 3 > ¢er={0, 0, 0}) | |
| std::size_t | getNumSubshapes () const |
| double | getRadius () const |
| void | setRadius (double radius) |
| double | getStartAngle () const |
| void | setStartAngle (double startAngle) |
| double | getEndAngle () const |
| void | setEndAngle (double endAngle) |
| bool | getRotateWithArray () const |
| void | setRotateWithArray (bool rotateWithArray) |
| 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 | |
| std::size_t | numShapesInArr_ |
| double | radius_ |
| double | start_ |
| double | end_ |
| bool | rotateWithArray_ |
Inherits NEM::NUCMESH::ShapesArray.
| NEM::NUCMESH::PolarArray::PolarArray | ( | std::size_t | numSubshapes, |
| double | startAngle, | ||
| double | endAngle, | ||
| double | radius, | ||
| bool | rotateWithArray = false, |
||
| const std::array< double, 3 > & | center = {0, 0, 0} |
||
| ) |
Definition at line 49 of file PolarArray.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 NEM::NUCMESH::HexagonalArray::createGeo(), NEM::NUCMESH::RectangularArray::createGeo(), and createGeo().
|
overrideprotectedvirtual |
NEM::GEO::GeoManager object representing the shape described by this object Implements NEM::NUCMESH::ShapeBase.
Definition at line 59 of file PolarArray.C.
References NEM::NUCMESH::ShapesArray::basicTransformation(), NEM::NUCMESH::ShapesArray::createGeoImpl(), end_, NEM::NUCMESH::ShapeBase::getCenter(), NEM::NUCMESH::ShapeBase::getRotatedPoint(), numShapesInArr_, radius_, rotateWithArray_, and start_.
|
inlineprotectedinherited |
Definition at line 87 of file ShapesArray.H.
References NEM::NUCMESH::ShapeBase::mergeGeo().
Referenced by NEM::NUCMESH::HexagonalArray::createGeo(), NEM::NUCMESH::RectangularArray::createGeo(), and 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 NEM::NUCMESH::HexagonalArray::createGeo(), NEM::NUCMESH::RectangularArray::createGeo(), NEM::NUCMESH::CirclesAndPolys::createGeo(), createGeo(), and NEM::NUCMESH::Circles::createGeo().
|
inline |
Definition at line 63 of file PolarArray.H.
|
inherited |
Definition at line 45 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::patternShapes_.
Referenced by NEM::DRV::JSON::modify_helper().
|
inline |
|
protectedinherited |
Definition at line 73 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::pattern_.
Referenced by NEM::NUCMESH::RectangularArray::getPattern(), and NEM::NUCMESH::HexagonalArray::getPatternCoordCenter().
|
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_.
|
inline |
Definition at line 59 of file PolarArray.H.
|
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 createGeo(), and NEM::DRV::JSON::modify_helper().
|
inline |
Definition at line 65 of file PolarArray.H.
|
inline |
Definition at line 61 of file PolarArray.H.
|
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 NEM::NUCMESH::HexagonalArray::setPatternCoordCenter().
|
inherited |
Definition at line 57 of file ShapesArray.C.
References NEM::NUCMESH::ShapesArray::patternShapes_.
Referenced by NEM::DRV::JSON::modify_helper().
|
inline |
|
inline |
|
inline |
|
private |
Definition at line 77 of file PolarArray.H.
Referenced by createGeo().
|
private |
Definition at line 74 of file PolarArray.H.
Referenced by createGeo().
|
private |
Definition at line 75 of file PolarArray.H.
Referenced by createGeo().
|
private |
Definition at line 78 of file PolarArray.H.
Referenced by createGeo().
|
private |
Definition at line 76 of file PolarArray.H.
Referenced by createGeo().