23#include "AstCore/WeakPtr.hpp"
27class SpatialCondition;
69 errc_t
evaluate(
const TimePoint& time,
const Vector3d& position,
double& result)
const override;
79 void setSatisfactionMetric(ESatisfactionMetric metric) { metricType_ = metric; }
85 void setAccumulationType(EAccumulationType accumulation) { accumulationType_ = accumulation; }
91 void setIntervalFilter(EIntervalFilter filter) { filter_ = filter; }
96 WeakPtr<SpatialCondition> condition_;
空间条件满足度量计算
定义 SpatialCalcSatisfactionMetrics.hpp:63
void accept(SpatialCalculationVisitor &visitor) override
接受访问者
定义 SpatialCalcSatisfactionMetrics.hpp:68
空间计算访问者接口
定义 SpatialCalculationVisitor.hpp:44
空间计算基类
定义 SpatialCalculation.hpp:35
virtual errc_t evaluate(const TimePoint &time, const Vector3d &position, double &result) const =0
在指定时间和位置评估计算
空间条件基类
定义 SpatialCondition.hpp:33
绝对时间点
定义 TimePoint.hpp:108
ESatisfactionMetric
满足度量类型
定义 SpatialCalcSatisfactionMetrics.hpp:31
@ eNumberOfIntervals
满足区间数量
@ eTimeSinceLastSatisfaction
距上次满足的时间
@ eTimeUntilNextSatisfaction
距下次满足的时间
@ eIntervalDuration
满足区间时长
EIntervalFilter
区间过滤类型
定义 SpatialCalcSatisfactionMetrics.hpp:51
@ eDurationLessThan
时长小于指定值
@ eDurationGreaterThan
时长大于指定值
EAccumulationType
累积类型
定义 SpatialCalcSatisfactionMetrics.hpp:42
@ eFromCurrentTime
从当前时间开始累积
@ eUpToCurrentTime
累积到当前时间