Cogs.Core
DepthAxisComponent.h
1#pragma once
2
3#include "Foundation/ComponentModel/Component.h"
4#include "EntityPtr.h"
5
6#include <glm/vec3.hpp>
7#include <glm/vec4.hpp>
8
9namespace Cogs
10{
11 namespace Core
12 {
14 {
15 public:
16 EntityPtr trajectory;
17
18 glm::vec3 axis = glm::vec3(1, 0, 0);
19
20 float majorInterval = 10.f;
21 float minorInterval = 1.f;
22
23 float majorDistance = 15.f;
24 float minorDistance = 10.f;
25
26 float radius = 1.f;
27
28 float unitScale = 1.f;
29 std::string unitOfMeasurement = "m";
30
31 float startMeasuredDepth = 0.f;
32 float endMeasuredDepth = 100.f;
33
34 bool endpointsInclusive = true;
35 bool enableMinorText = false;
36
37 bool useTrajectoryOrientedAxis = false;
38
39 bool enableMaxSize = false;
40 float maxSize = 100.0f;
41
42 float minorScaleThreshold = 0.3f;
43
44 glm::vec4 diffuseColor = glm::vec4(1, 1, 1, 1);
45
46 static void registerType();
47 };
48 }
49}
50
51template<> inline Cogs::StringView getName<Cogs::Core::DepthAxisComponent>() { return "DepthAxisComponent"; }
Base class for Component instances.
Definition: Component.h:143
Provides a weakly referenced view over the contents of a string.
Definition: StringView.h:24
std::shared_ptr< ComponentModel::Entity > EntityPtr
Smart pointer for Entity access.
Definition: EntityPtr.h:12
Contains all Cogs related functionality.
Definition: FieldSetter.h:23