Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Cube Class Reference

#include <JETSCAPE/blob/main/external_packages/cornelius.h>

+ Collaboration diagram for Cube:

Public Member Functions

 Cube ()
 
 ~Cube ()
 
void init (double ***&, int, double, double *&)
 
void construct_polygons (double)
 
int get_Nlines ()
 
int get_Npolygons ()
 
int is_ambiguous ()
 
Polygonget_polygons ()
 
 Cube ()
 
 ~Cube ()
 
void init (double ***&, int, double, double *&)
 
void construct_polygons (double)
 
int get_Nlines ()
 
int get_Npolygons ()
 
int is_ambiguous ()
 
Polygonget_polygons ()
 
 Cube ()
 
 ~Cube ()
 
void init (double ***&, int, double, double *&)
 
void construct_polygons (double)
 
int get_Nlines ()
 
int get_Npolygons ()
 
int is_ambiguous ()
 
Polygonget_polygons ()
 
 Cube ()
 
 ~Cube ()
 
void init (double ***&, int, double, double *&)
 
void construct_polygons (double)
 
int get_Nlines ()
 
int get_Npolygons ()
 
int is_ambiguous ()
 
Polygonget_polygons ()
 

Private Member Functions

void split_to_squares ()
 
void check_ambiguous (int)
 
void split_to_squares ()
 
void check_ambiguous (int)
 
void split_to_squares ()
 
void check_ambiguous (int)
 
void split_to_squares ()
 
void check_ambiguous (int)
 

Private Attributes

double *** cube
 
Line ** lines
 
Polygonpolygons
 
Squaresquares
 
int Nlines
 
int Npolygons
 
int ambiguous
 
int const_i
 
double const_value
 
int x1
 
int x2
 
int x3
 
doubledx
 

Static Private Attributes

static const int DIM = 4
 
static const int CUBE_DIM = 4
 
static const int MAX_POLY = 8
 
static const int NSQUARES = 6
 
static const int STEPS = 2
 

Detailed Description

This class handles 3d-cubes. Splits them into squares and collects polygons from the lines given from squares.

This class handles 3d-cubes. Splits them into squares and collects polygons from the lines given from squares.

13.10.2011 Hannu Holopainen

Definition at line 1382 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1382 of file cornelius.cpp

Constructor & Destructor Documentation

Cube::Cube ( )

Constructor allocated memory.

Definition at line 1419 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1419 of file cornelius.cpp

References i, j, and test_fpe::lines.

Cube::~Cube ( )

Destructor frees memory allocated in constructor.

Definition at line 1438 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1438 of file cornelius.cpp

References i, j, and test_fpe::lines.

Cube::Cube ( )
Cube::~Cube ( )
Cube::Cube ( )
Cube::~Cube ( )
Cube::Cube ( )
Cube::~Cube ( )

Member Function Documentation

void Cube::check_ambiguous ( int  )
private
void Cube::check_ambiguous ( int  )
private
void Cube::check_ambiguous ( int  Nlines)
private

Checks if the surface is ambiguous in this cube.

Definition at line 1628 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1628 of file cornelius.cpp

References i.

void Cube::check_ambiguous ( int  )
private
void Cube::construct_polygons ( double  )
void Cube::construct_polygons ( double  )
void Cube::construct_polygons ( double  value0)

Here we construct polygons from the lines. If the surface cannot be ambiguous, all lines are just added to single polygon, but if the surface might be ambiguous we order the lines and determine how many polygons we have.

Definition at line 1552 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1552 of file cornelius.cpp

References i, j, test_fpe::lines, and merge_hashes::p.

void Cube::construct_polygons ( double  )
int Cube::get_Nlines ( )
int Cube::get_Nlines ( )
int Cube::get_Nlines ( )

Returns the number of the lines in this cube.

Returns
Number of the lines

Definition at line 1664 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1664 of file cornelius.cpp

