MURE
Loading...
Searching...
No Matches
MCNPHexagon.hxx
Go to the documentation of this file.
1/*
2 This file is part of MURE,
3 Copyright (C) 2007-2021 MURE developers.
4
5 MURE is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 MURE is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with MURE. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19#ifndef _MCNPHEXAGON_HXX_
20#define _MCNPHEXAGON_HXX_
21
27#include <vector>
28#include <cmath>
29#include <iosfwd>
30#include <string>
31
32using namespace std;
33#include "MathHexagon.hxx"
34#include "MCNPNode.hxx"
35
36namespace MCNP
37{
38
40
48class Hexagon : public MathHexagon, public Node
49{
50 public :
52
63 Hexagon(double HalfHeight = 0.005, double Side = 0.01, int Sign = - 1);
65
76 Hexagon(const char *Infinite, double Side = 0.01, int Sign = - 1);
77 Hexagon(const Hexagon &h);
78
79 string Print() override;
80
81 protected :
82 Hexagon *CreateNewInstance(int sign = 1) override;
83 Hexagon(double HalfHeight, double Side, int Sign, bool Infinite);
84 void ReplaceMathShape();
85};
86}
87
88#endif
#define sign(a)
Definition GenericReactorAssembly.cxx:43
Header file for MCNP::Node class.
Header file for MathHexagon class.
Regular hexagon Shape of a given height.
Definition MCNPHexagon.hxx:49
string Print() override
Print the Hexagon surface in MCNP cell.
Definition MCNPHexagon.cxx:114
Hexagon * CreateNewInstance(int sign=1) override
a new Hexagon instance.(if sign=-1, create the complemantary).
Definition MCNPHexagon.cxx:179
void ReplaceMathShape()
Replace MathShape leaf by MCNP Shape.
Definition MCNPHexagon.cxx:62
Node allows to construct Union or Intersection of Shape.
Definition MCNPNode.hxx:51
Regular hexagon Shape of a given height.
Definition MathHexagon.hxx:49
This MCNP (concrete) class is used to built a reactor assembly.
Definition MCNPBrick.hxx:41
the namespace of the Standard C++

MURE Project, documentation generated by Doxygen 1.9.7 - Fri Jan 19 2024