FlightGear next
|
#include <AIShip.hxx>
Inherits FGAIBase.
Inherited by FGAICarrier, FGAIEscort, and FGAIGroundVehicle.
Public Member Functions | |
FGAIShip (object_type ot=object_type::otShip) | |
virtual | ~FGAIShip ()=default |
std::string_view | getTypeString (void) const override |
void | readFromScenario (SGPropertyNode *scFileNode) override |
bool | init (ModelSearchOrder searchOrder) override |
void | bind () override |
void | update (double dt) override |
void | reinit () override |
double | getDefaultModelRadius () override |
void | setRudder (float r) |
void | setRoll (double rl) |
void | ProcessFlightPlan (double dt) |
void | AccelTo (double speed) |
void | PitchTo (double angle) |
void | RollTo (double angle) |
void | ClimbTo (double altitude) |
void | TurnTo (double heading) |
void | setCurrName (const std::string &) |
void | setNextName (const std::string &) |
void | setPrevName (const std::string &) |
void | setLeadAngleGain (double g) |
void | setLeadAngleLimit (double l) |
void | setLeadAngleProp (double p) |
void | setRudderConstant (double rc) |
void | setSpeedConstant (double sc) |
void | setFixedTurnRadius (double ft) |
void | setRollFactor (double rf) |
void | setTunnel (bool t) |
void | setInitialTunnel (bool t) |
void | setWPNames () |
void | setWPPos () |
double | sign (double x) |
![]() | |
FGAIBase (object_type ot, bool enableHot) | |
virtual | ~FGAIBase () |
virtual void | initModel () |
virtual void | unbind () |
void | updateLOD () |
update LOD properties of the model | |
void | updateInterior () |
void | setManager (FGAIManager *mgr, SGPropertyNode *p) |
void | setPath (const char *model) |
void | setPathLowres (std::string model) |
void | setFallbackModelIndex (const int i) |
void | setSMPath (const std::string &p) |
void | setCallSign (const std::string &) |
void | setSpeed (double speed_KTAS) |
void | setMaxSpeed (double kts) |
void | setAltitude (double altitude_ft) |
void | setAltitudeAGL (double altitude_agl_ft) |
void | setHeading (double heading) |
void | setLatitude (double latitude) |
void | setLongitude (double longitude) |
void | setBank (double bank) |
void | setPitch (double newpitch) |
void | setRadius (double radius) |
void | setXoffset (double x_offset) |
void | setYoffset (double y_offset) |
void | setZoffset (double z_offset) |
void | setPitchoffset (double x_offset) |
void | setRolloffset (double y_offset) |
void | setYawoffset (double z_offset) |
void | setServiceable (bool serviceable) |
bool | getDie () |
void | setDie (bool die) |
bool | isValid () const |
void | setCollisionData (bool i, double lat, double lon, double elev) |
void | setImpactData (bool d) |
void | setImpactLat (double lat) |
void | setImpactLon (double lon) |
void | setImpactElev (double e) |
void | setName (const std::string &n) |
bool | setParentNode () |
void | setParentName (const std::string &p) |
void | setCollisionLength (int range) |
void | setCollisionHeight (int height) |
void | calcRangeBearing (double lat, double lon, double lat2, double lon2, double &range, double &bearing) const |
double | calcRelBearingDeg (double bearing, double heading) |
double | calcTrueBearingDeg (double bearing, double heading) |
double | calcRecipBearingDeg (double bearing) |
int | getID () const |
int | _getSubID () const |
void | setFlightPlan (std::unique_ptr< FGAIFlightPlan > f) |
SGGeod | getGeodPos () const |
void | setGeodPos (const SGGeod &pos) |
SGVec3d | getCartPosAt (const SGVec3d &off) const |
SGVec3d | getCartPos () const |
bool | getGroundElevationM (const SGGeod &pos, double &elev, const simgear::BVHMaterial **material) const |
SGPropertyNode * | getPositionFromNode (SGPropertyNode *scFileNode, const std::string &key, SGVec3d &position) |
double | getTrueHeadingDeg () const |
double | _getCartPosX () const |
double | _getCartPosY () const |
double | _getCartPosZ () const |
osg::LOD * | getSceneBranch () const |
virtual int | getCollisionHeight () const |
virtual int | getCollisionLength () const |
bool | modelLoaded () const |
void | setScenarioPath (const std::string &scenarioPath) |
object_type | getType () |
bool | isa (object_type otype) |
void | _setVS_fps (double _vs) |
void | _setAltitude (double _alt) |
void | _setLongitude (double longitude) |
void | _setLatitude (double latitude) |
void | _setSubID (int s) |
double | _getAltitudeAGL (SGGeod inpos, double start) |
double | _getVS_fps () const |
double | _getAltitude () const |
double | _getLongitude () const |
double | _getLatitude () const |
double | _getElevationFt () const |
double | _getRdot () const |
double | _getH_offset () const |
double | _getV_offset () const |
double | _getX_shift () const |
double | _getY_shift () const |
double | _getRotation () const |
double | _getSpeed () const |
double | _getRoll () const |
double | _getPitch () const |
double | _getHeading () const |
double | _get_speed_east_fps () const |
double | _get_speed_north_fps () const |
double | _get_SubPath () const |
double | _getImpactLat () const |
double | _getImpactLon () const |
double | _getImpactElevFt () const |
double | _getImpactHdg () const |
double | _getImpactPitch () const |
double | _getImpactRoll () const |
double | _getImpactSpeed () const |
double | _getXOffset () const |
double | _getYOffset () const |
double | _getZOffset () const |
bool | _getServiceable () const |
bool | _getFirstTime () const |
bool | _getImpact () |
bool | _getImpactData () |
bool | _getCollisionData () |
bool | _getExpiryData () |
SGPropertyNode * | _getProps () const |
const char * | _getPath () const |
const char * | _getSMPath () const |
const char * | _getCallsign () const |
const char * | _getTriggerNode () const |
const char * | _getName () const |
const char * | _getSubmodel () const |
int | _getFallbackModelIndex () const |
double | _getRange () const |
double | _getBearing () const |
const std::string & | getCallSign () const |
ModelSearchOrder | getSearchOrder () const |
Public Attributes | |
bool | _hdg_lock = false |
bool | _serviceable = false |
bool | _waiting |
bool | _new_waypoint |
bool | _tunnel |
bool | _initial_tunnel |
bool | _restart |
double | _rudder_constant = 0.0 |
double | _speed_constant = 0.0 |
double | _hdg_constant |
double | _limit |
double | _elevation_ft |
double | _missed_range = 0.0 |
double | _tow_angle |
double | _wait_count = 0.0 |
double | _missed_count |
double | _wp_range |
double | _dt_count |
double | _next_run |
FGAIWaypoint * | prev = nullptr |
FGAIWaypoint * | curr = nullptr |
FGAIWaypoint * | next = nullptr |
Additional Inherited Members | |
![]() | |
enum class | object_type { otNull = 0 , otAircraft , otShip , otCarrier , otBallistic , otRocket , otStorm , otThermal , otStatic , otWingman , otGroundVehicle , otEscort , otMultiplayer , MAX_OBJECTS } |
enum class | ModelSearchOrder { DATA_ONLY , PREFER_AI , PREFER_DATA } |
![]() | |
static bool | _isNight () |
![]() | |
static const double | e = 2.71828183 |
static const double | lbs_to_slugs = 0.031080950172 |
![]() | |
template<typename T> | |
void | tie (const char *aRelPath, const SGRawValue< T > &aRawValue) |
Tied-properties helper, record nodes which are tied for easy un-tie-ing. | |
void | Transform () |
double | UpdateRadar (FGAIManager *manager) |
void | removeModel () |
Cleanly remove the model and let the scenery database pager do the clean-up work. | |
void | removeSoundFx () |
![]() | |
static int | _newAIModelID () |
![]() | |
double | _elevation_m = 0.0 |
double | _x_offset |
double | _y_offset |
double | _z_offset |
double | _pitch_offset |
double | _roll_offset |
double | _yaw_offset |
double | _max_speed = 300.0 |
int | collisionHeight = 0 |
int | collisionLength = 0 |
std::string | _path |
std::string | _callsign |
std::string | _submodel |
std::string | _name |
std::string | _parent |
std::string | _scenarioPath |
simgear::TiedPropertyList | _tiedProperties |
SGPropertyNode_ptr | _selected_ac |
SGPropertyNode_ptr | props |
SGPropertyNode_ptr | trigger_node |
SGPropertyNode_ptr | replay_time |
SGPropertyNode_ptr | model_removed |
FGAIManager * | manager = nullptr |
SGGeod | pos |
double | hdg |
double | roll |
double | pitch |
double | speed |
double | speed_fps = 0.0 |
double | altitude_ft |
double | vs_fps |
double | speed_north_deg_sec |
double | speed_east_deg_sec |
double | turn_radius_ft |
double | altitude_agl_ft = 0.0 |
double | ft_per_deg_lon |
double | ft_per_deg_lat |
double | tgt_heading |
double | tgt_altitude_ft |
double | tgt_speed |
double | tgt_roll |
double | tgt_pitch |
double | tgt_yaw |
double | tgt_vs |
bool | in_range |
double | bearing |
double | elevation |
double | range |
double | rdot |
double | horiz_offset |
double | vert_offset |
double | x_shift |
double | y_shift |
double | rotation |
double | ht_diff |
std::string | model_path |
std::string | model_path_lowres |
int | _fallback_model_index = 0 |
SGModelPlacement | aip |
bool | delete_me |
bool | invisible = false |
bool | no_roll |
bool | serviceable |
bool | _installed = false |
int | _subID = 0 |
double | life |
std::unique_ptr< FGAIFlightPlan > | fp |
bool | _impact_reported |
bool | _collision_reported |
bool | _expiry_reported |
double | _impact_lat |
double | _impact_lon |
double | _impact_elev |
double | _impact_hdg |
double | _impact_pitch |
double | _impact_roll |
double | _impact_speed |
ModelSearchOrder | _searchOrder = ModelSearchOrder::DATA_ONLY |
Definition at line 21 of file AIShip.hxx.
|
explicit |
Definition at line 30 of file AIShip.cxx.
|
virtualdefault |
void FGAIShip::AccelTo | ( | double | speed | ) |
Definition at line 431 of file AIShip.cxx.
|
overridevirtual |
Reimplemented from FGAIBase.
Definition at line 124 of file AIShip.cxx.
void FGAIShip::ClimbTo | ( | double | altitude | ) |
Definition at line 451 of file AIShip.cxx.
|
inlineoverridevirtual |
Reimplemented from FGAIBase.
Definition at line 34 of file AIShip.hxx.
|
inlineoverridevirtual |
Reimplemented from FGAIBase.
Definition at line 27 of file AIShip.hxx.
|
overridevirtual |
Reimplemented from FGAIBase.
Definition at line 92 of file AIShip.cxx.
void FGAIShip::PitchTo | ( | double | angle | ) |
Definition at line 436 of file AIShip.cxx.
void FGAIShip::ProcessFlightPlan | ( | double | dt | ) |
Definition at line 622 of file AIShip.cxx.
|
overridevirtual |
Reimplemented from FGAIBase.
Definition at line 63 of file AIShip.cxx.
|
overridevirtual |
Reimplemented from FGAIBase.
Definition at line 98 of file AIShip.cxx.
void FGAIShip::RollTo | ( | double | angle | ) |
Definition at line 441 of file AIShip.cxx.
void FGAIShip::setCurrName | ( | const std::string & | c | ) |
Definition at line 483 of file AIShip.cxx.
void FGAIShip::setFixedTurnRadius | ( | double | ft | ) |
Definition at line 552 of file AIShip.cxx.
void FGAIShip::setInitialTunnel | ( | bool | t | ) |
Definition at line 562 of file AIShip.cxx.
void FGAIShip::setLeadAngleGain | ( | double | g | ) |
Definition at line 527 of file AIShip.cxx.
void FGAIShip::setLeadAngleLimit | ( | double | l | ) |
Definition at line 532 of file AIShip.cxx.
void FGAIShip::setLeadAngleProp | ( | double | p | ) |
Definition at line 537 of file AIShip.cxx.
void FGAIShip::setNextName | ( | const std::string & | n | ) |
Definition at line 489 of file AIShip.cxx.
void FGAIShip::setPrevName | ( | const std::string & | p | ) |
Definition at line 495 of file AIShip.cxx.
void FGAIShip::setRoll | ( | double | rl | ) |
Definition at line 522 of file AIShip.cxx.
void FGAIShip::setRollFactor | ( | double | rf | ) |
Definition at line 557 of file AIShip.cxx.
void FGAIShip::setRudder | ( | float | r | ) |
Definition at line 517 of file AIShip.cxx.
void FGAIShip::setRudderConstant | ( | double | rc | ) |
Definition at line 542 of file AIShip.cxx.
void FGAIShip::setSpeedConstant | ( | double | sc | ) |
Definition at line 547 of file AIShip.cxx.
void FGAIShip::setTunnel | ( | bool | t | ) |
Definition at line 568 of file AIShip.cxx.
void FGAIShip::setWPNames | ( | ) |
Definition at line 573 of file AIShip.cxx.
void FGAIShip::setWPPos | ( | ) |
Definition at line 1051 of file AIShip.cxx.
double FGAIShip::sign | ( | double | x | ) |
Definition at line 464 of file AIShip.cxx.
void FGAIShip::TurnTo | ( | double | heading | ) |
Definition at line 457 of file AIShip.cxx.
|
overridevirtual |
Reimplemented from FGAIBase.
Definition at line 199 of file AIShip.cxx.
double FGAIShip::_dt_count |
Definition at line 83 of file AIShip.hxx.
double FGAIShip::_elevation_ft |
Definition at line 78 of file AIShip.hxx.
double FGAIShip::_hdg_constant |
Definition at line 77 of file AIShip.hxx.
bool FGAIShip::_hdg_lock = false |
Definition at line 68 of file AIShip.hxx.
bool FGAIShip::_initial_tunnel |
Definition at line 72 of file AIShip.hxx.
double FGAIShip::_limit |
Definition at line 77 of file AIShip.hxx.
double FGAIShip::_missed_count |
Definition at line 82 of file AIShip.hxx.
double FGAIShip::_missed_range = 0.0 |
Definition at line 79 of file AIShip.hxx.
bool FGAIShip::_new_waypoint |
Definition at line 71 of file AIShip.hxx.
double FGAIShip::_next_run |
Definition at line 83 of file AIShip.hxx.
bool FGAIShip::_restart |
Definition at line 73 of file AIShip.hxx.
double FGAIShip::_rudder_constant = 0.0 |
Definition at line 75 of file AIShip.hxx.
bool FGAIShip::_serviceable = false |
Definition at line 69 of file AIShip.hxx.
double FGAIShip::_speed_constant = 0.0 |
Definition at line 76 of file AIShip.hxx.
double FGAIShip::_tow_angle |
Definition at line 80 of file AIShip.hxx.
bool FGAIShip::_tunnel |
Definition at line 72 of file AIShip.hxx.
double FGAIShip::_wait_count = 0.0 |
Definition at line 81 of file AIShip.hxx.
bool FGAIShip::_waiting |
Definition at line 70 of file AIShip.hxx.
double FGAIShip::_wp_range |
Definition at line 82 of file AIShip.hxx.
FGAIWaypoint* FGAIShip::curr = nullptr |
Definition at line 86 of file AIShip.hxx.
FGAIWaypoint* FGAIShip::next = nullptr |
Definition at line 87 of file AIShip.hxx.
FGAIWaypoint* FGAIShip::prev = nullptr |
Definition at line 85 of file AIShip.hxx.