int Cube::get_Nlines ( )
int Cube::get_Npolygons ( )
int Cube::get_Npolygons ( )
int Cube::get_Npolygons ( )
int Cube::get_Npolygons ( )

Returns the number of the polygons in this cube.

Returns
Number of the polygons in this cube

Definition at line 1676 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1676 of file cornelius.cpp

Polygon* Cube::get_polygons ( )
Polygon* Cube::get_polygons ( )
Polygon * Cube::get_polygons ( )

Returns a table containing the polygons found from this cube.

Returns
List of the polygons found from this cube

Definition at line 1688 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1688 of file cornelius.cpp

Polygon* Cube::get_polygons ( )
void Cube::init ( double ***&  ,
int  ,
double  ,
double *&   
)
void Cube::init ( double ***&  ,
int  ,
double  ,
double *&   
)
void Cube::init ( double ***&  ,
int  ,
double  ,
double *&   
)
void Cube::init ( double ***&  c,
int  c_i,
double  c_v,
double *&  dex 
)

Initializes the cube. Can be used several times to replace the old cube wit a new one.

Parameters
[in]cValues at the corners of cube
[in]c_iIndex that is constant at this square
[in]c_valValue for the constant index
[in]dexLenghts of the sides

Definition at line 1463 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1463 of file cornelius.cpp

References i, j, and k.

int Cube::is_ambiguous ( )
int Cube::is_ambiguous ( )
int Cube::is_ambiguous ( )
int Cube::is_ambiguous ( )

Tells if the surface elements is ambiguous in this cube. Zero if not ambiguous, non-zero if ambiguous.

Returns
Zero if not ambiguous, non-zero if ambiguous

Definition at line 1652 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1652 of file cornelius.cpp

void Cube::split_to_squares ( )
private
void Cube::split_to_squares ( )
private
void Cube::split_to_squares ( )
private
void Cube::split_to_squares ( )
private

Splits given cube to squares.

Definition at line 1502 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1502 of file cornelius.cpp

References i, and j.

Member Data Documentation

int Cube::ambiguous
private

Definition at line 1396 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1396 of file cornelius.cpp

int Cube::const_i
private

Definition at line 1397 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1397 of file cornelius.cpp

double Cube::const_value
private

Definition at line 1398 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1398 of file cornelius.cpp

double *** Cube::cube
private

Definition at line 1390 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1390 of file cornelius.cpp

static const int Cube::CUBE_DIM = 4
staticprivate

Definition at line 1386 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1386 of file cornelius.cpp

static const int Cube::DIM = 4
staticprivate

Definition at line 1385 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1385 of file cornelius.cpp

double * Cube::dx
private

Definition at line 1400 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1400 of file cornelius.cpp

Line ** Cube::lines
private

Definition at line 1391 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1391 of file cornelius.cpp

static const int Cube::MAX_POLY = 8
staticprivate

Definition at line 1387 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1387 of file cornelius.cpp

int Cube::Nlines
private

Definition at line 1394 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1394 of file cornelius.cpp

int Cube::Npolygons
private

Definition at line 1395 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1395 of file cornelius.cpp

static const int Cube::NSQUARES = 6
staticprivate

Definition at line 1388 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1388 of file cornelius.cpp

Polygon * Cube::polygons
private

Definition at line 1392 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1392 of file cornelius.cpp

Square * Cube::squares
private

Definition at line 1393 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1393 of file cornelius.cpp

static const int Cube::STEPS = 2
staticprivate

Definition at line 1389 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1389 of file cornelius.cpp

int Cube::x1
private

Definition at line 1399 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1399 of file cornelius.cpp

int Cube::x2
private

Definition at line 1399 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1399 of file cornelius.cpp

int Cube::x3
private

Definition at line 1399 of file cornelius.cpp.

View newest version in sPHENIX GitHub at line 1399 of file cornelius.cpp


The documentation for this class was generated from the following files: