- Merged 292 changed files from dlbo snapshot - Fixed IDL enum collisions (PortType, PdmEventType) - Fixed Grantlee template for C++11 scoped enums - Fixed CMake VERSION_GREATER syntax - Added missing directories (THP, LtsRestClient, etc.) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
41 lines
789 B
C++
Executable File
41 lines
789 B
C++
Executable File
/**
|
|
* Effector Firing Strategy for DM72
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Hannes Fritsche, ESZS, 2026-05-21
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "abstract_firing_strategy.h"
|
|
|
|
namespace LtsUtils
|
|
{
|
|
class QPoint3D;
|
|
}
|
|
|
|
namespace AreaEffectSimulation
|
|
{
|
|
class Dm72FiringStrategy : public AbstractFiringStrategy
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit Dm72FiringStrategy(ObjectEffector *effector);
|
|
|
|
bool doFiring() final;
|
|
|
|
private: // methods
|
|
void init();
|
|
QVector<QPointF> mineLayingCentroids() const;
|
|
double angleToMhpUtm(const QPointF &mhpUtm) const;
|
|
|
|
private: // attributes
|
|
QVector<LtsUtils::QPoint3D> m_impactPoints;
|
|
int m_impactPointIndex {0};
|
|
int m_effectDurationMsec = 3 * 60 * 60 * 1000; // default 3h
|
|
|
|
}; // class Dm72FiringStrategy
|
|
} // namespace AreaEffectSimulation
|