Definition of a spatial object. Spatial object determines the position of the agent, food items and other things in the simulated space. Here we use continuous 3D environment (real type coordinates)
More...
|
procedure, public | create => spatial_create_empty |
| Create an empty spatial object. More...
|
|
procedure, public | position => spatial_fix_position_3d_o |
| Place spatial object into a 3D space, define the object's current coordinates. Object-based procedure. See the_environment::spatial_fix_position_3d_o() More...
|
|
procedure, public | position_v => spatial_fix_position_3d_s |
| Place spatial object into a 3D space, define the object's current coordinates. Vector-based procedure. See the_environment::spatial_fix_position_3d_s() More...
|
|
procedure, public | missing => spatial_make_missing |
| Assign all MISSING coordinates to the SPATIAL object. See the_environment::spatial_make_missing() More...
|
|
procedure, public | distance => spatial_distance_3d |
| Calculate the Euclidean distance between two spatial objects. See the_environment::spatial_distance_3d() More...
|
|
procedure, public | distance_segment2d => geo_poly2d_dist_point_to_section |
| Calculates the minimum distance from a the_environment::spatial class object to a line segment delimited by two the_environment::spatial endpoints in the 2D XY plane (the depth coordinate is ignored). See the_environment::geo_poly2d_dist_point_to_section() . More...
|
|
procedure, public | distance_segment => geo_poly3d_dist_point_to_section |
| Calculates the minimum distance from a the_environment::spatial class object to a line segment delimited by two the_environment::spatial class endpoints in the 3D XY space. See the_environment::geo_poly3d_dist_point_to_section() . More...
|
|
procedure, public | way => spatial_self_distance_3d |
| Calculate the Euclidean distance between the current and previous position of a single spatial object. See the_environment::spatial_self_distance_3d() More...
|
|
procedure, public | is_within => spatial_check_located_within_3d |
| Function to check if this spatial object is located within an area set by an environmental object See the_environment::spatial_check_located_within_3d() More...
|
|
procedure, public | find_environment => spatial_get_environment_in_pos |
| Identify in which environment from the input list this spatial agent is currently in. See the_environment::spatial_get_environment_in_pos() . More...
|
|
procedure, public | is_below => spatial_check_located_below |
| Logical function to check if the argument spatial object(s) is(are) located below this spatial object. See the_environment::spatial_check_located_below() More...
|
|
procedure, public | is_above => spatial_check_located_above |
| Logical function to check if the argument spatial object(s) is(are) located above this spatial object. See the_environment::spatial_check_located_above() More...
|
|
procedure, public | nearest => spatial_get_nearest_object |
| Determine the nearest spatial object to this spatial object among an array of other spatial objects. See the_environment::spatial_get_nearest_object() More...
|
|
procedure, public | nearest_num => spatial_get_nearest_id |
| Determine the nearest spatial object to this spatial object among an array of other spatial objects. See the_environment::spatial_get_nearest_id() More...
|
|
procedure, public | neighbours => spatial_neighbours_distances |
| Calculate the distances between this spatial object and an array of its neighbours. Optionally output the distances, sorting index vector and rankings vector for each of these neighbours. Optionally do only partial indexing, up to the order rank_max for computational speed. See the_environment::spatial_neighbours_distances() More...
|
|
procedure, public | now_o => spatial_get_current_pos_3d_o |
| Get the current spatial position of a SPATIAL object. Object-based. See the_environment::spatial_get_current_pos_3d_o() More...
|
|
procedure, public | now_v => spatial_get_current_pos_3d_v |
| Get the current spatial position of a SPATIAL object. Vector-based. See the_environment::spatial_get_current_pos_3d_v() More...
|
|
generic, public | location => now_o, now_v |
| Get the current spatial position of a SPATIAL object. Generic interface/alias. More...
|
|
generic, public | now => now_o, now_v |
| Get the current spatial position of a SPATIAL object. Generic interface/alias. More...
|
|
procedure, public | xpos => spatial_get_current_pos_x_3d |
| Get the current X position of a SPATIAL object. See the_environment::spatial_get_current_pos_x_3d() More...
|
|
procedure, public | ypos => spatial_get_current_pos_y_3d |
| Get the current Y position of a SPATIAL object. See the_environment::spatial_get_current_pos_y_3d() More...
|
|
procedure, public | dpos => spatial_get_current_pos_d_3d |
| Get the current Z (depth) position of a SPATIAL object. See the_environment::spatial_get_current_pos_d_3d() More...
|
|
procedure, public | illumination => spatial_calc_irradiance_at_depth |
| Calculate the illumination (background irradiance) at the depth of the spatial object at an arbitrary time step of the model. See the_environment::spatial_calc_irradiance_at_depth() More...
|
|
procedure, public | visibility => spatial_visibility_visual_range_cm |
| Calculate the visibility range of a spatial object. Wrapper to the visual_range function. This function calculates the distance from which this object can be seen by a visual object (e.g. predator or prey). See the_environment::spatial_visibility_visual_range_cm() . More...
|
|
Definition of a spatial object. Spatial object determines the position of the agent, food items and other things in the simulated space. Here we use continuous 3D environment (real type coordinates)
- Note
- IMPORTANT: We will use position method to set location of a spatial object and location method to get its location.
-
We use
position_v
method to set define spatial position using raw 3D coordinates, x, y, z – it lacks extensibility – for convenience only.
- Warning
- Note that we do not set ID at the elementary
SPATIAL
objects. This is done to make type constructor SPATIAL(x, y, z)
(that is used frequently in different places) shorter and easier to use. We do not need to include an ID then. IDs are set at higher levels in the object hierarchy, e.g. FOOD_ITEM
has food_iid
integer data component.
Definition at line 50 of file m_env.f90.