BALL  1.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Public Member Functions | Private Types | Private Member Functions | Private Attributes
BALL::VIEW::AtomDistanceColorProcessor Class Reference

#include <BALL/VIEW/MODELS/standardColorProcessor.h>

Inheritance diagram for BALL::VIEW::AtomDistanceColorProcessor:
BALL::VIEW::ColorProcessor BALL::UnaryProcessor< GeometricObject * > BALL::UnaryFunctor< GeometricObject *, Processor::Result >

List of all members.

Public Member Functions

 AtomDistanceColorProcessor ()
 AtomDistanceColorProcessor (const AtomDistanceColorProcessor &color_Processor)
 Construct with copying the colors and the distance.
void setDistance (float distance)
float getDistance () const
void setNullDistanceColor (const ColorRGBA &color)
const ColorRGBAgetNullDistanceColor () const
void setMaxDistanceColor (const ColorRGBA &color)
const ColorRGBAgetMaxDistanceColor () const
void calculateDistances ()
virtual void addAtom (const Atom &atom)
virtual bool finish ()
virtual void getColor (const Composite &composite, ColorRGBA &color_to_be_set)
bool showSelected ()
void setShowSelected (bool state)
virtual Processor::Result operator() (GeometricObject *&object)

Private Types

typedef HashMap< const Atom
*, float
AtomDistanceHashMap

Private Member Functions

void colorGeometricObject_ (GeometricObject &object)
virtual void colorMeshFromGrid_ (Mesh &mesh)

Private Attributes

AtomDistanceHashMap atom_2_distance_
GeometricObjectList list_
float distance_
bool show_selection_
ColorRGBA null_distance_color_
ColorRGBA full_distance_color_

Detailed Description

AtomDistanceColorProcessor class. AtomDistanceColorProcessor can be choosen in the class DisplayProperties to color the atoms in multiple AtomContainer according to their distance. There are two colors for the distance of Atom objects. A color for the null distance and a color for the max distance. If a distance of an Atom object to another atom object (stored in different atom containers) lies between the null and the max distance, the resulting color will be interpolated according to the distance.

Definition at line 297 of file standardColorProcessor.h.


Member Typedef Documentation

Definition at line 402 of file standardColorProcessor.h.


Constructor & Destructor Documentation

Default Constructor. Initialize to:

  • distance set to 10
  • null distance color set to red ("FF0000FF").
  • max distance color set to blue ("00FF00FF").
    See also:
    ColorRGBA

Construct with copying the colors and the distance.


Member Function Documentation

virtual void BALL::VIEW::AtomDistanceColorProcessor::addAtom ( const Atom atom) [virtual]

Calculate the distance color of the given Atom by interpolating the null and max distance color according to the previously calculated distance color (see calculateDistances()) of the given atom. Access to the calculated color with the method ColorProcessor::getColor.

Parameters:
atomthe Atom whose distance color should be computed

Calculate the distances. If this method is called the distances of all previously inserted Atom objects to each other are calculated. Only Atom objects are used for the distance calculation that have not the same root. All other atom objects will keep the max distance as set with the method setDistance(). Use this method after all atom containers have applied this processor.

virtual void BALL::VIEW::AtomDistanceColorProcessor::colorMeshFromGrid_ ( Mesh mesh) [private, virtual]

Reimplemented from BALL::VIEW::ColorProcessor.

finish method

Reimplemented from BALL::UnaryProcessor< GeometricObject * >.

virtual void BALL::VIEW::AtomDistanceColorProcessor::getColor ( const Composite composite,
ColorRGBA color_to_be_set 
) [virtual]

Calculate a color for a Composite. The given ColorRGBA instance is set to the calculated color. This method is called by the operator() method. Here it just sets the default color. You have to overload this operator in derived classes.

Reimplemented from BALL::VIEW::ColorProcessor.

Inspection of the max distance.

Non-mutable inspection of the max distance color.

See also:
setMaxDistanceColor
ColorRGBA

Non-mutable inspection of the null distance color.

virtual Processor::Result BALL::VIEW::AtomDistanceColorProcessor::operator() ( GeometricObject *&  object) [virtual]

Collect all atoms from the geometric objects

Reimplemented from BALL::VIEW::ColorProcessor.

Change the max distance. Every new Atom object is inserted into the AtomDistanceColorProcessor with this max distance. If the method calculateDistances() is called the distances of the inserted atoms are calculated.

Parameters:
distancethe new max distance

Definition at line 322 of file standardColorProcessor.h.

Change the max distance color. If the calculated distance between two Atom objects becomes the max distance or greater this color will be used to color these two atoms. Otherwise the color will be interpolated between this color and the null distance color according to the calculated distance.

Parameters:
colorthe new max distance color
See also:
getMaxDistanceColor
setNullDistanceColor
ColorRGBA

Change the null distance color. If the calculated distance between two Atom objects becomes 0, this color will be used to color these two atoms. Otherwise the color will be interpolated between this color and the max distance color according to the calculated distance.

Parameters:
colorthe new null distance color
See also:
getNullDistanceColor
setMaxDistanceColor
ColorRGBA

Definition at line 389 of file standardColorProcessor.h.

Definition at line 386 of file standardColorProcessor.h.


Member Data Documentation

Definition at line 404 of file standardColorProcessor.h.

Definition at line 407 of file standardColorProcessor.h.

Definition at line 411 of file standardColorProcessor.h.

Definition at line 405 of file standardColorProcessor.h.

Definition at line 410 of file standardColorProcessor.h.

Definition at line 408 of file standardColorProcessor.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines