NEURON
geometry3d.cpp File Reference
#include <math.h>
#include <cstdio>
#include <cassert>

Go to the source code of this file.

Classes

class  geometry3d_Cylinder
 
class  geometry3d_Cone
 
class  geometry3d_Sphere
 
class  geometry3d_Plane
 

Functions

int geometry3d_find_triangles (double value0, double value1, double value2, double value3, double value4, double value5, double value6, double value7, double x0, double x1, double y0, double y1, double z0, double z1, double *out, int offset)
 
double geometry3d_llgramarea (double *p0, double *p1, double *p2)
 
double geometry3d_sum_area_of_triangles (double *tri_vec, int len)
 
double max (double a, double b)
 
void geometry3d_vi (double *p1, double *p2, double v1, double v2, double *out)
 
voidgeometry3d_new_Cylinder (double x0, double y0, double z0, double x1, double y1, double z1, double r)
 
void geometry3d_delete_Cylinder (void *ptr)
 
double geometry3d_Cylinder_signed_distance (void *ptr, double px, double py, double pz)
 
voidgeometry3d_new_Cone (double x0, double y0, double z0, double r0, double x1, double y1, double z1, double r1)
 
void geometry3d_delete_Cone (void *ptr)
 
double geometry3d_Cone_signed_distance (void *ptr, double px, double py, double pz)
 
voidgeometry3d_new_Sphere (double x, double y, double z, double r)
 
void geometry3d_delete_Sphere (void *ptr)
 
double geometry3d_Sphere_signed_distance (void *ptr, double px, double py, double pz)
 
voidgeometry3d_new_Plane (double x, double y, double z, double nx, double ny, double nz)
 
void geometry3d_delete_Plane (void *ptr)
 
double geometry3d_Plane_signed_distance (void *ptr, double px, double py, double pz)
 

Variables

const int edgeTable []
 
const int triTable [256][16]
 

Function Documentation

◆ geometry3d_Cone_signed_distance()

double geometry3d_Cone_signed_distance ( void ptr,
double  px,
double  py,
double  pz 
)

Definition at line 567 of file geometry3d.cpp.

◆ geometry3d_Cylinder_signed_distance()

double geometry3d_Cylinder_signed_distance ( void ptr,
double  px,
double  py,
double  pz 
)

Definition at line 485 of file geometry3d.cpp.

◆ geometry3d_delete_Cone()

void geometry3d_delete_Cone ( void ptr)

Definition at line 563 of file geometry3d.cpp.

◆ geometry3d_delete_Cylinder()

void geometry3d_delete_Cylinder ( void ptr)

Definition at line 481 of file geometry3d.cpp.

◆ geometry3d_delete_Plane()

void geometry3d_delete_Plane ( void ptr)

Definition at line 618 of file geometry3d.cpp.

◆ geometry3d_delete_Sphere()

void geometry3d_delete_Sphere ( void ptr)

Definition at line 590 of file geometry3d.cpp.

◆ geometry3d_find_triangles()

int geometry3d_find_triangles ( double  value0,
double  value1,
double  value2,
double  value3,
double  value4,
double  value5,
double  value6,
double  value7,
double  x0,
double  x1,
double  y0,
double  y1,
double  z0,
double  z1,
double *  out,
int  offset 
)

Definition at line 345 of file geometry3d.cpp.

◆ geometry3d_llgramarea()

double geometry3d_llgramarea ( double *  p0,
double *  p1,
double *  p2 
)

Definition at line 399 of file geometry3d.cpp.

◆ geometry3d_new_Cone()

void* geometry3d_new_Cone ( double  x0,
double  y0,
double  z0,
double  r0,
double  x1,
double  y1,
double  z1,
double  r1 
)

Definition at line 560 of file geometry3d.cpp.

◆ geometry3d_new_Cylinder()

void* geometry3d_new_Cylinder ( double  x0,
double  y0,
double  z0,
double  x1,
double  y1,
double  z1,
double  r 
)

Definition at line 478 of file geometry3d.cpp.

◆ geometry3d_new_Plane()

void* geometry3d_new_Plane ( double  x,
double  y,
double  z,
double  nx,
double  ny,
double  nz 
)

Definition at line 615 of file geometry3d.cpp.

◆ geometry3d_new_Sphere()

void* geometry3d_new_Sphere ( double  x,
double  y,
double  z,
double  r 
)

Definition at line 587 of file geometry3d.cpp.

◆ geometry3d_Plane_signed_distance()

double geometry3d_Plane_signed_distance ( void ptr,
double  px,
double  py,
double  pz 
)

Definition at line 622 of file geometry3d.cpp.

◆ geometry3d_Sphere_signed_distance()

double geometry3d_Sphere_signed_distance ( void ptr,
double  px,
double  py,
double  pz 
)

Definition at line 594 of file geometry3d.cpp.

◆ geometry3d_sum_area_of_triangles()

double geometry3d_sum_area_of_triangles ( double *  tri_vec,
int  len 
)

Definition at line 413 of file geometry3d.cpp.

◆ geometry3d_vi()

void geometry3d_vi ( double *  p1,
double *  p2,
double  v1,
double  v2,
double *  out 
)

Definition at line 322 of file geometry3d.cpp.

◆ max()

double max ( double  a,
double  b 
)
inline

Definition at line 22 of file geometry3d.cpp.

Variable Documentation

◆ edgeTable

const int edgeTable[]

Definition at line 26 of file geometry3d.cpp.

◆ triTable

const int triTable[256][16]

Definition at line 61 of file geometry3d.cpp.