necst_msgs.msg.ScanBlockSectionA single control section in a continuous scan block.
All angular quantities are interpreted in the section's frame and in the
unit given by the parent ScanBlockCommand request.
The section sequence itself encodes the geometric block shape. The service request provides the shared target/name/offset context, while each section provides the relative path piece to execute.
start and stop are two-component vectors [lon, lat] in the section
frame. Their meaning depends on kind:
- LINE: start and stop of the constant-speed data-taking segment.
- ACCELERATE / DECELERATE: start and stop of the ramp segment.
- TURN: entry and exit point of the turn segment.
- FIRST_STANDBY / FINAL_STANDBY / MOVE_TO_ENTRY: holding point. In these
cases start and stop should usually be identical.
tight is the intended recording gate for this section. Initial design:
only LINE sections use tight=true.
uint8) -- =0uint8) -- =1uint8) -- =2uint8) -- =3uint8) -- =4uint8) -- =5uint8) -- =6uint8) -- Section kind. Use one of the constants above.bool) -- Intended recording gate for this section.string<=64) -- Optional human-readable label, e.g. "line-01".int32) -- Line number for metadata / logging. -1 if N/A.float64[2]) -- [lon, lat] start point in frame / parent unit.float64[2]) -- [lon, lat] stop point in frame / parent unit.string) -- Coordinate frame for start/stop.float64) -- Section speed in parent unit/s. 0 for pure hold.float64) -- Section-local margin in parent unit. 0 if unused.float64) -- Optional hint [s]. 0 means "derive from geometry".float64) -- Optional turn-radius hint in parent unit.uint8 MOVE_TO_ENTRY
uint8 FIRST_STANDBY
uint8 ACCELERATE
uint8 LINE
uint8 TURN
uint8 DECELERATE
uint8 FINAL_STANDBY
uint8 kind
bool tight
string<=64 label
int32 line_index
float64[2] start
float64[2] stop
string frame
float64 speed
float64 margin
float64 duration_hint
float64 turn_radius_hint