Blender V4.5
Freestyle::AppView Class Reference

#include <AppView.h>

Public Member Functions

 AppView (const char *iName=0)
 
virtual ~AppView ()
 
uint width ()
 
uint height ()
 
BBox< Vec2iborder ()
 
float thickness ()
 
void setWidth (uint width)
 
void setHeight (uint height)
 
void setBorder (int xmin, int ymin, int xmax, int ymax)
 
void setThickness (float thickness)
 
void setModel (NodeGroup *iModel)
 
void AddModel (NodeGroup *iModel)
 
void AddSilhouette (NodeGroup *iSilhouette)
 
void Add2DSilhouette (NodeGroup *)
 
void Add2DVisibleSilhouette (NodeGroup *)
 
void setDebug (NodeGroup *iDebug)
 
void AddDebug (NodeGroup *iDebug)
 
void DetachModel (Node *iModel)
 
void DetachModel ()
 
void DetachSilhouette ()
 
void DetachVisibleSilhouette ()
 
void DetachDebug ()
 
real distanceToSceneCenter ()
 
real GetFocalLength ()
 
real GetAspect () const
 
void setHorizontalFov (float hfov)
 
real GetFovyRadian () const
 
real GetFovyDegrees () const
 
BBox< Vec3rscene3DBBox () const
 
real znear ()
 
real zfar ()
 
void DrawScene (SceneVisitor *iRenderer)
 
void Draw2DScene (SceneVisitor *iRenderer)
 

Protected Member Functions

int rabs (int x)
 
real rabs (real x)
 

Protected Attributes

uint _width
 
uint _height
 
BBox< Vec2i_border
 
float _thickness
 
float _Fovy
 
NodeGroup _RootNode
 
NodeDrawingStyle_ModelRootNode
 
NodeDrawingStyle_SilhouetteRootNode
 
NodeDrawingStyle_DebugRootNode
 
NodeGroup _Light
 
real _minBBox
 
real _maxBBox
 
real _maxAbs
 
real _minAbs
 
bool _Draw2DScene
 
bool _Draw3DScene
 
NodeGroup _p2DNode
 
NodeDrawingStyle_p2DSelectionNode
 

Detailed Description

Definition at line 26 of file AppView.h.

Constructor & Destructor Documentation

◆ AppView()

◆ ~AppView()

Freestyle::AppView::~AppView ( )
virtual

Definition at line 80 of file AppView.cpp.

References _Light, _p2DNode, _RootNode, and Freestyle::NodeGroup::destroy().

Member Function Documentation

◆ Add2DSilhouette()

void Freestyle::AppView::Add2DSilhouette ( NodeGroup * )
inline

Definition at line 108 of file AppView.h.

Referenced by Freestyle::Controller::ComputeViewMap().

◆ Add2DVisibleSilhouette()

void Freestyle::AppView::Add2DVisibleSilhouette ( NodeGroup * )
inline

Definition at line 113 of file AppView.h.

Referenced by Freestyle::Controller::ComputeViewMap().

◆ AddDebug()

void Freestyle::AppView::AddDebug ( NodeGroup * iDebug)
inline

Definition at line 128 of file AppView.h.

References _DebugRootNode, and Freestyle::NodeGroup::AddChild().

Referenced by Freestyle::Controller::ComputeViewMap(), and setDebug().

◆ AddModel()

void Freestyle::AppView::AddModel ( NodeGroup * iModel)
inline

Adds a model for displaying in the viewer

Definition at line 87 of file AppView.h.

References _maxAbs, _maxBBox, _minAbs, _minBBox, _ModelRootNode, Freestyle::NodeGroup::AddChild(), Freestyle::Node::bbox(), rabs(), and Freestyle::NodeGroup::UpdateBBox().

Referenced by setModel().

◆ AddSilhouette()

void Freestyle::AppView::AddSilhouette ( NodeGroup * iSilhouette)
inline

◆ border()

BBox< Vec2i > Freestyle::AppView::border ( )
inline

Definition at line 41 of file AppView.h.

References _border.

