Cogs.Core
TrajectoryComponent.h
1#pragma once
2
3#include "../../Base.h"
4
5#include "Foundation/ComponentModel/Component.h"
6
7#include <glm/vec3.hpp>
8
9#include <limits>
10#include <vector>
11
12namespace Cogs
13{
14 namespace Core
15 {
23 {
25 std::vector<float> indexes;
26
28 std::vector<glm::vec3> positions;
29
31 glm::vec3 startRadialAnchor = glm::vec3(std::numeric_limits<float>::quiet_NaN());
32 glm::vec3 stopRadialAnchor = glm::vec3(std::numeric_limits<float>::quiet_NaN());
33
35 float anchorStickyness = 0.15f;
36
37 static void registerType();
38
40 COGSCORE_DLL_API void determineindices(int& ix0, int& ix1, int& slices, const float startDepth, const float stopDepth);
41
42 };
43 }
44}
45
46template<> inline Cogs::StringView getName<Cogs::Core::TrajectoryComponent>() { return "TrajectoryComponent"; }
Base class for Component instances.
Definition: Component.h:143
Provides a weakly referenced view over the contents of a string.
Definition: StringView.h:24
Contains all Cogs related functionality.
Definition: FieldSetter.h:23
Data component defining a 3D trajectory, for example a Well trajectory.
std::vector< float > indexes
Positive distances along trajectory. For wells Measured Depth (MD). Set same length of indexes and po...
COGSCORE_DLL_API void determineindices(int &ix0, int &ix1, int &slices, const float startDepth, const float stopDepth)
std::vector< glm::vec3 > positions
Trajectory positions. For wells the Z component is a measurement of True Vertical Depth (TVD)....