#include "marchingcubes.h"
#include <time.h>
#include "transform.h"
#include "emobject.h"
#include "vec3.h"
Include dependency graph for marchingcubes.cpp:
Go to the source code of this file.
Defines | |
#define | min(a, b) (((a) < (b)) ? (a) : (b)) |
#define | max(a, b) (((a) > (b)) ? (a) : (b)) |
Variables | |
static const int | a2fVertexOffset [8][3] |
static const int | a2fPosXOffset [4][3] |
static const int | a2fPosYOffset [4][3] |
static const int | a2fPosZOffset [4][3] |
static const int | a2fPosXPosYOffset [2][3] |
static const int | a2fPosXPosZOffset [2][3] |
static const int | a2fPosYPosZOffset [2][3] |
static const int | a2fPosXPosZPosYOffset [3] |
static const int | a2OddXOffset [8] |
static const int | a2OddYOffset [8] |
static const int | a2OddZOffset [8] |
static const int | a2iEdgeConnection [12][2] |
static const float | a2fEdgeDirection [12][3] |
static const int | edgeLookUp [12][4] |
int | aiCubeEdgeFlags [256] |
int | a2iTriangleConnectionTable [256][16] |
#define max | ( | a, | |||
b | ) | (((a) > (b)) ? (a) : (b)) |
Definition at line 51 of file marchingcubes.cpp.
Referenced by EMAN::EMData::calc_fourier_shell_correlation(), EMAN::EMData::calc_max_location(), EMAN::MarchingCubes::calculate_surface(), EMAN::EMData::downsample(), EMAN::MarchingCubes::draw_cube(), EMAN::Processor::EMFourierFilterFunc(), EMAN::EMData::find_3d_threshold(), EMAN::Util::find_max(), EMAN::Util::find_min_and_max(), EMAN::nnSSNR_ctfReconstructor::finish(), EMAN::nn4_ctfReconstructor::finish(), EMAN::nnSSNR_Reconstructor::finish(), EMAN::nn4Reconstructor::finish(), GCVmin_Tik(), EMAN::Transform3D::get_rotation(), EMAN::Transform::get_rotation(), EMAN::EMUtil::getRenderMinMax(), EMAN::Util::image_mutation(), EMAN::Util::k_means_cont_table_(), main(), max2d(), max3d(), EMAN::EMData::max_search(), mono(), parabld(), EMAN::HistogramBin::process_inplace(), EMAN::ClampingProcessor::process_inplace(), EMAN::NormalizeByMassProcessor::process_inplace(), EMAN::EMData::rot_scale_conv(), EMAN::EMData::rot_scale_conv7(), EMAN::EMData::rot_scale_conv_new(), EMAN::EMData::rot_scale_conv_new_background(), EMAN::EMData::rotavg(), EMAN::MrcIO::update_stat(), EMAN::EMData::update_stat(), and wustl_mm::GraySkeletonCPP::VolumeSkeletonizer::VoxelOr().
#define min | ( | a, | |||
b | ) | (((a) < (b)) ? (a) : (b)) |
Definition at line 50 of file marchingcubes.cpp.
Referenced by apmq(), EMAN::EMData::calc_min_location(), EMAN::MarchingCubes::calculate_surface(), EMAN::MarchingCubes::draw_cube(), EMAN::EMData::find_3d_threshold(), EMAN::Util::find_min_and_max(), EMAN::BoxSVDClassifier::getMapping(), EMAN::EMUtil::getRenderMinMax(), EMAN::EMData::helicise(), EMAN::Util::histc(), EMAN::Util::image_mutation(), mono(), parabld(), EMAN::HistogramBin::process_inplace(), EMAN::ClampingProcessor::process_inplace(), EMAN::TestImageCylinder::process_inplace(), EMAN::TestImageAxes::process_inplace(), EMAN::NormalizeByMassProcessor::process_inplace(), recons3d_HyBR_mpi_Cart(), EMAN::EMData::rot_scale_trans(), EMAN::EMData::rot_scale_trans_background(), EMAN::EMData::rotavg(), EMAN::EMData::rotavg_i(), EMAN::MrcIO::update_stat(), and EMAN::EMData::update_stat().
const float a2fEdgeDirection[12][3] [static] |
Initial value:
{ {1.0, 0.0, 0.0},{0.0, 1.0, 0.0},{-1.0, 0.0, 0.0},{0.0, -1.0, 0.0}, {1.0, 0.0, 0.0},{0.0, 1.0, 0.0},{-1.0, 0.0, 0.0},{0.0, -1.0, 0.0}, {0.0, 0.0, 1.0},{0.0, 0.0, 1.0},{ 0.0, 0.0, 1.0},{0.0, 0.0, 1.0} }
Definition at line 128 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::marching_cube().
const int a2fPosXOffset[4][3] [static] |
Initial value:
{ {2, 0, 0},{2, 1, 0}, {2, 0, 1},{2, 1, 1} }
Definition at line 61 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube().
const int a2fPosXPosYOffset[2][3] [static] |
Initial value:
{ {2, 2, 0},{2, 2, 1} }
Definition at line 79 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube().
const int a2fPosXPosZOffset[2][3] [static] |
Initial value:
{ {2, 0, 2},{2, 1, 2} }
Definition at line 84 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube().
const int a2fPosXPosZPosYOffset[3] [static] |
const int a2fPosYOffset[4][3] [static] |
Initial value:
{ {1, 2, 0},{0, 2, 0}, {1, 2, 1},{0, 2, 1} }
Definition at line 67 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube().
const int a2fPosYPosZOffset[2][3] [static] |
Initial value:
{ {1, 2, 2},{0, 2, 2} }
Definition at line 89 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube().
const int a2fPosZOffset[4][3] [static] |
Initial value:
{ {0, 0, 2},{1, 0, 2}, {1, 1, 2},{0, 1, 2} }
Definition at line 73 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube().
const int a2fVertexOffset[8][3] [static] |
Initial value:
{ {0, 0, 0},{1, 0, 0},{1, 1, 0},{0, 1, 0}, {0, 0, 1},{1, 0, 1},{1, 1, 1},{0, 1, 1} }
Definition at line 54 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::draw_cube(), and EMAN::MarchingCubes::marching_cube().
const int a2iEdgeConnection[12][2] [static] |
Initial value:
{ {0,1}, {1,2}, {2,3}, {3,0}, {4,5}, {5,6}, {6,7}, {7,4}, {0,4}, {1,5}, {2,6}, {3,7} }
Definition at line 120 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::marching_cube().
int a2iTriangleConnectionTable[256][16] |
Definition at line 575 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::marching_cube().
const int a2OddXOffset[8] [static] |
const int a2OddYOffset[8] [static] |
const int a2OddZOffset[8] [static] |
int aiCubeEdgeFlags[256] |
Initial value:
{ 0x000, 0x109, 0x203, 0x30a, 0x406, 0x50f, 0x605, 0x70c, 0x80c, 0x905, 0xa0f, 0xb06, 0xc0a, 0xd03, 0xe09, 0xf00, 0x190, 0x099, 0x393, 0x29a, 0x596, 0x49f, 0x795, 0x69c, 0x99c, 0x895, 0xb9f, 0xa96, 0xd9a, 0xc93, 0xf99, 0xe90, 0x230, 0x339, 0x033, 0x13a, 0x636, 0x73f, 0x435, 0x53c, 0xa3c, 0xb35, 0x83f, 0x936, 0xe3a, 0xf33, 0xc39, 0xd30, 0x3a0, 0x2a9, 0x1a3, 0x0aa, 0x7a6, 0x6af, 0x5a5, 0x4ac, 0xbac, 0xaa5, 0x9af, 0x8a6, 0xfaa, 0xea3, 0xda9, 0xca0, 0x460, 0x569, 0x663, 0x76a, 0x066, 0x16f, 0x265, 0x36c, 0xc6c, 0xd65, 0xe6f, 0xf66, 0x86a, 0x963, 0xa69, 0xb60, 0x5f0, 0x4f9, 0x7f3, 0x6fa, 0x1f6, 0x0ff, 0x3f5, 0x2fc, 0xdfc, 0xcf5, 0xfff, 0xef6, 0x9fa, 0x8f3, 0xbf9, 0xaf0, 0x650, 0x759, 0x453, 0x55a, 0x256, 0x35f, 0x055, 0x15c, 0xe5c, 0xf55, 0xc5f, 0xd56, 0xa5a, 0xb53, 0x859, 0x950, 0x7c0, 0x6c9, 0x5c3, 0x4ca, 0x3c6, 0x2cf, 0x1c5, 0x0cc, 0xfcc, 0xec5, 0xdcf, 0xcc6, 0xbca, 0xac3, 0x9c9, 0x8c0, 0x8c0, 0x9c9, 0xac3, 0xbca, 0xcc6, 0xdcf, 0xec5, 0xfcc, 0x0cc, 0x1c5, 0x2cf, 0x3c6, 0x4ca, 0x5c3, 0x6c9, 0x7c0, 0x950, 0x859, 0xb53, 0xa5a, 0xd56, 0xc5f, 0xf55, 0xe5c, 0x15c, 0x055, 0x35f, 0x256, 0x55a, 0x453, 0x759, 0x650, 0xaf0, 0xbf9, 0x8f3, 0x9fa, 0xef6, 0xfff, 0xcf5, 0xdfc, 0x2fc, 0x3f5, 0x0ff, 0x1f6, 0x6fa, 0x7f3, 0x4f9, 0x5f0, 0xb60, 0xa69, 0x963, 0x86a, 0xf66, 0xe6f, 0xd65, 0xc6c, 0x36c, 0x265, 0x16f, 0x066, 0x76a, 0x663, 0x569, 0x460, 0xca0, 0xda9, 0xea3, 0xfaa, 0x8a6, 0x9af, 0xaa5, 0xbac, 0x4ac, 0x5a5, 0x6af, 0x7a6, 0x0aa, 0x1a3, 0x2a9, 0x3a0, 0xd30, 0xc39, 0xf33, 0xe3a, 0x936, 0x83f, 0xb35, 0xa3c, 0x53c, 0x435, 0x73f, 0x636, 0x13a, 0x033, 0x339, 0x230, 0xe90, 0xf99, 0xc93, 0xd9a, 0xa96, 0xb9f, 0x895, 0x99c, 0x69c, 0x795, 0x49f, 0x596, 0x29a, 0x393, 0x099, 0x190, 0xf00, 0xe09, 0xd03, 0xc0a, 0xb06, 0xa0f, 0x905, 0x80c, 0x70c, 0x605, 0x50f, 0x406, 0x30a, 0x203, 0x109, 0x000 }
Definition at line 547 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::marching_cube().
const int edgeLookUp[12][4] [static] |
Initial value:
{ {0,0,0,0},{1,0,0,1},{0,1,0,0},{0,0,0,1}, {0,0,1,0},{1,0,1,1},{0,1,1,0},{0,0,1,1}, {0,0,0,2},{1,0,0,2},{1,1,0,2},{0,1,0,2} }
Definition at line 136 of file marchingcubes.cpp.
Referenced by EMAN::MarchingCubes::marching_cube().