2. These are tool geometry (length and diameter). There will be more offsets available than tools. There will come an occasion when for what ever reason, two offsets will be applied to the same tool. For example, the top and bottom face of a Side and Face cutter, slitting saw etc.
3. These are Work Offsets and are called in the program by G54(1) through to G59(6). They are used to set the Zero point in X,Y, and Z of the workpiece.
4. H offsets are used for tool length, and D offsets are used for tool radius offsets, used in cutter radius compensation. Many machines only had one set of offsets and H and D values had to come out of that one registry.
Its good practice to use an offset number the same as the tool number for the H command in the program when applying the tool length offset. On machines that only have one offset registry, that is, no separate H and D registry, I try and use an offset number that has some significance to the tool number for the D offset if its used. Lets say that T02 is being used, and cutter rad comp will be applied. The H offset would be H02, then I would use an offset well above the maximum tool capacity of the machine for the D offset. Lest say the max number of tools is 30, I would start at 51 for the D offset for T01 and in the case of this example, D52 for T02. Controls with both H and D offset registries, you just use H1, D1 etc for length and radius offsets for each tool.