34 #ifndef CN3D_OPENGL_RENDERER__HPP
35 #define CN3D_OPENGL_RENDERER__HPP
57 #define GL_ENUM_TYPE int
58 #define GL_INT_TYPE int
59 #define GL_DOUBLE_TYPE double
84 void Init(
void)
const;
88 void NewView(
double eyeTranslateToAngleDegrees = 0.0)
const;
158 bool SetGLFont(
int firstChar,
int nChars,
int fontBase);
191 const Vector& p2,
const Vector *p3,
double radius,
bool cap1,
bool cap2,
double tension);
225 typedef std::map < unsigned int, SphereList >
SphereMap;
228 const Vector&
site,
double radius,
double alpha);
243 {
return (
a.distanceFromCamera <
b.distanceFromCamera); }
User-defined methods of the data storage class.
User-defined methods of the data storage class.
double distanceFromCamera
friend bool operator<(const SpherePtr &a, const SpherePtr &b)
void MyGluSphere(double radius, int slices, int stacks)
std::list< SpherePtr > SpherePtrList
bool GetSelected(int x, int y, unsigned int *name)
std::vector< bool > displayListEmpty
void ShowPreviousFrame(void)
void DrawHalfBond(const Vector &site1, const Vector &midpoint, StyleManager::eDisplayStyle style, double radius, bool cap1, bool cap2)
void CenterView(const Vector &viewCenter, double radius)
void DrawAtom(const Vector &site, const AtomStyle &atomStyle)
SpherePtrList transparentSpheresToRender
void RecreateQuadric(void) const
void AddTransparentSphere(const Vector &color, unsigned int name, const Vector &site, double radius, double alpha)
std::map< unsigned int, SphereList > SphereMap
void AddTransparentSpheresForList(unsigned int list)
void SetColor(EColorAction action, int=0, double red=0.0, double green=0.0, double blue=0.0, double alpha=1.0)
void StartDisplayList(unsigned int list)
const wxFont & GetGLFont(void) const
void MyGluDisk(double innerRadius, double outerRadius, int slices, int loops)
SphereMap transparentSphereMap
void AttachStructureSet(StructureSet *targetStructureSet)
void EndDisplayList(void)
void MyGluCylinder(double baseRadius, double topRadius, double height, int slices, int stacks)
void ShowFirstFrame(void)
void DrawBond(const Vector &site1, const Vector &site2, const BondStyle &style, const Vector *site0, const Vector *site3)
double GetRotateSpeed(void) const
void DrawHalfWorm(const Vector *p0, const Vector &p1, const Vector &p2, const Vector *p3, double radius, bool cap1, bool cap2, double tension)
ncbi::CRef< ncbi::objects::CCn3d_view_settings > initialViewFromASN
void ChangeView(eViewAdjust control, int dX=0, int dY=0, int X2=0, int Y2=0)
bool LoadFromASNViewSettings(const ncbi::objects::CCn3d_user_annotations &annotations)
void PushMatrix(const Matrix *xform)
bool SetGLFont(int firstChar, int nChars, int fontBase)
void RestoreSavedView(void)
void ShowFrameNumber(int frame)
void EnableStereo(bool enableStereo)
void DrawHelix(const Vector &Nterm, const Vector &Cterm, const HelixStyle &helixStyle)
void ClearTransparentSpheresForList(unsigned int list)
bool IsFrameEmpty(unsigned int frame) const
void RenderTransparentSpheres(void)
void NewView(double eyeTranslateToAngleDegrees=0.0) const
bool HasASNViewSettings(void) const
static const unsigned int NO_NAME
void ComputeBestView(void)
bool SaveToASNViewSettings(ncbi::objects::CCn3d_user_annotations *annotations)
StructureSet * structureSet
static const unsigned int FIRST_LIST
unsigned int currentFrame
std::list< SphereInfo > SphereList
void DrawStrand(const Vector &Nterm, const Vector &Cterm, const Vector &unitNormal, const StrandStyle &strandStyle)
void DrawLabel(const std::string &text, const Vector ¢er, const Vector &color)
static const unsigned int NO_LIST
unsigned int currentDisplayList
static const unsigned int FONT_BASE
OpenGLRenderer(Cn3DGLCanvas *parentGLCanvas)
Include a standard set of the NCBI C++ Toolkit most basic headers.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_SCOPE(ns)
Define a new scope.
static void text(MDB_val *v)
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.