Tracks and parts
From version V3.2.60: The Part feature, which is the subject of this section, is available.
Tracks can be used together with parts, but there are a few special features to bear in mind:
- A track is always permanently assigned to a single part. This is done via the initial parameter "PartOID".
- The track must be geometrically complete on the corresponding part.
- The track has a fixed static geometry relative to its part. So if the position of his part changes, the position of the track changes accordingly.
- If more than one part exists in the configuration, the initial parameter "PartOID" must be specified, otherwise (each) track is automatically assigned to the only part.
- Tracks on the same part can be easily connected. The start and end of each track can only be connected to another track once. This means that StartFromTrack and EndAtTrack can be successfully called up a maximum of once per track.
- Tracks on different parts can only be connected if the connection between them lies exactly on the boundary of both parts. This means that the start or end of one of the two tracks must already be on the part boundary so that the other can be connected. This connection can only be crossed if both parts are at this point. If one of the parts is moved to a different position, the connection can no longer be crossed (like any open end of a track). In this case, however, both tracks can be connected to other tracks on other parts in other positions.
To close all these different connections between tracks, the methods StartFromTrack and EndAtTrack can be called more than once for each track. |
In this example, parts 1 and 2 are static. Part 3 has 2 positions, so that it is connected once to part 1 and once to part 2. Once tracks 1 and 2 have been defined on parts 1 and 2, track 3 on part 3 can be connected to both. Depending on the direction of the tracks, either track 3 must be connected to positions 1 and 2 (or tracks 1 and 2) with two StartFromTrack calls or with two EndAtTrack calls. The first call defines the geometry and a logical connection of the start or end of track 3, while the second call only defines a logical connection and only assumes (and checks) that the geometric connection is suitable.
In this example, part 1 is static and part 3 has 2 positions so that it touches part 1 at different points. After track 3 is defined, it is unclear how to interpret a EndAtTrack from track 1 to track 3. Should track 1 be geometrically connected to track 3 in the upper or lower configuration? This can be realized with the new methods EndAtTrackAdvanced and StartFromTrackAdvanced. The exact position of the two parts of the tracks involved is specified in order to connect the tracks in this configuration.