Lattice Microbes 2.5
This is for whole cell modeling
Loading...
Searching...
No Matches
lm::builder::Hemisphere Class Reference

A hemisphere Shape. More...

#include <Hemisphere.h>

Inheritance diagram for lm::builder::Hemisphere:
[legend]
Collaboration diagram for lm::builder::Hemisphere:
[legend]

Public Member Functions

 Hemisphere (point center, si_dist_t radius, vector orientation, site_t type)
 Create a Hemisphere.
virtual ~Hemisphere ()
 Destroy the Hemisphere.
virtual bool intersects (Shape *query)
 Check if two shapes intersect.
virtual bool contains (point query)
 Determine if the shape contains the specified point.
virtual bool contains (Shape *query)
 Determine if the shape contains the specified shape.
virtual point getCenter ()
 Get the center of the Hemisphere.
virtual si_dist_t getRadius ()
 Get the radius of the Hemisphere.
virtual vector getOrientation ()
 Get the orientation vector of the Hemisphere.
virtual double getVolume ()
 Get the volume contained by the Hemisphere.
Public Member Functions inherited from lm::builder::Shape
 Shape (ShapeType shapeType, bounding_box boundingBox, site_t type, vector at=vector(0.0, 0.0, 1.0), vector up=vector(0.0, 1.0, 0.0))
 Create a Shape.
virtual ~Shape ()
 Destroy the Shape.
virtual bool boundingBoxesIntersect (Shape *query)
 Checks if another shape's bounding box interstects with this shape's bounding box.
virtual bounding_box getBoundingBox ()
 Get the bounding box.
virtual site_t getType ()
 Get the site type associated with the shape.
virtual ShapeType getShapeType ()
 Get the shape type.
virtual void discretizeTo (lm::rdme::Lattice *lattice)
 Discretize the object to the specified lattice.

Protected Attributes

point center
si_dist_t radius
vector orientation
Protected Attributes inherited from lm::builder::Shape
ShapeType shapeType
bounding_box boundingBox
site_t type
vector at
vector up
matrix rotation

Additional Inherited Members

Public Types inherited from lm::builder::Shape
enum  ShapeType {
  SPHERE = 1 , HEMISPHERE = 2 , CYLINDER = 3 , CAPSULE = 4 ,
  CUBOID = 5 , CAPSULE_SHELL = 6 , UNION = 7 , DIFFERENCE = 8 ,
  INTERSECTION = 9 , MESH = 10 , TORUS = 11 , ELLIPSE = 12 ,
  CONE = 13 , UNIONSET = 14
}
 Possible shape types that can be used in Lattice Microbes. More...
Protected Member Functions inherited from lm::builder::Shape
double integrateToPercentThreshold (double percent)
double integrateToCount (int count)
virtual point minBounds (point p1, point p2) const
virtual point maxBounds (point p1, point p2) const

Detailed Description

A hemisphere Shape.

Constructor & Destructor Documentation

◆ Hemisphere()

lm::builder::Hemisphere::Hemisphere ( point center,
si_dist_t radius,
vector orientation,
site_t type )

Create a Hemisphere.

Parameters
centerPoint center of the circle of the slice plane through the Hemisphere
radiusRadius of the Hemisphere
orientationOrientation normal to the center point of the center point in the direction of the curved part of the hemisphere
typeThe type of the sites within the hemisphere
Here is the call graph for this function:

◆ ~Hemisphere()

lm::builder::Hemisphere::~Hemisphere ( )
virtual

Destroy the Hemisphere.

Member Function Documentation

◆ contains() [1/2]

bool lm::builder::Hemisphere::contains ( point query)
virtual

Determine if the shape contains the specified point.

Parameters
queryPoint to test
Returns
true/false

Implements lm::builder::Shape.

◆ contains() [2/2]

bool lm::builder::Hemisphere::contains ( Shape * query)
virtual

Determine if the shape contains the specified shape.

Parameters
queryShape to test
Returns
true/false

Implements lm::builder::Shape.

Here is the call graph for this function:

◆ getCenter()

virtual point lm::builder::Hemisphere::getCenter ( )
inlinevirtual

Get the center of the Hemisphere.

Here is the caller graph for this function:

◆ getOrientation()

virtual vector lm::builder::Hemisphere::getOrientation ( )
inlinevirtual

Get the orientation vector of the Hemisphere.

Here is the caller graph for this function:

◆ getRadius()

virtual si_dist_t lm::builder::Hemisphere::getRadius ( )
inlinevirtual

Get the radius of the Hemisphere.

Here is the caller graph for this function:

◆ getVolume()

double lm::builder::Hemisphere::getVolume ( )
virtual

Get the volume contained by the Hemisphere.

Implements lm::builder::Shape.

◆ intersects()

bool lm::builder::Hemisphere::intersects ( Shape * query)
virtual

Check if two shapes intersect.

Parameters
queryThe other shape to check
Returns
true/false

Implements lm::builder::Shape.

Here is the call graph for this function:

Member Data Documentation

◆ center

point lm::builder::Hemisphere::center
protected

◆ orientation

vector lm::builder::Hemisphere::orientation
protected

◆ radius

si_dist_t lm::builder::Hemisphere::radius
protected

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