BrushInstance Class Reference

#include <brush.h>

Inheritance diagram for BrushInstance:
Inheritance graph
[legend]
Collaboration diagram for BrushInstance:
Collaboration graph
[legend]

Data Structures

class  TypeCasts

Public Types

typedef LazyStatic< TypeCastsStaticTypeCasts
typedef MemberCaller
< BrushInstance,&BrushInstance::lightsChanged > 
LightsChangedCaller
typedef MemberCaller1
< BrushInstance, const
Selectable
&,&BrushInstance::selectedChanged > 
SelectedChangedCaller
typedef MemberCaller1
< BrushInstance, const
Selectable
&,&BrushInstance::selectedChangedComponent > 
SelectedChangedComponentCaller
typedef MemberCaller
< BrushInstance,&BrushInstance::applyTransform > 
ApplyTransformCaller

Public Member Functions

void lightsChanged ()
 STRING_CONSTANT (Name,"BrushInstance")
 BrushInstance (const scene::Path &path, scene::Instance *parent, Brush &brush)
 ~BrushInstance ()
BrushgetBrush ()
const BrushgetBrush () const
Boundedget (NullType< Bounded >)
Cullableget (NullType< Cullable >)
Transformable & get (NullType< Transformable >)
void selectedChanged (const Selectable &selectable)
void selectedChangedComponent (const Selectable &selectable)
const BrushInstanceVisitorforEachFaceInstance (const BrushInstanceVisitor &visitor)
void clear ()
void reserve (std::size_t size)
void push_back (Face &face)
void pop_back ()
void erase (std::size_t index)
void connectivityChanged ()
void edge_clear ()
void edge_push_back (SelectableEdge &edge)
void vertex_clear ()
void vertex_push_back (SelectableVertex &vertex)
void DEBUG_verify () const
bool isSelected () const
void setSelected (bool select)
void update_selected () const
void evaluateViewDependent (const VolumeTest &volume, const Matrix4 &localToWorld) const
void renderComponentsSelected (Renderer &renderer, const VolumeTest &volume, const Matrix4 &localToWorld) const
void renderComponents (Renderer &renderer, const VolumeTest &volume) const
void renderClipPlane (Renderer &renderer, const VolumeTest &volume) const
void renderCommon (Renderer &renderer, const VolumeTest &volume) const
void renderSolid (Renderer &renderer, const VolumeTest &volume, const Matrix4 &localToWorld) const
void renderWireframe (Renderer &renderer, const VolumeTest &volume, const Matrix4 &localToWorld) const
void renderSolid (Renderer &renderer, const VolumeTest &volume) const
void renderWireframe (Renderer &renderer, const VolumeTest &volume) const
void viewChanged () const
void testSelect (Selector &selector, SelectionTest &test)
bool isSelectedComponents () const
void setSelectedComponents (bool select, SelectionSystem::EComponentMode mode)
void testSelectComponents (Selector &selector, SelectionTest &test, SelectionSystem::EComponentMode mode)
void selectPlanes (Selector &selector, SelectionTest &test, const PlaneCallback &selectedPlaneCallback)
void selectReversedPlanes (Selector &selector, const SelectedPlanes &selectedPlanes)
void transformComponents (const Matrix4 &matrix)
const AABB & getSelectedComponentsBounds () const
void snapComponents (float snap)
void evaluateTransform ()
void applyTransform ()
void setClipPlane (const Plane3 &plane)

Static Public Member Functions

static void constructStatic ()
static void destroyStatic ()

Static Public Attributes

static Counter * m_counter

Private Types

typedef std::vector< EdgeInstanceEdgeInstances
typedef std::vector
< VertexInstance
VertexInstances

Private Member Functions

 BrushInstance (const BrushInstance &other)
BrushInstanceoperator= (const BrushInstance &other)

Private Attributes

