Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

SilhouetteAdhesion Class Reference

#include <SilhouetteAdhesion.h>

Inheritance diagram for SilhouetteAdhesion:

Inheritance graph
[legend]
Collaboration diagram for SilhouetteAdhesion:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class pulls the particles towards the silhouette and constrains them to this area.

Definition at line 23 of file SilhouetteAdhesion.h.

Public Member Functions

 MAKE_PARTICLESTUFF_NAME ()
 SilhouetteAdhesion (Particles *ps=NULL, std::string name=std::string("SilhouetteAdhesion"))
 Creates a surface adhesion attribute for Particles p.

int qlen ()
 parameters

void getq (double *q)
 Get the parameters.

void setq (double *q)
 Set particle stuff parameters.

void qname (char **qn)
 Get the names of the parameters.

void attachAttributes ()
 Attach all the attributes needed by the behavior.

void applyForce ()
 Apply the silhouette adhesion constraint.

void setCamera (gmVector3 &pos)
 set camera give the gui a way to give new camera location


Public Attributes

gmVector3 camera
bool cameraMoved
double feedback
ImplicitInterrogatorimp_int
 Interrogation surface.

ParticleOrientationp_orient
 Particle orientations.


Constructor & Destructor Documentation

SilhouetteAdhesion::SilhouetteAdhesion Particles ps = NULL,
std::string  name = std::string("SilhouetteAdhesion")
 

Creates a surface adhesion attribute for Particles p.

Definition at line 11 of file SilhouetteAdhesion.cpp.

References camera, and feedback.


Member Function Documentation

void SilhouetteAdhesion::applyForce  )  [virtual]
 

Apply the silhouette adhesion constraint.

Reimplemented from ParticleBehavior.

Definition at line 55 of file SilhouetteAdhesion.cpp.

References camera, dot(), feedback, ImplicitInterrogator::getImplicit(), ParticlePosition::getPosition(), Implicit::grad(), Implicit::hess(), imp_int, ParticleBehavior::position, ParticleStuff::ps, Particles::size(), ParticleVelocity::v, and ParticleBehavior::velocity.

void SilhouetteAdhesion::attachAttributes  )  [virtual]
 

Attach all the attributes needed by the behavior.

Defaults to a nop.

Reimplemented from ParticleBehavior.

Definition at line 18 of file SilhouetteAdhesion.cpp.

References ParticleStuff::attachAttribute(), ParticleBehavior::attachAttributes(), imp_int, and p_orient.

void SilhouetteAdhesion::getq double *  q  )  [virtual]
 

Get the parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 83 of file SilhouetteAdhesion.cpp.

References feedback.

SilhouetteAdhesion::MAKE_PARTICLESTUFF_NAME  ) 
 

int SilhouetteAdhesion::qlen  )  [virtual]
 

parameters

Reimplemented from ParticleStuff.

Definition at line 79 of file SilhouetteAdhesion.cpp.

void SilhouetteAdhesion::qname char **  qn  )  [virtual]
 

Get the names of the parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 91 of file SilhouetteAdhesion.cpp.

void SilhouetteAdhesion::setCamera gmVector3 &  pos  ) 
 

set camera give the gui a way to give new camera location

Definition at line 70 of file SilhouetteAdhesion.cpp.

References camera, and cameraMoved.

void SilhouetteAdhesion::setq double *  q  )  [virtual]
 

Set particle stuff parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 87 of file SilhouetteAdhesion.cpp.

References feedback.


Member Data Documentation

gmVector3 SilhouetteAdhesion::camera
 

Definition at line 30 of file SilhouetteAdhesion.h.

Referenced by applyForce(), ParticleShaderStroke::draw(), SilhouetteFate::fiftyPercent(), setCamera(), and SilhouetteAdhesion().

bool SilhouetteAdhesion::cameraMoved
 

Definition at line 31 of file SilhouetteAdhesion.h.

Referenced by SilhouetteFate::cleanup(), and setCamera().

double SilhouetteAdhesion::feedback
 

Definition at line 32 of file SilhouetteAdhesion.h.

Referenced by applyForce(), getq(), setq(), and SilhouetteAdhesion().

ImplicitInterrogator* SilhouetteAdhesion::imp_int
 

Interrogation surface.

Definition at line 34 of file SilhouetteAdhesion.h.

Referenced by applyForce(), and attachAttributes().

ParticleOrientation* SilhouetteAdhesion::p_orient
 

Particle orientations.

Definition at line 36 of file SilhouetteAdhesion.h.

Referenced by attachAttributes().


The documentation for this class was generated from the following files:
Generated on Mon Jun 28 15:03:08 2004 for Advanced Surface Library by doxygen 1.3.4