Referenced by Freestyle::AppCanvas::border().

◆ DetachDebug()

void Freestyle::AppView::DetachDebug ( )
inline

◆ DetachModel() [1/2]

void Freestyle::AppView::DetachModel ( )
inline

◆ DetachModel() [2/2]

void Freestyle::AppView::DetachModel ( Node * iModel)
inline

◆ DetachSilhouette()

void Freestyle::AppView::DetachSilhouette ( )
inline

◆ DetachVisibleSilhouette()

void Freestyle::AppView::DetachVisibleSilhouette ( )
inline

Definition at line 172 of file AppView.h.

References _p2DSelectionNode, and Freestyle::NodeGroup::destroy().

◆ distanceToSceneCenter()

real Freestyle::AppView::distanceToSceneCenter ( )

◆ Draw2DScene()

void Freestyle::AppView::Draw2DScene ( SceneVisitor * iRenderer)

2D Scene Drawing

◆ DrawScene()

void Freestyle::AppView::DrawScene ( SceneVisitor * iRenderer)

Core scene drawing

◆ GetAspect()

real Freestyle::AppView::GetAspect ( ) const
inline

Definition at line 186 of file AppView.h.

References _height, and _width.

Referenced by Freestyle::Controller::ComputeViewMap(), and setHorizontalFov().

◆ GetFocalLength()

real Freestyle::AppView::GetFocalLength ( )

Definition at line 156 of file AppView.cpp.

References _maxAbs, and distanceToSceneCenter().

Referenced by Freestyle::Controller::ComputeViewMap().

◆ GetFovyDegrees()

real Freestyle::AppView::GetFovyDegrees ( ) const
inline

Definition at line 201 of file AppView.h.

References _Fovy, and M_PI.

◆ GetFovyRadian()

real Freestyle::AppView::GetFovyRadian ( ) const
inline

Definition at line 196 of file AppView.h.

References _Fovy.

Referenced by Freestyle::Controller::ComputeViewMap().

◆ height()

uint Freestyle::AppView::height ( )
inline

Definition at line 37 of file AppView.h.

References _height.

Referenced by Freestyle::Controller::ComputeSteerableViewMap(), and setHeight().

◆ rabs() [1/2]

int Freestyle::AppView::rabs ( int x)
inlineprotected

fabs or abs

Definition at line 223 of file AppView.h.

References abs, and Freestyle::x.

Referenced by AddModel(), AppView(), and DetachModel().

◆ rabs() [2/2]

real Freestyle::AppView::rabs ( real x)
inlineprotected

Definition at line 227 of file AppView.h.

References fabs(), and Freestyle::x.

◆ scene3DBBox()

BBox< Vec3r > Freestyle::AppView::scene3DBBox ( ) const
inline

Definition at line 206 of file AppView.h.

References _ModelRootNode, and Freestyle::Node::bbox().

Referenced by Freestyle::AppCanvas::scene3DBBox().

◆ setBorder()

void Freestyle::AppView::setBorder ( int xmin,
int ymin,
int xmax,
int ymax )
inline

Definition at line 57 of file AppView.h.

References _border.

Referenced by init_view().

◆ setDebug()

void Freestyle::AppView::setDebug ( NodeGroup * iDebug)
inline

◆ setHeight()

void Freestyle::AppView::setHeight ( uint height)
inline

Definition at line 53 of file AppView.h.

References _height, and height().

Referenced by init_view().

◆ setHorizontalFov()

void Freestyle::AppView::setHorizontalFov ( float hfov)
inline

Definition at line 191 of file AppView.h.

References _Fovy, atan, GetAspect(), and tan.

◆ setModel()

void Freestyle::AppView::setModel ( NodeGroup * iModel)
inline

Sets the model to draw in the viewer iModel The Root Node of the model

Definition at line 76 of file AppView.h.

References _ModelRootNode, AddModel(), Freestyle::Node::clearBBox(), Freestyle::NodeGroup::DetachChildren(), and Freestyle::NodeGroup::numberOfChildren().

Referenced by Freestyle::Controller::LoadMesh().

◆ setThickness()

void Freestyle::AppView::setThickness ( float thickness)
inline

Definition at line 61 of file AppView.h.

References _thickness, and thickness().

Referenced by init_view().

◆ setWidth()

void Freestyle::AppView::setWidth ( uint width)
inline

Definition at line 49 of file AppView.h.

References _width, and width().

Referenced by init_view().

◆ thickness()

float Freestyle::AppView::thickness ( )
inline

Definition at line 45 of file AppView.h.

References _thickness.

Referenced by setThickness(), and Freestyle::AppCanvas::thickness().

◆ width()

uint Freestyle::AppView::width ( )
inline

Definition at line 33 of file AppView.h.

References _width.

Referenced by Freestyle::Controller::ComputeSteerableViewMap(), and setWidth().

◆ zfar()

◆ znear()

Member Data Documentation

◆ _border

BBox<Vec2i> Freestyle::AppView::_border
protected

Definition at line 68 of file AppView.h.

Referenced by border(), and setBorder().

◆ _DebugRootNode

NodeDrawingStyle* Freestyle::AppView::_DebugRootNode
protected

Definition at line 239 of file AppView.h.

Referenced by AddDebug(), AppView(), DetachDebug(), and setDebug().

◆ _Draw2DScene

bool Freestyle::AppView::_Draw2DScene
protected

Definition at line 249 of file AppView.h.

◆ _Draw3DScene

bool Freestyle::AppView::_Draw3DScene
protected

Definition at line 250 of file AppView.h.

◆ _Fovy

float Freestyle::AppView::_Fovy
protected

Definition at line 233 of file AppView.h.

Referenced by AppView(), GetFovyDegrees(), GetFovyRadian(), and setHorizontalFov().

◆ _height

uint Freestyle::AppView::_height
protected

Definition at line 67 of file AppView.h.

Referenced by GetAspect(), height(), and setHeight().

◆ _Light

NodeGroup Freestyle::AppView::_Light
protected

Definition at line 241 of file AppView.h.

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

◆ _maxAbs

real Freestyle::AppView::_maxAbs
protected

Definition at line 245 of file AppView.h.

Referenced by AddModel(), AppView(), DetachModel(), and GetFocalLength().

◆ _maxBBox

real Freestyle::AppView::_maxBBox
protected

Definition at line 244 of file AppView.h.

Referenced by AddModel(), AppView(), and DetachModel().

◆ _minAbs

real Freestyle::AppView::_minAbs
protected

Definition at line 246 of file AppView.h.

Referenced by AddModel(), AppView(), and DetachModel().

◆ _minBBox

real Freestyle::AppView::_minBBox
protected

Definition at line 243 of file AppView.h.

Referenced by AddModel(), AppView(), and DetachModel().

◆ _ModelRootNode

NodeDrawingStyle* Freestyle::AppView::_ModelRootNode
protected

◆ _p2DNode

NodeGroup Freestyle::AppView::_p2DNode
protected

Definition at line 251 of file AppView.h.

Referenced by AppView(), DetachModel(), and ~AppView().

◆ _p2DSelectionNode

NodeDrawingStyle* Freestyle::AppView::_p2DSelectionNode
protected

Definition at line 252 of file AppView.h.

Referenced by AppView(), DetachSilhouette(), and DetachVisibleSilhouette().

◆ _RootNode

NodeGroup Freestyle::AppView::_RootNode
protected

Definition at line 236 of file AppView.h.

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

◆ _SilhouetteRootNode

NodeDrawingStyle* Freestyle::AppView::_SilhouetteRootNode
protected

Definition at line 238 of file AppView.h.

Referenced by AddSilhouette(), AppView(), and DetachSilhouette().

◆ _thickness

float Freestyle::AppView::_thickness
protected

Definition at line 69 of file AppView.h.

Referenced by setThickness(), and thickness().

◆ _width

uint Freestyle::AppView::_width
protected

Definition at line 67 of file AppView.h.

Referenced by GetAspect(), setWidth(), and width().


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