Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $Workfile: $
// $Date: $
//
//-----------------------------------------------------------------------------
// $Log: $
//
// $NoKeywords: $
//=============================================================================//
#ifndef GIZMO_H
#define GIZMO_H
#pragma once
#include "MapAtom.h"
#define GIZMO_AXIS_X 0x10
#define GIZMO_AXIS_Y 0x20
#define GIZMO_AXIS_Z 0x40
#define GIZMO_HANDLE_SCALE 0x01
#define GIZMO_HANDLE_ROTATE 0x02
#define GIZMO_HANDLE_TRANSLATE 0x04
#define GIZMO_HANDLE_UNIFORM_SCALE 0x08
class CGizmo : public CMapAtom { public:
CGizmo(void); CGizmo(float x, float y, float z);
void Initialize(void);
void Render(CRender3D *pRender);
inline void SetAxisLength(float fLength); inline void SetPosition(float x, float y, float z);
void DrawGizmoAxis(CRender3D *pRender, Vector& Origin, Vector& EndPoint, int red, int green, int blue, unsigned int uAxisHandle);
protected:
Vector m_Position; float m_fAxisLength; };
//-----------------------------------------------------------------------------
// Purpose: Sets the length of the gizmo's axes.
// Input : fLength - Axis length in world units.
//-----------------------------------------------------------------------------
void CGizmo::SetAxisLength(float fLength) { m_fAxisLength = fLength; }
//-----------------------------------------------------------------------------
// Purpose: Sets the gizmo's position.
// Input : x -
// y -
// z -
//-----------------------------------------------------------------------------
void CGizmo::SetPosition(float x, float y, float z) { m_Position[0] = x; m_Position[1] = y; m_Position[2] = z; }
#endif // GIZMO_H
|