Commit Graph

323 Commits

Author SHA1 Message Date
dominik-korsa
5546601b67
Implement category application order 2025-07-12 19:07:45 +02:00
dominik-korsa
b137af2843
Don't mark route tracks as derailing tracks 2025-07-12 18:28:57 +02:00
dominik-korsa
3c3d4bf204
Store reference to otherTrack in TrackConnection 2025-07-12 18:19:55 +02:00
dominik-korsa
5eca3d4558
Change position of the route arrow 2025-07-12 17:13:19 +02:00
dominik-korsa
f9ef9de7ef
Do not render 0-length tracks 2025-07-12 17:07:40 +02:00
dominik-korsa
d6c0582c84
Remove track aliases 2025-07-12 16:58:33 +02:00
dominik-korsa
68f4504a4a
Update electrification resolution 2025-07-12 16:47:55 +02:00
dominik-korsa
60e2f1f8fa
Properly connect route tracks 2025-07-12 16:04:58 +02:00
dominik-korsa
e78c1ccde5
Add route track rendering 2025-07-12 15:36:13 +02:00
dominik-korsa
c4eac723ba
Add route parsing 2025-07-12 14:00:50 +02:00
dominik-korsa
32c39e189c
Merge remote-tracking branch 'upstream/main' into switch-tracks
# Conflicts:
#	src/model/defs/defined-switches.js
2025-07-12 13:34:51 +02:00
dominik-korsa
0b6514a6f8
Fix straight switch tracks 2025-07-12 13:19:54 +02:00
dominik-korsa
d93eae6985
Add slip switch prefab definitions 2025-07-12 13:14:02 +02:00
dominik-korsa
4342bb41e8
Add crossing prefab definitions 2025-07-12 10:48:06 +02:00
dominik-korsa
5d7cef846f
Run track connection test and resolve some errors 2025-07-12 02:02:53 +02:00
dominik-korsa
b79530ca71
Change purpose of TrackConnection 2025-07-12 01:19:55 +02:00
dominik-korsa
db273d2420
Change switch prefab definition format 2025-07-12 00:22:38 +02:00
izawartka
b3f0b1df74 Added W23 sign icon and def
+Added definition and icon for the W23 sign
2025-07-11 18:11:53 +02:00
izawartka
1f96889fc6 Added new switches definitions
+Added definitions for switches Rld 60E1-2500_250-1_8.5 R / L
2025-07-11 18:00:38 +02:00
izawartka
745d31e44a Added on-hover switches info
+TrackHoverInfoPopup now displays switch ID and model if the hovered track is part of a switch
*Fixed typo: renamed the "Switches names" layer to "Switch names"
2025-07-11 02:02:49 +02:00
izawartka
dfe90bfd2d Added isolations end markers
+Added isolation end markers rendering on the Isolations layer
*Renamed the “Isolations IDs” layer to “Isolations”
2025-07-11 01:28:41 +02:00
izawartka
2d5c0baba6 Added ElectificationResolver propagation queue
*ElectificationResolver now uses a propagation queue to handle propagations from all routes "simultaneously" and reduce conflicts propagation
2025-07-11 01:16:16 +02:00
izawartka
adb1a4078f Improved ElectrificationResolver
*Updated ElectrificationResolver to use the new tracks connections logic
*Improved ElectrificationResolver status propagation for switches
*Fixed an issue where ElectrificationResolver would sometimes overwrite tracks having the CONFLICT status
2025-07-11 01:12:49 +02:00
izawartka
db45de37b9 Added tracks connection logic
+Added connectTracks scenery parsing function that links Track objects together in the scenery model, including support for one‑to‑many connections (for switches)
2025-07-11 01:06:02 +02:00
izawartka
6ce9d75f28 Added map zoom bounds
+Added zoomMin and zoomMax Constants to restrict map zooming within defined bounds
2025-07-10 22:43:46 +02:00
izawartka
6be4503b93 Added Track start and end angle functions
+Added Track.getStartAngleXZ and .getEndAngleXZ function and implemented them in its child classes
2025-07-10 22:36:33 +02:00
izawartka
ccbc50054c Improved PointTrack calculations
*Improved PointTrack rotation calculations to include curved tracks
*Fixed PointTrack not having len property
*Fixed swaped arguments in Vector3.atanY
2025-07-10 22:30:40 +02:00
izawartka
930ff81f7c 1.3.1 Release tweaks
*Updated buildVersion to 1.3.1
2025-07-07 18:04:57 +02:00
izawartka
4db9fef68c Electrification resolution tweaks
+Added an option to disable electrification resolution conflicts propagation in Constants
*Tweaked non applied NEVP warning text
2025-07-07 18:03:14 +02:00
izawartka
7f908f24ab Improved switches aliases resolution
+Added an option to include additional aliases indexes in switches definitions
+Added additional aliases indexes for switches Rz 60E1-300-1_9 R / L and Rz 60E1-190-1_9 R / L
2025-07-07 18:01:40 +02:00
izawartka
479610aaaf Fixed negative slopes in TrackHoverInfo
*Made presented slope values absolute in the TrackHoverInfoPopup
2025-07-07 17:30:50 +02:00
izawartka
44b838dc1b Fixed Text components warnings
*Fixed AlwaysUpText and SimpleLabelText throwing warnings because off how props were passed. Now to set props of the inside text tag, you pass them as textProps
*Updated Object Renderers to use the new text props passing method
2025-07-07 17:29:35 +02:00
izawartka
55cbface5f 1.3.0 Release tweaks
*Updated buildVersion to 1.3.0
*Tweaked rotation sensitivity
*Updated README.md
2025-07-06 23:56:13 +02:00
izawartka
1e6cdf2bfb Auto labels rotation
+Added AlwaysUpText component that rotates text by 180 degrees if it is upside down (taking view rotation into account)
+Added SimpleLabelText component that always displays text horizontally relative to the view rotation
+Added mapRotationService which stores a subscribable view rotation value
*Refactored all ObjectRenderers to use the above components for object labels
2025-07-06 23:48:31 +02:00
izawartka
8db877c2e3 Added map rotation
+Added an option to rotate the map using ALT + mouse drag
2025-07-06 21:58:22 +02:00
izawartka
68c4a4bfa8 Refactored ZoomPanWrapper
*Refactored ZoomPanWrapper code to be cleaner and more efficient. It now uses refs instead of state and performs camera translation / zooming using transform svg attribute instead of changing the viewbox
2025-07-06 21:51:22 +02:00
izawartka
245d64b03a 1.2.1 Release tweaks
*Changed buildVersion to 1.2.1
*Updated README.md
2025-07-04 20:26:34 +02:00
izawartka
3b91ada3b1 New signalboxes defs
+Added definitions for signalboxes SignalBoxE_m and SignalBoxEmptyControlBase
2025-07-04 20:24:04 +02:00
izawartka
51f99d528f Extended signal renderer tweaks
*Cleaned up ExtendedSignalsHelper
*Moved extended signal signs height calculations to a separate function
*Fixed mechanical signals arms being rendered in a wrong position
2025-07-04 20:23:32 +02:00
izawartka
dd409b0533 Refactored SignalExtendedRenderer
*Split SignalExtendedRenderer into SignalExtendedRenderer (Components) and ExtendedSignalsHelper (Calculating points data etc.)
*Moved all the magic values from the SignalExtendedRenderer to ExtendedSignalsConstants
*Fixed some extended signals components having a fill while not needed
2025-07-04 19:42:15 +02:00
Igor Zawartka
12773a83ad
Merge pull request #2 from izawartka/extended-signals
Extended signals parsing and rendering
2025-07-03 17:07:12 +02:00
izawartka
fc498681b4 1.2.0 Release tweaks
*Tweaked buildVersion constant to 1.2.0
*Disabled attached signs logging
*Updated README.md
2025-07-03 17:05:15 +02:00
izawartka
96e8cd1eef Extended signal label position tweak
*Overhead signals in Extended signal rendering mode have now, just like standard signals, their labels rendered "below" them
*Cleaned up SignalExtendedRenderer's code a bit
2025-07-03 16:57:10 +02:00
izawartka
b54ce79888 Extended signal renderer and parser bugfixes
*Fixed mechanical distant signals not having the W1 sign
*Fixed useless ";" appearing in the SVG code of signal signs
*Fixed signal signs overlapping with mechanical signals' arms
2025-07-03 16:31:05 +02:00
izawartka
d5ff1a61e7 Added W21 signal sign def
+Added definitions and icons for two variants of the W21 signal sign: standard and LED
2025-07-03 16:29:28 +02:00
izawartka
920de35b60 Added extended signal signs text option
+Extended signal renderering: Signs mounted on signals can now have displayed text over them (i.e. W21 sign). During the parsing, the text string is extracted from the sign name using regex from the sign's def
2025-07-03 16:27:25 +02:00
izawartka
ce375cb7e2 Extended signals bugfixes
*Fixed double dwarf signals not being parsed correctly
*Flipped no signal unit icon in horizontal axis
2025-07-01 21:20:16 +02:00
izawartka
6fb032a70f Mechanical signals rendering
+Added support for mechanical signals in extended signals rendering mode
2025-07-01 21:18:37 +02:00
izawartka
e0149037cf Mechanical signals extended parser
+Added extended parser for mechanical signals
+Added SinalElementsEnums.Type.Mechanical
+Added SignalElements.mechType field and SignalElementsEnums.MechType enum
+Added SignalElements.isMechanical()
2025-07-01 21:17:16 +02:00
izawartka
b72dbe8f9a Signal signs rendering order and custom height
*Signal signs can now have custom height and will still be rendered with proper spacing
*Order of signs rendered on signal's pole is now defined by the order in the DefinedSignalSigns dictionary
2025-06-30 21:11:41 +02:00