Peano
Loading...
Searching...
No Matches
InnerNode.h
Go to the documentation of this file.
1
// This file is part of the Peano project. For conditions of distribution and
2
// use, please see the copyright notice at www.peano-framework.org
3
#pragma once
4
5
#include "
toolbox/curvi/kdTree/Node.h
"
6
7
namespace
toolbox
{
8
namespace
curvi {
9
class
InnerNode
:
public
Node
{
10
public
:
11
InnerNode
(
const
YAML::Node& node);
12
13
~InnerNode
();
14
15
std::string
toString
(
int
depth = 0);
16
17
void
init
(
BlockBoundary
& boundary, uint modes[3]);
18
19
BlockBoundary
traverse
(
int
a_index[3]);
20
21
BlockBoundary
traverseProjection
(
double
coordinate[3]);
22
23
Block
traverse
();
24
25
void
setPosition
(
double
a_position);
26
27
double
getPosition
();
28
29
void
getCoordinates
(
Coordinate
a_coords[2]);
30
31
Coordinate
getFaceNormal
();
32
33
double
evalPerturbation
(
double
y,
double
x);
34
35
void
checkInit
();
36
37
bool
isLeaf
()
const
{
return
false
; }
38
39
40
private
:
41
bool
isInit
;
42
43
Coordinate
coords
[2];
44
double
position
;
45
int
index
;
46
easi::Component*
model
;
47
std::function<double(
double
,
double
)>
perturbation
;
48
49
50
Node
*
left
;
51
Node
*
right
;
52
};
53
}
// namespace curvi
54
}
// namespace toolbox
toolbox::curvi::BlockBoundary
Definition
BlockBoundary.h:17
toolbox::curvi::Block
Definition
Block.h:12
toolbox::curvi::InnerNode
Definition
InnerNode.h:9
toolbox::curvi::InnerNode::perturbation
std::function< double(double, double)> perturbation
Definition
InnerNode.h:47
toolbox::curvi::InnerNode::toString
std::string toString(int depth=0)
toolbox::curvi::InnerNode::init
void init(BlockBoundary &boundary, uint modes[3])
toolbox::curvi::InnerNode::traverse
Block traverse()
toolbox::curvi::InnerNode::isLeaf
bool isLeaf() const
Definition
InnerNode.h:37
toolbox::curvi::InnerNode::index
int index
Definition
InnerNode.h:45
toolbox::curvi::InnerNode::getPosition
double getPosition()
toolbox::curvi::InnerNode::traverseProjection
BlockBoundary traverseProjection(double coordinate[3])
toolbox::curvi::InnerNode::evalPerturbation
double evalPerturbation(double y, double x)
toolbox::curvi::InnerNode::InnerNode
InnerNode(const YAML::Node &node)
toolbox::curvi::InnerNode::coords
Coordinate coords[2]
Definition
InnerNode.h:43
toolbox::curvi::InnerNode::isInit
bool isInit
Definition
InnerNode.h:41
toolbox::curvi::InnerNode::right
Node * right
Definition
InnerNode.h:51
toolbox::curvi::InnerNode::getCoordinates
void getCoordinates(Coordinate a_coords[2])
toolbox::curvi::InnerNode::~InnerNode
~InnerNode()
toolbox::curvi::InnerNode::setPosition
void setPosition(double a_position)
toolbox::curvi::InnerNode::checkInit
void checkInit()
toolbox::curvi::InnerNode::left
Node * left
Definition
InnerNode.h:50
toolbox::curvi::InnerNode::position
double position
Definition
InnerNode.h:44
toolbox::curvi::InnerNode::model
easi::Component * model
Definition
InnerNode.h:46
toolbox::curvi::InnerNode::getFaceNormal
Coordinate getFaceNormal()
toolbox::curvi::InnerNode::traverse
BlockBoundary traverse(int a_index[3])
toolbox::curvi::Node
Definition
Node.h:16
toolbox::curvi::Coordinate
Coordinate
Definition
Coordinate.h:10
toolbox
Definition
InterpolationRestriction.h:10
Node.h
src
toolbox
curvi
kdTree
InnerNode.h
Generated on Wed Nov 4 2026 08:20:47 for Peano by
1.9.8