Cogs.Core
MarkerPointSetPicker.h
1#pragma once
2
3#include "Scene/RayPick.h"
4
5namespace Cogs::Core
6{
7 class Context;
8 class MarkerPointSetSystem;
9
11 {
12 MarkerPointSetPicker(MarkerPointSetSystem* system) : system(system) {}
13
16 bool pickCamera(Context* context,
17 const CameraComponent& camera,
18 const glm::vec2& queryClip,
19 float /*rayLength*/,
20 float rayRadius,
21 PickingFlags pickingFlags,
22 PicksReturned returnFlag,
23 const RayPicking::RayPickFilter& filter,
24 std::vector<RayPicking::RayPickHit>& hits) override;
25
26 bool pickRay(Context* context,
27 const glm::vec3& startPos,
28 const glm::quat& rot,
29 float rayLength,
30 float radius,
31 PickingFlags pickingFlags,
32 PicksReturned returnFlag,
33 const RayPicking::RayPickFilter& filter,
34 std::vector<RayPicking::RayPickHit>& hits) override;
35
36 MarkerPointSetSystem* system = nullptr;
37 };
38}
A Context instance contains all the services, systems and runtime components needed to use Cogs.
Definition: Context.h:83
Interface for modules implementing custom picking.
Definition: RayPick.h:140
Contains the Engine, Renderer, resource managers and other systems needed to run Cogs....
PicksReturned
  * Options for returning picking hits.
Definition: PickingFlags.h:40
PickingFlags
Options for COGS picking.
Definition: PickingFlags.h:12
bool pickCamera(Context *context, const CameraComponent &camera, const glm::vec2 &queryClip, float, float rayRadius, PickingFlags pickingFlags, PicksReturned returnFlag, const RayPicking::RayPickFilter &filter, std::vector< RayPicking::RayPickHit > &hits) override
bool pickRay(Context *context, const glm::vec3 &startPos, const glm::quat &rot, float rayLength, float radius, PickingFlags pickingFlags, PicksReturned returnFlag, const RayPicking::RayPickFilter &filter, std::vector< RayPicking::RayPickHit > &hits) override
Do a ray pick from a position and orientation in world space and return all hits.