44 std::vector<double>
s_;
49 for(
int i=0;i<=13;i++)
s_.push_back(0.0);
86 if(rightTarget!=
nullptr && rightTarget->
isValid())
97 if(leftTarget!=
nullptr && leftTarget->
isValid())
125 s_[7] = source->getSMax();
138 s_[1] =
std::max(smin,lc->getProgressOfGateOpen());
140 source->toEucledianCoordinates(
s_[1],source->getOffsetOfRightBorder(
s_[1]),X,Y,Z);
141 target->toRelativeCoordinates(X,Y,s,n);
144 target->toRelativeCoordinates(X0,Y0,s,n);
146 s_[4] = target->getSMax();
149 s_[6] =
std::max(smin,lc->getProgressOfGateClosed());
151 source->toEucledianCoordinates(
s_[6],source->getOffsetOfRightBorder(
s_[6]),X,Y,Z);
152 target->toRelativeCoordinates(X,Y,s,n);
161 s_[13] =
std::max(smin,lc->getProgressOfGateOpen());
163 source->toEucledianCoordinates(
s_[13],source->getOffsetOfLeftBorder(
s_[13]),X,Y,Z);
164 target->toRelativeCoordinates(X,Y,s,n);
167 target->toRelativeCoordinates(X0,Y0,s,n);
169 s_[10] = target->getSMax();
172 s_[8] =
std::max(smin,lc->getProgressOfGateClosed());
174 source->toEucledianCoordinates(
s_[8],source->getOffsetOfLeftBorder(
s_[8]),X,Y,Z);
175 target->toRelativeCoordinates(X,Y,s,n);
184 bool inverted = s0>s1;
185 double n,X,Y,Z,lasts;
187 (!inverted && s<=s1) || (inverted && s>=s1);
193 area.push_back(std::make_pair(X,Y));
199 area.push_back(std::make_pair(X,Y));
Definition: area_of_effect_provider.h:33
adore::env::AFactory::TVehicleMotionStateReader * xreader_
Definition: area_of_effect_provider.h:39
adore::params::APPrediction * params_
Definition: area_of_effect_provider.h:41
void run()
Definition: area_of_effect_provider.h:55
adore::env::ThreeLaneViewDecoupled three_lanes_
Definition: area_of_effect_provider.h:40
std::vector< double > s_
Definition: area_of_effect_provider.h:44
void computeSValues(adore::view::AThreeLaneView *view, double X0, double Y0)
Definition: area_of_effect_provider.h:111
adore::env::AFactory::TAreaOfEffectWriter * writer_aoi_
Definition: area_of_effect_provider.h:38
adore::env::AFactory::TAreaOfEffectWriter * writer_aoe_
Definition: area_of_effect_provider.h:37
double lookbehind_
Definition: area_of_effect_provider.h:43
AreaOfEffectProvider(double resolution=1.0)
Definition: area_of_effect_provider.h:46
double resolution_
Definition: area_of_effect_provider.h:42
void sampleLane(adore::view::ALane *lane, double s0, double s1, adore::env::AreaOfEffect &area, double n_shrink_aoi=0.0)
Definition: area_of_effect_provider.h:181
virtual TAreaOfEffectWriter * getAreaOfInterestWriter()=0
virtual TVehicleMotionStateReader * getVehicleMotionStateReader()=0
virtual TAreaOfEffectWriter * getAreaOfEffectWriter()=0
Utility class to simplify factory access.
Definition: afactory.h:220
static adore::env::AFactory * get()
Definition: afactory.h:236
Definition: threelaneviewdecoupled.h:32
void update()
Definition: threelaneviewdecoupled.h:373
Definition: com_patterns.h:68
virtual void getData(T &value)=0
virtual bool hasData() const =0
Definition: com_patterns.h:97
virtual void write(const T &value)=0
virtual APPrediction * getPrediction() const =0
parameter interface for parameters related to prediction
Definition: ap_prediction.h:28
virtual double get_area_of_effect_shrink() const =0
filtering out all static objects not inside area of effect
virtual double get_area_of_interest_shrink() const =0
distinction between clutter and static traffic objects: how far into road has object to extend to be ...
Utility class to simplify factory access.
Definition: afactory.h:87
static adore::params::AFactory * get()
Definition: afactory.h:103
virtual ALane * getTargetLane()=0
virtual void toRelativeCoordinates(double xe, double ye, double &s, double &n)=0
virtual double getOffsetOfRightBorder(double s)=0
virtual void toEucledianCoordinates(double s, double n, double &xe, double &ye, double &ze)=0
virtual bool isValid() const =0
virtual double getOffsetOfLeftBorder(double s)=0
Definition: athreelaneview.h:30
virtual ALane * getCurrentLane()=0
virtual ALaneChangeView * getLeftLaneChange()=0
virtual ALaneChangeView * getRightLaneChange()=0
std::vector< std::pair< double, double > > AreaOfEffect
Definition: areaofeffect.h:20
adoreMatrix< T, N, M > max(adoreMatrix< T, N, M > a, const adoreMatrix< T, N, M > &b)
Definition: adoremath.h:686
x
Definition: adore_set_goal.py:30
Definition: areaofeffectconverter.h:20
This struct holds the motion state of the vehicle in 9d.
Definition: vehiclemotionstate9d.h:39