Files
JIMRI/help/en/html/tools/Blocks.shtml
T
2026-06-17 14:00:51 +02:00

88 lines
4.3 KiB
Plaintext

<!DOCTYPE html>
<html lang="en">
<head>
<meta name="generator" content="HTML Tidy for HTML5 for Apple macOS version 5.8.0">
<title>JMRI: Blocks Documentation</title>
<meta name="author" content="Bob Jacobsen">
<meta name="keywords" content="layout java model railroad JMRI tools dcc">
<!--#include virtual="/help/en/parts/Style.shtml" -->
</head>
<body>
<!--#include virtual="/help/en/parts/Header.shtml" -->
<div id="mBody">
<!--#include virtual="Sidebar.shtml" -->
<div id="mainContent">
<h1>JMRI: Blocks Documentation</h1>
<h2>What are Blocks?</h2>
<p>Blocks are sections of track whose occupancy may be individually monitored. Dividing track
into Blocks is optional. Blocks set up in a track diagram normally correspond to physical
blocks on a layout. Block occupancy is indicated by the state of an occupancy <a href=
"Sensors.shtml">Sensor</a>. When a layout's track is divided into Blocks, all of the track
need not belong to a Block. For example, yard track may not be in a Block, whereas mainline
track almost always would be divided into Blocks. The main use of Blocks is to facilitate
Signaling, but Blocks may be used for other layout control and animation functions.</p>
<h2>How to setup Blocks</h2>
<h3>Block Properties</h3>
<p>Blocks may be set up manually from the Block Table, using a script or automatically in a
Layout Editor Panel. When a Block is defined on a Layout Editor Panel, a new Block is created
if one does not already exist. In Layout Editor, Blocks are identified by their User Names.
Before renaming or deleting a block user name, a check is made to see if the user name is
used by a Layout Editor panel. If so, a warning is displayed. For renames, if <strong>Yes</strong>
is selected, the panel references will also be renamed.</p>
<p>To complete the definition of a Block, Paths and Bean Settings must be attached to each
Block. Paths describe entry points to the Block. Each Block has one or more Paths associated
with it. Sometimes a Turnout must be set a certain way to use a Path; Bean Settings carry
that information. Paths and Bean Settings are set up automatically for Blocks defined in a
Layout Editor Panel. They can also be set up in a script. There is currently no way to
manually enter Paths or Bean Settings. Paths and Bean Settings are not shown in the Block
Table, and are described here only for completeness. Paths may however be deleted using the
<strong><a href="../../package/jmri/jmrit/beantable/BlockTable.shtml#block_path_menu">Paths</a></strong> menu.</p>
<h3>The Block Table</h3>
<p>Blocks are created and edited in the <a href=
"../../package/jmri/jmrit/beantable/BlockTable.shtml">Block Table</a>.</p>
<p>For use in automatically running Trains, a Length attribute and a Curvature attribute may
optionally be assigned to a Block. These optional attributes are entered manually in this
table. If Trains will not be run automatically through a Block, there is no need to add these
attributes.</p>
<h4>Block Table controls</h4>
<ul>
<li>Below the Block Table you'll find the <a href=
"../../package/jmri/jmrit/beantable/BlockAddEdit.shtml">Add...</a> button to add new
Blocks.
</li>
<li><a href="../../package/jmri/jmrit/beantable/BlockTable.shtml#block_table_menus">Block
Table Menus</a>.
</li>
</ul>
<h3 id="addBlock">Saving Blocks to disk</h3>
<p>Blocks are kept in your <em>layout configuration</em>, along with Turnouts, Sensors,
Signal Heads, control panel setup etc. To store this information on disk, allowing you to
<a href="../../package/jmri/jmrit/display/PanelMenuHelp.shtml">reload it</a> next time you
run JMRI, see <a href="../apps/LoadStoreWork.shtml">Loading and Storing Your Work</a>. Note
that the occupied/unoccupied state of each Block is not saved in the configuration file. When
Blocks are loaded from a configuration file, their status is read from the Sensors.</p>
<!--#include virtual="/help/en/parts/Footer.shtml" -->
</div>
<!-- closes #mainContent-->
</div>
<!-- closes #mBody-->
<script src="/js/help.js"></script>
</body>
</html>