Tyler Trahan
646a7e625b
Change: Use seconds for Linkgraph update settings ( #10610 )
2023-04-14 22:49:12 +02:00
Jonathan G Rennison
82803b98e0
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/game/game_gui.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.h
# src/newgrf.cpp
# src/order_gui.cpp
# src/saveload/engine_sl.cpp
# src/saveload/saveload.h
# src/script/api/script_text.cpp
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/strings.cpp
# src/table/settings/economy_settings.ini
# src/table/settings/locale_settings.ini
# src/timetable_gui.cpp
2023-04-10 15:11:53 +01:00
Peter Nelson
5199881a8d
Codechange: Use correct type for linkgraph company mask.
2023-04-07 22:09:55 +01:00
PeterN
c1077212d7
Codechange: Use a shared_ptr for viewport overlay. ( #10586 )
2023-03-31 16:06:36 +01:00
Jonathan G Rennison
87f4d37de3
Fix #10522 : Link graph line tooltip test for vertical lines ( #10524 )
2023-03-03 17:37:17 -05:00
Jonathan G Rennison
467b20f5e2
Link graph: Fix tooltips with vertical link graph lines
...
See: https://github.com/OpenTTD/OpenTTD/issues/10522
2023-02-28 18:59:48 +00:00
Michael Lutz
aab580e0ac
Codechange: [Linkgraph] Drop node/edge wrappers from LinkGraph.
2023-02-26 21:41:24 +01:00
Michael Lutz
4d3da0cf14
Codechange: [Linkgraph] Drop node/edge wrappers from LinkGraphJob.
2023-02-26 21:41:24 +01:00
Michael Lutz
7352f812e6
Codechange: [Linkgraph] Only store present link graph edges and not all possible edges.
2023-02-26 21:41:24 +01:00
Michael Lutz
8f851ead70
Codechange: [Linkgraph] Split annotation for demand between nodes from the edge annotations.
2023-02-26 21:41:24 +01:00
Michael Lutz
fe27db3dfd
Codechange: [Linkgraph] Store edges in each node and not in a global matrix.
2023-02-26 21:41:24 +01:00
Jonathan G Rennison
8d6e57799c
Fix various possible integer type conversion issues
2023-02-15 23:05:03 +00:00
Jonathan G Rennison
ff0e779680
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/czech.txt
# src/order_backup.h
# src/settings_internal.h
# src/string.cpp
# src/viewport.cpp
2023-02-04 11:37:45 +00:00
Jonathan G Rennison
98d7ba8b9d
Linkgraph: Early exit demand allocator in DT_MANUAL mode
2023-01-28 20:36:38 +00:00
Rubidium
00721787e1
Fix: wrong type for INVALID_LINK_GRAPH_JOB
2023-01-27 07:05:49 +01:00
Rubidium
fe2bcd2a58
Codechange: migrate size related functions to Map structure
2023-01-21 17:11:40 +01:00
Jonathan G Rennison
1bfd96c7f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/3rdparty/fmt/core.h
# src/command_type.h
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/landscape.cpp
# src/network/network.cpp
# src/newgrf_object.h
# src/object_cmd.cpp
# src/order_gui.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_industrytype.cpp
# src/script/api/script_object.hpp
# src/script/api/script_town.cpp
# src/table/object_land.h
# src/timetable_cmd.cpp
# src/tree_cmd.cpp
# src/vehicle_gui.cpp
# src/window.cpp
2023-01-15 19:28:37 +00:00
Rubidium
bcfe0fb076
Codechange: introduce GetMainWindow() to properly account for nullptr checks
...
Some nullptr checks have been removed as they were not triggered with nullptr
with the null video driver and in dedicated server mode.
2023-01-14 21:15:23 +01:00
Jonathan G Rennison
8f123589ec
Linkgraph: Use sparse storage format for edge annotations
...
Copy relevant parts of base edge into edge annotation
2023-01-05 20:15:50 +00:00
Jonathan G Rennison
55473bc730
Linkgraph: Split demand annotations from edge flow annotations
...
Use sparse storage format for demand annotations
2023-01-05 02:48:07 +00:00
Jonathan G Rennison
760cbcbb8b
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.hpp
# src/blitter/null.hpp
# src/cheat_gui.cpp
# src/gfx.cpp
# src/linkgraph/linkgraph.cpp
# src/spriteloader/grf.cpp
# src/station_cmd.cpp
2023-01-03 11:40:02 +00:00
Patric Stout
1fb101eabb
Codechange: address CodeQL issue "Multiplication result converted to larger type" ( #10306 )
...
Most are very unlikely to ever be triggered in our codebase; two
stand out: linkgraph and money cheat. Those, potentially, could
wrap earlier than expected.
2023-01-02 20:30:02 +00:00
Jonathan G Rennison
a72d99821a
Fix crash on hovering link graph link where both ends have same position
...
See: #468
2022-12-27 19:46:32 +00:00
Jonathan G Rennison
d7f9ffd646
Show more info in linkgraph overlay tooltip if ctrl pressed
2022-12-11 13:07:09 +00:00
Jonathan G Rennison
599b016c91
Adjust link graph edge travel time updates in refresh mode
2022-12-11 00:56:50 +00:00
Jonathan G Rennison
5c2d5782a4
Fixes incorrect link graph edge travel times with non-unity day length
...
Change vehicle last_loading_tick to be relative to _scaled_tick_counter
2022-12-11 00:27:18 +00:00
Jonathan G Rennison
24b3e70494
Linkgraph: Reduce job duration multipliers
...
Change to linear: size / 75
Remove knee in curve
2022-12-07 02:50:19 +00:00
Jonathan G Rennison
ad815210ae
Linkgraph: Dynamically adjust accuracy parameters in MCF 1st pass
...
For larger graphs (>= 50 nodes), reduce the accuracy and set a
minimum push flow threshold.
This avoids wasting a lot of time calculating very small flow demand
increments when the total number of demands is high and most demands
are small already.
2022-12-07 02:24:17 +00:00
Jonathan G Rennison
e647075870
Change LinkGraph::EdgeMatrix to a sparse storage format
...
Use a btree_map instead of a SmallMatrix.
This avoids excessive storage requirements for large graphs,
and overly expensive edge matrix resize operations.
Remove next_edge iteration mechanism.
2022-12-05 18:17:25 +00:00
Jonathan G Rennison
6d4474b84e
Merge tag '13.0-beta2' into jgrpp
...
# Conflicts:
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/console_gui.cpp
# src/depot_gui.cpp
# src/error_gui.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/korean.txt
# src/lang/polish.txt
# src/misc_gui.cpp
# src/network/network_content_gui.h
# src/newgrf_debug_gui.cpp
# src/order_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/station_gui.cpp
# src/subsidy_gui.cpp
# src/table/settings/gui_settings.ini
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_cmd.cpp
# src/vehicle_gui.cpp
# src/viewport.cpp
# src/water_cmd.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2022-12-04 20:43:11 +00:00
Jonathan G Rennison
02e19521bc
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/error_gui.cpp
# src/fios_gui.cpp
# src/gfx_func.h
# src/graph_gui.cpp
# src/group_gui.cpp
# src/misc_gui.cpp
# src/newgrf_debug_gui.cpp
# src/order_gui.cpp
# src/road_gui.cpp
# src/roadveh_gui.cpp
# src/settings_gui.cpp
# src/ship_gui.cpp
# src/station_gui.cpp
# src/statusbar_gui.cpp
# src/subsidy_gui.cpp
# src/timetable_gui.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/tree_gui.cpp
# src/vehicle_gui.cpp
# src/widget.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2022-12-04 13:53:44 +00:00
Jonathan G Rennison
5bbf1f5375
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/geometry_type.hpp
# src/error_gui.cpp
# src/rail_gui.cpp
# src/tree_gui.cpp
# src/vehicle_gui.cpp
# src/widgets/dropdown.cpp
2022-12-03 23:40:37 +00:00
Peter Nelson
eb4ba1991b
Change: Use CenterBounds function in more places.
...
CenterBounds may have a 1 pixel difference so the result is not exactly
the same.
2022-11-12 18:28:39 +00:00
Peter Nelson
890b2666d3
Change: Use scaled WidgetDimensions.
2022-11-12 18:28:39 +00:00
Peter Nelson
b6ed595176
Codechange: Prefer suggested widget padding.
2022-11-12 18:28:39 +00:00
Peter Nelson
6f95e04005
Change: Use Rect helpers for widget drawing.
...
This replaces repetitive and sometimes unwieldy use of constants.
2022-11-12 18:28:39 +00:00
Jonathan G Rennison
8c2dd8d7fb
Fix handling of LinkGraphOverlay dirty flag
2022-11-10 23:40:13 +00:00
Jonathan G Rennison
2f4f862480
Viewport: Do bounding boxes and link graph/route overlays in threaded part
2022-11-10 20:48:43 +00:00
Jonathan G Rennison
e931f3061f
Fix: Dereference of past-the-end iterator in linkgraph overlay tooltip ( #10145 )
2022-11-07 00:16:38 +01:00
Jonathan G Rennison
b14e213bd9
Add average travel time to the link graph overlay tooltip
2022-11-06 21:55:14 +00:00
Jonathan G Rennison
0bf1c9bb9d
Merge tag '13.0-beta1' into jgrpp
2022-11-05 19:12:42 +00:00
Nicolas Chappe
a43a1902bb
Feature: [Linkgraph] Prioritize faster routes for passengers, mail and express cargo
...
Passengers usually prefer fast paths to short paths.
Average travel times of links are updated in real-time for use in Dijkstra's algorithm,
and newer travel times weigh more, just like capacities.
(cherry picked from commit 977604ef08
)
2022-11-05 19:07:35 +00:00
Nicolas Chappe
8bf56f39f2
Fix #9708 : [Linkgraph] Don't assume vehicles have a non-zero max speed
2022-10-29 18:39:03 +02:00
Nicolas Chappe
c5369caa45
Fix: [Linkgraph] possible rounding errors for travel times of low-capacity links
2022-10-29 18:39:03 +02:00
Nicolas Chappe
25b3ff6423
Cleanup: simplify LinkRefresher::RefreshStats
2022-10-29 18:39:03 +02:00
Jonathan G Rennison
4c01fe2e7f
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/russian.txt
# src/linkgraph/linkgraph_gui.cpp
# src/news_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
2022-10-19 18:35:35 +01:00
Nicolas Chappe
864771ca09
Feature: [Linkgraph] Show a tooltip with statistics when hovering a link
2022-10-18 22:03:39 +02:00
Jonathan G Rennison
0a9c44d1a2
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/airport_gui.cpp
# src/blitter/32bpp_anim_sse4.cpp
# src/console_cmds.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/newgrf_object.h
# src/road_gui.cpp
# src/widgets/road_widget.h
# src/window.cpp
2022-10-16 20:14:13 +01:00
Bouke Haarsma
c7f55a058b
Fix: link overlay line width on HiDPI displays ( #10064 )
2022-10-04 11:58:58 +02:00
Jonathan G Rennison
7a61b5d820
VarAction2: Cache refit capacity callback results which depend only on cargo
2022-06-06 18:34:30 +01:00