ULRE/example/Gizmo/GizmoResource.h

43 lines
1.9 KiB
C
Raw Normal View History

2024-07-14 23:49:05 +08:00
#pragma once
#include"Gizmo.h"
2024-07-28 23:34:04 +08:00
#include<hgl/color/Color.h>
2024-07-14 23:49:05 +08:00
VK_NAMESPACE_BEGIN
2024-07-28 23:34:04 +08:00
class SceneNode;
class PrimitiveCreater;
class StaticMesh;
2024-07-14 23:49:05 +08:00
constexpr const COLOR gizmo_color[size_t(GizmoColor::RANGE_SIZE)]=
{
COLOR::MozillaCharcoal,
COLOR::BlanchedAlmond,
COLOR::BlenderAxisRed,
COLOR::BlenderAxisGreen,
COLOR::BlenderAxisBlue,
COLOR::BlenderYellow,
};
2024-09-02 23:07:20 +08:00
constexpr const float GIZMO_ARROW_LENGTH =10.0f; ///<箭头整体长度
constexpr const float GIZMO_CENTER_SPHERE_RADIUS=1.0f; ///<中心球半径
2024-09-02 23:07:20 +08:00
constexpr const float GIZMO_CONE_LENGTH =1.0f; ///<圆锥高度
constexpr const float GIZMO_CONE_RADIUS =1.0f; ///<圆锥底部半径
constexpr const float GIZMO_CONE_OFFSET =GIZMO_ARROW_LENGTH-(GIZMO_CONE_LENGTH/2.0f); ///<圆锥偏移量
2024-09-02 23:07:20 +08:00
constexpr const float GIZMO_CYLINDER_RADIUS =0.25f; ///<圆柱半径
constexpr const float GIZMO_CYLINDER_LENGTH =GIZMO_ARROW_LENGTH-GIZMO_CENTER_SPHERE_RADIUS-GIZMO_CONE_LENGTH; ///<圆柱长度
2024-09-02 23:07:20 +08:00
constexpr const float GIZMO_CYLINDER_HALF_LENGTH=GIZMO_CYLINDER_LENGTH/2.0f; ///<圆柱一半长度
constexpr const float GIZMO_CYLINDER_OFFSET =GIZMO_CYLINDER_HALF_LENGTH+GIZMO_CENTER_SPHERE_RADIUS; ///<圆柱偏移量
2024-09-02 23:07:20 +08:00
constexpr const float GIZMO_TWO_AXIS_OFFSET =5.0F; ///<二轴调节点偏移量(方片或圆)
2024-07-28 23:34:04 +08:00
Renderable *GetGizmoRenderable(const GizmoShape &gs,const GizmoColor &);
2024-07-14 23:49:05 +08:00
2024-07-28 23:34:04 +08:00
StaticMesh *CreateGizmoStaticMesh(SceneNode *);
2024-07-14 23:49:05 +08:00
VK_NAMESPACE_END