|
WSF
|
#include <WsfClusterManager.hpp>
Inherits UtClusterManager.
Public Member Functions | |
| WsfClusterManager (WsfSimulation &aSimulation, size_t aNumClusters=0, UtClusterManager::ClusteringMethod aMethod=UtClusterManager::cK_MEANS, UtClusterManager::DistanceFunction aDistType=UtClusterManager::cPOSITION_ONLY) | |
| ~WsfClusterManager () override=default | |
'utility' methods. | |
| enum | DrawType { HULL , STAR } |
| unsigned int | UniqueId (const std::vector< WsfTrack * > &aList) |
| unsigned int | UniqueId (const std::vector< WsfPlatform * > &aList) |
| unsigned int | UniqueId (const std::vector< WsfGeoPoint * > &aList) |
| unsigned int | UniqueId (const std::vector< WsfAssetPerception * > &aList) |
| std::vector< WsfTrack * > | ConvexHull (const std::vector< WsfTrack * > &aList) |
| std::vector< WsfPlatform * > | ConvexHull (const std::vector< WsfPlatform * > &aList) |
| std::vector< WsfGeoPoint * > | ConvexHull (const std::vector< WsfGeoPoint * > &aList) |
| std::vector< WsfAssetPerception * > | ConvexHull (const std::vector< WsfAssetPerception * > &aList) |
| WsfGeoPoint | MeanLocation (const std::vector< WsfTrack * > &aList) |
| WsfGeoPoint | MeanLocation (const std::vector< WsfPlatform * > &aList) |
| WsfGeoPoint | MeanLocation (const std::vector< WsfGeoPoint * > &aList) |
| WsfGeoPoint | MeanLocation (const std::vector< WsfAssetPerception * > &aList) |
| WsfTrack * | NearestMember (const std::vector< WsfTrack * > &aList, WsfGeoPoint &toPoint) |
| WsfPlatform * | NearestMember (const std::vector< WsfPlatform * > &aList, WsfGeoPoint &toPoint) |
| WsfGeoPoint * | NearestMember (const std::vector< WsfGeoPoint * > &aList, WsfGeoPoint &toPoint) |
| WsfAssetPerception * | NearestMember (const std::vector< WsfAssetPerception * > &aList, WsfGeoPoint &toPoint) |
| void | NearestEdgePoint (const std::vector< WsfTrack * > &aList, WsfGeoPoint &toPoint, WsfGeoPoint &edgePoint, size_t &edgeIndex1, size_t &edgeIndex2) |
| void | NearestEdgePoint (const std::vector< WsfPlatform * > &aList, WsfGeoPoint &toPoint, WsfGeoPoint &edgePoint, size_t &edgeIndex1, size_t &edgeIndex2) |
| void | NearestEdgePoint (const std::vector< WsfGeoPoint * > &aList, WsfGeoPoint &toPoint, WsfGeoPoint &edgePoint, size_t &edgeIndex1, size_t &edgeIndex2) |
| void | NearestEdgePoint (const std::vector< WsfAssetPerception * > &aList, WsfGeoPoint &toPoint, WsfGeoPoint &edgePoint, size_t &edgeIndex1, size_t &edgeIndex2) |
| void | CrossLength (const std::vector< WsfTrack * > &aList, WsfGeoPoint &refPoint, double &dist1, WsfGeoPoint &leftPt, WsfGeoPoint &rightPt) |
| void | CrossLength (const std::vector< WsfPlatform * > &aList, WsfGeoPoint &refPoint, double &dist1, WsfGeoPoint &leftPt, WsfGeoPoint &rightPt) |
| void | CrossLength (const std::vector< WsfGeoPoint * > &aList, WsfGeoPoint &refPoint, double &dist1, WsfGeoPoint &leftPt, WsfGeoPoint &rightPt) |
| void | CrossLength (const std::vector< WsfAssetPerception * > &aList, WsfGeoPoint &refPoint, double &dist1, WsfGeoPoint &leftPt, WsfGeoPoint &rightPt) |
| void | Draw (const std::vector< WsfTrack * > &aList, double duration, UtVec3d &color, DrawType type=HULL) |
| void | Draw (const std::vector< WsfPlatform * > &aList, double duration, UtVec3d &color, DrawType type=HULL) |
| void | Draw (const std::vector< WsfGeoPoint * > &aList, double duration, UtVec3d &color, DrawType type=HULL) |
| void | Draw (const std::vector< WsfAssetPerception * > &aList, double duration, UtVec3d &color, DrawType type=HULL) |
| void | DrawHull (std::vector< UtClusterObject * > &cluster, double duration, UtVec3d &color) |
| void | DrawStar (std::vector< UtClusterObject * > &cluster, double duration, UtVec3d &color) |
'configuration' methods. | |
| bool | SetUserDistanceFunction (UtScriptContext *aScriptContextPtr, const std::string &aScoringFunctionName) |
| finds and validates the script the user passed in as a scoring function | |
| bool | UserDistanceFunction (UtClusterObject *aObjectPtr, UtClusterObject *aObject2Ptr, double &aDistance) override |
| WsfSimulation * | GetSimulation () const |
'clustering' methods. | |
| std::vector< std::vector< WsfTrack * > > | GetTrackClusters (WsfTrackList &aList) |
| std::vector< std::vector< WsfLocalTrack * > > | GetTrackClusters (WsfLocalTrackList &aList) |
| std::vector< std::vector< WsfTrack * > > | GetTrackClusters (const std::vector< WsfTrack * > &aList) |
| std::vector< std::vector< WsfLocalTrack * > > | GetTrackClusters (const std::vector< WsfLocalTrack * > &aList) |
| std::vector< std::vector< WsfPlatform * > > | GetPlatformClusters (const std::vector< WsfPlatform * > &aList) |
| std::vector< std::vector< WsfGeoPoint * > > | GetGeoPointClusters (const std::vector< WsfGeoPoint * > &aList) |
| std::vector< std::vector< WsfAssetPerception * > > | GetAssetClusters (const std::vector< WsfAssetPerception * > &aList) |
| void | Delete (std::vector< UtClusterObject * > &objects) |
A WsfClusterManager is a cluster creator & maintainer.
WsfClusterManager provides the processing desired for dynamic clustering. It is used to form clusters from an array or list of items. Cluster algorithms implemented at this time:
| WsfClusterManager::WsfClusterManager | ( | WsfSimulation & | aSimulation, |
| size_t | aNumClusters = 0, | ||
| UtClusterManager::ClusteringMethod | aMethod = UtClusterManager::cK_MEANS, | ||
| UtClusterManager::DistanceFunction | aDistType = UtClusterManager::cPOSITION_ONLY ) |
|
overridedefault |
| std::vector< WsfAssetPerception * > WsfClusterManager::ConvexHull | ( | const std::vector< WsfAssetPerception * > & | aList | ) |
References Delete(), WsfAssetClusterObject::GetAssets(), and WsfAssetClusterObject::GetObjects().
| std::vector< WsfGeoPoint * > WsfClusterManager::ConvexHull | ( | const std::vector< WsfGeoPoint * > & | aList | ) |
| std::vector< WsfPlatform * > WsfClusterManager::ConvexHull | ( | const std::vector< WsfPlatform * > & | aList | ) |
References Delete(), WsfTrackClusterObject::GetObjects(), GetSimulation(), and WsfTrackClusterObject::GetTracks().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
| void WsfClusterManager::CrossLength | ( | const std::vector< WsfAssetPerception * > & | aList, |
| WsfGeoPoint & | refPoint, | ||
| double & | dist1, | ||
| WsfGeoPoint & | leftPt, | ||
| WsfGeoPoint & | rightPt ) |
| void WsfClusterManager::CrossLength | ( | const std::vector< WsfGeoPoint * > & | aList, |
| WsfGeoPoint & | refPoint, | ||
| double & | dist1, | ||
| WsfGeoPoint & | leftPt, | ||
| WsfGeoPoint & | rightPt ) |
| void WsfClusterManager::CrossLength | ( | const std::vector< WsfPlatform * > & | aList, |
| WsfGeoPoint & | refPoint, | ||
| double & | dist1, | ||
| WsfGeoPoint & | leftPt, | ||
| WsfGeoPoint & | rightPt ) |
| void WsfClusterManager::CrossLength | ( | const std::vector< WsfTrack * > & | aList, |
| WsfGeoPoint & | refPoint, | ||
| double & | dist1, | ||
| WsfGeoPoint & | leftPt, | ||
| WsfGeoPoint & | rightPt ) |
References Delete(), WsfGeoPoint::GetLocationWCS(), WsfTrackClusterObject::GetObjects(), GetSimulation(), and WsfGeoPoint::SetLocationWCS().
Referenced by ~WsfClusterManager().
| void WsfClusterManager::Delete | ( | std::vector< UtClusterObject * > & | objects | ) |
Referenced by ConvexHull(), ConvexHull(), ConvexHull(), ConvexHull(), CrossLength(), CrossLength(), CrossLength(), CrossLength(), Draw(), Draw(), Draw(), Draw(), GetAssetClusters(), GetGeoPointClusters(), GetPlatformClusters(), GetTrackClusters(), GetTrackClusters(), GetTrackClusters(), GetTrackClusters(), MeanLocation(), MeanLocation(), MeanLocation(), MeanLocation(), NearestEdgePoint(), NearestEdgePoint(), NearestEdgePoint(), NearestEdgePoint(), NearestMember(), NearestMember(), NearestMember(), NearestMember(), UniqueId(), UniqueId(), UniqueId(), UniqueId(), and ~WsfClusterManager().
| void WsfClusterManager::Draw | ( | const std::vector< WsfAssetPerception * > & | aList, |
| double | duration, | ||
| UtVec3d & | color, | ||
| DrawType | type = HULL ) |
References Delete(), DrawHull(), DrawStar(), WsfAssetClusterObject::GetObjects(), and STAR.
| void WsfClusterManager::Draw | ( | const std::vector< WsfGeoPoint * > & | aList, |
| double | duration, | ||
| UtVec3d & | color, | ||
| DrawType | type = HULL ) |
References Delete(), DrawHull(), DrawStar(), WsfGeoPointClusterObject::GetObjects(), and STAR.
| void WsfClusterManager::Draw | ( | const std::vector< WsfPlatform * > & | aList, |
| double | duration, | ||
| UtVec3d & | color, | ||
| DrawType | type = HULL ) |
References Delete(), DrawHull(), DrawStar(), WsfPlatformClusterObject::GetObjects(), and STAR.
| void WsfClusterManager::Draw | ( | const std::vector< WsfTrack * > & | aList, |
| double | duration, | ||
| UtVec3d & | color, | ||
| DrawType | type = HULL ) |
References Delete(), DrawHull(), DrawStar(), WsfTrackClusterObject::GetObjects(), GetSimulation(), and STAR.
| void WsfClusterManager::DrawHull | ( | std::vector< UtClusterObject * > & | cluster, |
| double | duration, | ||
| UtVec3d & | color ) |
References GetSimulation().
| void WsfClusterManager::DrawStar | ( | std::vector< UtClusterObject * > & | cluster, |
| double | duration, | ||
| UtVec3d & | color ) |
References GetSimulation().
| std::vector< std::vector< WsfAssetPerception * > > WsfClusterManager::GetAssetClusters | ( | const std::vector< WsfAssetPerception * > & | aList | ) |
References Delete(), WsfAssetClusterObject::GetAssets(), and WsfAssetClusterObject::GetObjects().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
| std::vector< std::vector< WsfGeoPoint * > > WsfClusterManager::GetGeoPointClusters | ( | const std::vector< WsfGeoPoint * > & | aList | ) |
References Delete(), WsfGeoPointClusterObject::GetGeoPoints(), and WsfGeoPointClusterObject::GetObjects().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
| std::vector< std::vector< WsfPlatform * > > WsfClusterManager::GetPlatformClusters | ( | const std::vector< WsfPlatform * > & | aList | ) |
References Delete(), WsfPlatformClusterObject::GetObjects(), and WsfPlatformClusterObject::GetPlatforms().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
|
inline |
| std::vector< std::vector< WsfLocalTrack * > > WsfClusterManager::GetTrackClusters | ( | const std::vector< WsfLocalTrack * > & | aList | ) |
| std::vector< std::vector< WsfLocalTrack * > > WsfClusterManager::GetTrackClusters | ( | WsfLocalTrackList & | aList | ) |
| std::vector< std::vector< WsfTrack * > > WsfClusterManager::GetTrackClusters | ( | WsfTrackList & | aList | ) |
References Delete(), WsfTrackClusterObject::GetObjects(), GetSimulation(), and WsfTrackClusterObject::GetTracks().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
| WsfGeoPoint WsfClusterManager::MeanLocation | ( | const std::vector< WsfAssetPerception * > & | aList | ) |
References Delete(), and WsfAssetClusterObject::GetObjects().
| WsfGeoPoint WsfClusterManager::MeanLocation | ( | const std::vector< WsfGeoPoint * > & | aList | ) |
References Delete(), and WsfGeoPointClusterObject::GetObjects().
| WsfGeoPoint WsfClusterManager::MeanLocation | ( | const std::vector< WsfPlatform * > & | aList | ) |
References Delete(), and WsfPlatformClusterObject::GetObjects().
| WsfGeoPoint WsfClusterManager::MeanLocation | ( | const std::vector< WsfTrack * > & | aList | ) |
References Delete(), WsfTrackClusterObject::GetObjects(), and GetSimulation().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
| void WsfClusterManager::NearestEdgePoint | ( | const std::vector< WsfAssetPerception * > & | aList, |
| WsfGeoPoint & | toPoint, | ||
| WsfGeoPoint & | edgePoint, | ||
| size_t & | edgeIndex1, | ||
| size_t & | edgeIndex2 ) |
References Delete(), WsfAssetClusterObject::GetObjects(), and WsfGeoPoint::SetLocationWCS().
| void WsfClusterManager::NearestEdgePoint | ( | const std::vector< WsfGeoPoint * > & | aList, |
| WsfGeoPoint & | toPoint, | ||
| WsfGeoPoint & | edgePoint, | ||
| size_t & | edgeIndex1, | ||
| size_t & | edgeIndex2 ) |
References Delete(), WsfGeoPointClusterObject::GetObjects(), and WsfGeoPoint::SetLocationWCS().
| void WsfClusterManager::NearestEdgePoint | ( | const std::vector< WsfPlatform * > & | aList, |
| WsfGeoPoint & | toPoint, | ||
| WsfGeoPoint & | edgePoint, | ||
| size_t & | edgeIndex1, | ||
| size_t & | edgeIndex2 ) |
References Delete(), WsfPlatformClusterObject::GetObjects(), and WsfGeoPoint::SetLocationWCS().
| void WsfClusterManager::NearestEdgePoint | ( | const std::vector< WsfTrack * > & | aList, |
| WsfGeoPoint & | toPoint, | ||
| WsfGeoPoint & | edgePoint, | ||
| size_t & | edgeIndex1, | ||
| size_t & | edgeIndex2 ) |
References Delete(), WsfTrackClusterObject::GetObjects(), GetSimulation(), and WsfGeoPoint::SetLocationWCS().
Referenced by ~WsfClusterManager().
| WsfAssetPerception * WsfClusterManager::NearestMember | ( | const std::vector< WsfAssetPerception * > & | aList, |
| WsfGeoPoint & | toPoint ) |
References Delete(), and WsfAssetClusterObject::GetObjects().
| WsfGeoPoint * WsfClusterManager::NearestMember | ( | const std::vector< WsfGeoPoint * > & | aList, |
| WsfGeoPoint & | toPoint ) |
References Delete(), and WsfGeoPointClusterObject::GetObjects().
| WsfPlatform * WsfClusterManager::NearestMember | ( | const std::vector< WsfPlatform * > & | aList, |
| WsfGeoPoint & | toPoint ) |
References Delete(), and WsfPlatformClusterObject::GetObjects().
| WsfTrack * WsfClusterManager::NearestMember | ( | const std::vector< WsfTrack * > & | aList, |
| WsfGeoPoint & | toPoint ) |
References Delete(), WsfTrackClusterObject::GetObjects(), and GetSimulation().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
| bool WsfClusterManager::SetUserDistanceFunction | ( | UtScriptContext * | aScriptContextPtr, |
| const std::string & | aScoringFunctionName ) |
finds and validates the script the user passed in as a scoring function
| unsigned int WsfClusterManager::UniqueId | ( | const std::vector< WsfAssetPerception * > & | aList | ) |
References Delete(), and WsfAssetClusterObject::GetObjects().
| unsigned int WsfClusterManager::UniqueId | ( | const std::vector< WsfGeoPoint * > & | aList | ) |
References Delete(), and WsfGeoPointClusterObject::GetObjects().
| unsigned int WsfClusterManager::UniqueId | ( | const std::vector< WsfPlatform * > & | aList | ) |
References Delete(), and WsfPlatformClusterObject::GetObjects().
| unsigned int WsfClusterManager::UniqueId | ( | const std::vector< WsfTrack * > & | aList | ) |
References Delete(), WsfTrackClusterObject::GetObjects(), and GetSimulation().
Referenced by WsfScriptClusterManagerClass::WsfScriptClusterManagerClass(), and ~WsfClusterManager().
|
override |
References WsfSimulation::GetScriptExecutor(), and GetSimulation().