Adjusted for production build
*Fixed assets paths not taking %PUBLIC_URL% into account *Updated README.md -Removed redundant leaflet leftovers in index.html
This commit is contained in:
parent
5012de4d74
commit
886da1be1a
15
README.md
15
README.md
@ -1,12 +1,17 @@
|
|||||||
# td2-visualizer
|
# td2-visualizer
|
||||||
|
|
||||||
Narzędzie do przeglądania scenerii Train Driver 2 w przeglądarce.
|
Narzędzie do przeglądania plików scenerii symulatora Train Driver 2 (.SC) w przeglądarce. Umożliwia szybkie podejrzenie układu torowego dowolnej scenerii, jej szlaków zewnętrzych, semaforów, wskaźników, spawnów, numerów rozjazdów i wiele więcej
|
||||||
Przed załadowaniem pliku scenerii, najpierw przekonwertuj go do lżejszego formatu używając skryptu `tools/scp.py`.
|
|
||||||
|
|
||||||
A tool for viewing Train Driver 2 scenery files in the browser.
|
A tool for viewing Train Driver 2 simulator scenery files (.SC) in the browser. It allows for quick lookup of the track layout of any scenery, its external routes, signals, signs, spawns, switch numbers, and much more
|
||||||
Before loading a scenery file, make sure to first convert it to lightweight format using `tools/scp.py` script.
|
|
||||||
|
|
||||||
WIP
|
#
|
||||||
|
|
||||||
|
## Online demo
|
||||||
|
|
||||||
|
Wersja online może nie zawsze być aktualna<br>
|
||||||
|
The online version may not always be up to date
|
||||||
|
|
||||||
|
https://maseuko.pl/soft/td2-visualizer-2/
|
||||||
|
|
||||||
## Author
|
## Author
|
||||||
|
|
||||||
|
|||||||
@ -5,13 +5,7 @@
|
|||||||
<link rel="icon" href="%PUBLIC_URL%/favicon.png" />
|
<link rel="icon" href="%PUBLIC_URL%/favicon.png" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<meta name="theme-color" content="#000000" />
|
<meta name="theme-color" content="#000000" />
|
||||||
<title>Visualizer2</title>
|
<title>TD2 Visualizer</title>
|
||||||
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"
|
|
||||||
integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="
|
|
||||||
crossorigin=""/>
|
|
||||||
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"
|
|
||||||
integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo="
|
|
||||||
crossorigin=""></script>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<noscript>You need to enable JavaScript to run this app.</noscript>
|
<noscript>You need to enable JavaScript to run this app.</noscript>
|
||||||
|
|||||||
@ -16,7 +16,7 @@ export default function RouteRenderer(props) {
|
|||||||
<g className="route" transform={`translate(${x}, ${y}) rotate(${object.rot.y})`}>
|
<g className="route" transform={`translate(${x}, ${y}) rotate(${object.rot.y})`}>
|
||||||
<g transform={`rotate(90) translate(-80, ${arrowOffset})`}>
|
<g transform={`rotate(90) translate(-80, ${arrowOffset})`}>
|
||||||
<ReactSVG
|
<ReactSVG
|
||||||
src="/assets/route.svg"
|
src={`${process.env.PUBLIC_URL}/assets/route.svg`}
|
||||||
wrapper='svg'
|
wrapper='svg'
|
||||||
beforeInjection={(svg) => {
|
beforeInjection={(svg) => {
|
||||||
svg.setAttribute('width', '20mm');
|
svg.setAttribute('width', '20mm');
|
||||||
|
|||||||
@ -15,7 +15,7 @@ export default function SignRenderer(props) {
|
|||||||
return (
|
return (
|
||||||
<g className="sign" transform={`translate(${x}, ${y}) rotate(${rot}) translate(${offX}, ${offY})`}>
|
<g className="sign" transform={`translate(${x}, ${y}) rotate(${rot}) translate(${offX}, ${offY})`}>
|
||||||
<ReactSVG
|
<ReactSVG
|
||||||
src={`/assets/signs/${object.def.icon}`}
|
src={`${process.env.PUBLIC_URL}/assets/signs/${object.def.icon}`}
|
||||||
wrapper='svg'
|
wrapper='svg'
|
||||||
|
|
||||||
beforeInjection={(svg) => {
|
beforeInjection={(svg) => {
|
||||||
|
|||||||
@ -15,7 +15,7 @@ export default function SignalBoxRenderer(props) {
|
|||||||
<g className="signalbox" transform={`translate(${x}, ${y}) rotate(${rot}) `}>
|
<g className="signalbox" transform={`translate(${x}, ${y}) rotate(${rot}) `}>
|
||||||
<g className="signalbox-icon" transform={`translate(-4.725, -4.725)`}>
|
<g className="signalbox-icon" transform={`translate(-4.725, -4.725)`}>
|
||||||
<ReactSVG
|
<ReactSVG
|
||||||
src={`/assets/signalboxes/${object.def.icon}`}
|
src={`${process.env.PUBLIC_URL}/assets/signalboxes/${object.def.icon}`}
|
||||||
wrapper='svg'
|
wrapper='svg'
|
||||||
|
|
||||||
beforeInjection={(svg) => {
|
beforeInjection={(svg) => {
|
||||||
|
|||||||
@ -14,7 +14,7 @@ export default function SignalRenderer(props) {
|
|||||||
<g className="signal" transform={`translate(${x}, ${y}) rotate(${object.rot.y}) `}>
|
<g className="signal" transform={`translate(${x}, ${y}) rotate(${object.rot.y}) `}>
|
||||||
<g className="signal-icon" transform={`translate(-1.89, -1.89)`}>
|
<g className="signal-icon" transform={`translate(-1.89, -1.89)`}>
|
||||||
<ReactSVG
|
<ReactSVG
|
||||||
src="/assets/signal.svg"
|
src={`${process.env.PUBLIC_URL}/assets/signal.svg`}
|
||||||
wrapper='svg'
|
wrapper='svg'
|
||||||
|
|
||||||
beforeInjection={(svg) => {
|
beforeInjection={(svg) => {
|
||||||
|
|||||||
@ -13,7 +13,7 @@ export default function SideMenuToggle() {
|
|||||||
<div className='side-menu-toggle'>
|
<div className='side-menu-toggle'>
|
||||||
<button onClick={toggleSideMenu} className='invis-button'>
|
<button onClick={toggleSideMenu} className='invis-button'>
|
||||||
<ReactSVG
|
<ReactSVG
|
||||||
src="/assets/side-menu.svg"
|
src={`${process.env.PUBLIC_URL}/assets/side-menu.svg`}
|
||||||
/>
|
/>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user