Brushm_brush
FaceInstances m_faceInstances
EdgeInstances m_edgeInstances
VertexInstances m_vertexInstances
ObservedSelectable m_selectable
RenderableWireframe m_render_wireframe
RenderablePointVector m_render_selected
AABB m_aabb_component
Array< PointVertex > m_faceCentroidPointsCulled
RenderablePointArray m_render_faces_wireframe
bool m_viewChanged
BrushClipPlane m_clipPlane
const LightList * m_lightList
TransformModifier m_transform

Static Private Attributes

static Shader * m_state_selpoint

Detailed Description

Definition at line 2905 of file brush.h.


Member Typedef Documentation

typedef MemberCaller<BrushInstance, &BrushInstance::applyTransform> BrushInstance::ApplyTransformCaller

Definition at line 3380 of file brush.h.

typedef std::vector<EdgeInstance> BrushInstance::EdgeInstances [private]

Definition at line 2944 of file brush.h.

typedef MemberCaller<BrushInstance, &BrushInstance::lightsChanged> BrushInstance::LightsChangedCaller

Definition at line 2977 of file brush.h.

typedef MemberCaller1<BrushInstance, const Selectable&, &BrushInstance::selectedChanged> BrushInstance::SelectedChangedCaller

Definition at line 3037 of file brush.h.

typedef MemberCaller1<BrushInstance, const Selectable&, &BrushInstance::selectedChangedComponent> BrushInstance::SelectedChangedComponentCaller

Definition at line 3045 of file brush.h.

Definition at line 2971 of file brush.h.

typedef std::vector<VertexInstance> BrushInstance::VertexInstances [private]

Definition at line 2946 of file brush.h.


Constructor & Destructor Documentation

BrushInstance::BrushInstance ( const BrushInstance other  )  [private]
BrushInstance::BrushInstance ( const scene::Path path,
scene::Instance *  parent,
Brush brush 
) [inline]

Todo:
Make this work with instancing.

Definition at line 2981 of file brush.h.

References Brush::attach(), Brush::instanceAttach(), m_brush, m_counter, m_lightList, and Brush::m_lightsChanged.

BrushInstance::~BrushInstance (  )  [inline]

Member Function Documentation

void BrushInstance::applyTransform (  )  [inline]
void BrushInstance::clear (  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3064 of file brush.h.

References m_faceInstances.

void BrushInstance::connectivityChanged (  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3087 of file brush.h.

References i, and m_faceInstances.

static void BrushInstance::constructStatic (  )  [inline, static]

Definition at line 3055 of file brush.h.

References m_state_selpoint.

void BrushInstance::DEBUG_verify (  )  const [inline, virtual]

Implements BrushObserver.

Definition at line 3112 of file brush.h.

References Brush::DEBUG_size(), m_brush, and m_faceInstances.

static void BrushInstance::destroyStatic (  )  [inline, static]

Definition at line 3059 of file brush.h.

void BrushInstance::edge_clear (  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3094 of file brush.h.

References m_edgeInstances.

void BrushInstance::edge_push_back ( SelectableEdge edge  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3098 of file brush.h.

References m_edgeInstances, and m_faceInstances.

void BrushInstance::erase ( std::size_t  index  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3082 of file brush.h.

References m_faceInstances.

void BrushInstance::evaluateTransform (  )  [inline]

Definition at line 3364 of file brush.h.

References m_brush, m_transform, Brush::transform(), and transformComponents().

Referenced by applyTransform().

void BrushInstance::evaluateViewDependent ( const VolumeTest volume,
const Matrix4 &  localToWorld 
) const [inline]
const BrushInstanceVisitor& BrushInstance::forEachFaceInstance ( const BrushInstanceVisitor visitor  )  [inline]
Transformable& BrushInstance::get ( NullType< Transformable >   )  [inline]

Definition at line 3025 of file brush.h.

References m_transform.

Cullable& BrushInstance::get ( NullType< Cullable  )  [inline]

Definition at line 3021 of file brush.h.

References m_brush.

Bounded& BrushInstance::get ( NullType< Bounded  )  [inline]

Definition at line 3017 of file brush.h.

References m_brush.

Referenced by BrushVisibleSelectedVisitor< Functor >::visit().

const Brush& BrushInstance::getBrush (  )  const [inline]

Definition at line 3012 of file brush.h.

References m_brush.

Brush& BrushInstance::getBrush (  )  [inline]

Definition at line 3008 of file brush.h.

References m_brush.

Referenced by CExportFormatWavefront::visit().

const AABB& BrushInstance::getSelectedComponentsBounds (  )  const [inline]

Definition at line 3347 of file brush.h.

References i, m_aabb_component, and m_faceInstances.

bool BrushInstance::isSelected (  )  const [inline, virtual]

Implements Selectable.

Definition at line 3117 of file brush.h.

References m_selectable.

Referenced by renderClipPlane(), and renderCommon().

bool BrushInstance::isSelectedComponents (  )  const [inline]

Definition at line 3270 of file brush.h.

References i, and m_faceInstances.

void BrushInstance::lightsChanged (  )  [inline]

Definition at line 2973 of file brush.h.

References m_lightList.

BrushInstance& BrushInstance::operator= ( const BrushInstance other  )  [private]
void BrushInstance::pop_back (  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3077 of file brush.h.

References m_faceInstances.

void BrushInstance::push_back ( Face face  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3073 of file brush.h.

References m_faceInstances.

void BrushInstance::renderClipPlane ( Renderer renderer,
const VolumeTest volume 
) const [inline]
void BrushInstance::renderCommon ( Renderer renderer,
const VolumeTest volume 
) const [inline]
void BrushInstance::renderComponents ( Renderer renderer,
const VolumeTest volume 
) const [inline, virtual]
void BrushInstance::renderComponentsSelected ( Renderer renderer,
const VolumeTest volume,
const Matrix4 &  localToWorld 
) const [inline]
void BrushInstance::renderSolid ( Renderer renderer,
const VolumeTest volume 
) const [inline, virtual]

Submit renderable geometry when rendering takes place in Solid mode.

Implements Renderable.

Definition at line 3234 of file brush.h.

References Brush::evaluateBRep(), m_brush, renderClipPlane(), and renderSolid().

void BrushInstance::renderSolid ( Renderer renderer,
const VolumeTest volume,
const Matrix4 &  localToWorld 
) const [inline]

Definition at line 3207 of file brush.h.

References i, m_faceInstances, m_lightList, renderComponentsSelected(), and Renderer::setLights().

Referenced by renderSolid().

void BrushInstance::renderWireframe ( Renderer renderer,
const VolumeTest volume 
) const [inline, virtual]

Submit renderable geometry when rendering takes place in Wireframe mode

Implements Renderable.

Definition at line 3243 of file brush.h.

References Brush::evaluateBRep(), m_brush, renderClipPlane(), and renderWireframe().

void BrushInstance::renderWireframe ( Renderer renderer,
const VolumeTest volume,
const Matrix4 &  localToWorld 
) const [inline]
void BrushInstance::reserve ( std::size_t  size  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3068 of file brush.h.

References m_faceInstances.

void BrushInstance::selectedChanged ( const Selectable selectable  )  [inline]
void BrushInstance::selectedChangedComponent ( const Selectable selectable  )  [inline]
void BrushInstance::selectPlanes ( Selector selector,
SelectionTest test,
const PlaneCallback selectedPlaneCallback 
) [inline, virtual]
void BrushInstance::selectReversedPlanes ( Selector selector,
const SelectedPlanes selectedPlanes 
) [inline, virtual]

Implements PlaneSelectable.

Definition at line 3334 of file brush.h.

References i, and m_faceInstances.

void BrushInstance::setClipPlane ( const Plane3 plane  )  [inline]

Definition at line 3382 of file brush.h.

References m_brush, m_clipPlane, and BrushClipPlane::setPlane().

void BrushInstance::setSelected ( bool  select  )  [inline, virtual]

Implements Selectable.

Definition at line 3121 of file brush.h.

References m_selectable.

void BrushInstance::setSelectedComponents ( bool  select,
SelectionSystem::EComponentMode  mode 
) [inline]

Definition at line 3279 of file brush.h.

References i, and m_faceInstances.

void BrushInstance::snapComponents ( float  snap  )  [inline]

Definition at line 3358 of file brush.h.

References i, and m_faceInstances.

BrushInstance::STRING_CONSTANT ( Name  ,
"BrushInstance"   
)
void BrushInstance::testSelect ( Selector selector,
SelectionTest test 
) [inline, virtual]
void BrushInstance::testSelectComponents ( Selector selector,
SelectionTest test,
SelectionSystem::EComponentMode  mode 
) [inline]
void BrushInstance::transformComponents ( const Matrix4 &  matrix  )  [inline]

Definition at line 3341 of file brush.h.

References i, and m_faceInstances.

Referenced by evaluateTransform().

void BrushInstance::update_selected (  )  const [inline]

Definition at line 3126 of file brush.h.

References i, m_faceInstances, and m_render_selected.

Referenced by renderComponentsSelected().

void BrushInstance::vertex_clear (  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3103 of file brush.h.

References m_vertexInstances.

void BrushInstance::vertex_push_back ( SelectableVertex vertex  )  [inline, virtual]

Implements BrushObserver.

Definition at line 3107 of file brush.h.

References m_faceInstances, and m_vertexInstances.

void BrushInstance::viewChanged (  )  const [inline, virtual]

Reimplemented from Renderable.

Definition at line 3252 of file brush.h.

References m_viewChanged.


Field Documentation

AABB BrushInstance::m_aabb_component [mutable, private]

Definition at line 2953 of file brush.h.

Referenced by getSelectedComponentsBounds().

Definition at line 2958 of file brush.h.

Referenced by renderClipPlane(), and setClipPlane().

Counter* BrushInstance::m_counter [static]

Definition at line 2969 of file brush.h.

Referenced by BrushInstance(), and ~BrushInstance().

Definition at line 2945 of file brush.h.

Referenced by edge_clear(), edge_push_back(), and testSelectComponents().

Array<PointVertex> BrushInstance::m_faceCentroidPointsCulled [mutable, private]

Definition at line 2954 of file brush.h.

Referenced by evaluateViewDependent().

const LightList* BrushInstance::m_lightList [private]

Definition at line 2962 of file brush.h.

Referenced by BrushInstance(), lightsChanged(), and renderSolid().

RenderablePointArray BrushInstance::m_render_faces_wireframe [private]

Definition at line 2955 of file brush.h.

Referenced by renderComponents().

RenderablePointVector BrushInstance::m_render_selected [mutable, private]

Definition at line 2952 of file brush.h.

Referenced by renderComponentsSelected(), and update_selected().

Definition at line 2951 of file brush.h.

Referenced by evaluateViewDependent(), and renderWireframe().

ObservedSelectable BrushInstance::m_selectable [private]

Definition at line 2949 of file brush.h.

Referenced by isSelected(), and setSelected().

Shader* BrushInstance::m_state_selpoint [static, private]

Definition at line 2960 of file brush.h.

Referenced by constructStatic(), and renderComponentsSelected().

TransformModifier BrushInstance::m_transform [private]

Definition at line 2964 of file brush.h.

Referenced by evaluateTransform(), and get().

Definition at line 2947 of file brush.h.

Referenced by testSelectComponents(), vertex_clear(), and vertex_push_back().

bool BrushInstance::m_viewChanged [mutable, private]

Definition at line 2956 of file brush.h.

Referenced by evaluateViewDependent(), and viewChanged().


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

Generated by  doxygen 1.6.2