IMP logo
IMP Reference Guide  develop.714915d50b,2024/12/07
The Integrative Modeling Platform
IMP::algebra::Cone3D Class Reference

Represent a cone in 3D. More...

#include <IMP/algebra/Cone3D.h>

+ Inheritance diagram for IMP::algebra::Cone3D:

Detailed Description

Represent a cone in 3D.

In general, a cone is a pyramid with a circular cross section. A right cone is a cone with its vertex above the center of its base. However, when used without qualification, the term "cone" often means "right cone." We have implemented a "right cone". See geometric primitives for more information.

Definition at line 32 of file Cone3D.h.

Public Member Functions

 Cone3D (const Segment3D &s, double radius)
 Make with top at s.get_point(0), base at s.get_point(1) with given radius. More...
 
double get_angle () const
 
Plane3D get_base_plane () const
 Get the plane supporting the base of the cone. More...
 
bool get_contains (const Vector3D &v) const
 Return True iff the given point is inside the volume. More...
 
Vector3D get_direction () const
 Get the direction of the axis of the cone. More...
 
double get_height () const
 
double get_radius () const
 Get the radius of the base circle. More...
 
Vector3D get_tip () const
 Get the vertex of the cone. More...
 
void show (std::ostream &out=std::cout) const
 

Related Functions

(Note that these are not member functions.)

BoundingBoxD< 3 > get_bounding_box (const Cone3D &g)
 
const Cone3Dget_cone_3d_geometry (const Cone3D &g)
 
double get_surface_area (const Cone3D &g)
 
double get_volume (const Cone3D &g)
 
void set_cone_3d_geometry (Cone3D &g, const Cone3D &v)
 

Constructor & Destructor Documentation

IMP::algebra::Cone3D::Cone3D ( const Segment3D s,
double  radius 
)

Make with top at s.get_point(0), base at s.get_point(1) with given radius.

Member Function Documentation

double IMP::algebra::Cone3D::get_angle ( ) const

The opening angle of a cone is the vertex angle made by a cross section through the apex and center of the base.

Definition at line 46 of file Cone3D.h.

+ Here is the call graph for this function:

Plane3D IMP::algebra::Cone3D::get_base_plane ( ) const

Get the plane supporting the base of the cone.

The cone is on the positive side of the plane.

bool IMP::algebra::Cone3D::get_contains ( const Vector3D v) const

Return True iff the given point is inside the volume.

Vector3D IMP::algebra::Cone3D::get_direction ( ) const

Get the direction of the axis of the cone.

This vector points from the tip into the occupied volume.

Definition at line 42 of file Cone3D.h.

double IMP::algebra::Cone3D::get_radius ( ) const

Get the radius of the base circle.

Definition at line 48 of file Cone3D.h.

Vector3D IMP::algebra::Cone3D::get_tip ( ) const

Get the vertex of the cone.

Definition at line 38 of file Cone3D.h.

Friends And Related Function Documentation

BoundingBoxD< 3 > get_bounding_box ( const Cone3D g)
related

Definition at line 71 of file Cone3D.h.

const Cone3D & get_cone_3d_geometry ( const Cone3D g)
related

Definition at line 71 of file Cone3D.h.

double get_surface_area ( const Cone3D g)
related

Definition at line 71 of file Cone3D.h.

double get_volume ( const Cone3D g)
related

Definition at line 71 of file Cone3D.h.

void set_cone_3d_geometry ( Cone3D g,
const Cone3D v 
)
related

Definition at line 71 of file Cone3D.h.


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