public GSIWord(GSIWI wi, double data) { // 1: entered manually (GSIDataFlag.EnteredManually) // 0: metre, last place 1mm (GSIUnits.Metre1mm) this.Info = 10; this.WI = wi; this.Sign = data >= 0; this.DataValue = data; this.Data = Math.Abs(data * 1000).ToString("0"); InitText(); }
/* * The flags at positions 5 to 6 in the data word are used for additional information. Example with a GSI-16 data word: Position: 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 . . . . . . ± n n n n n n n n n n n n n n n n × Position 1-3: Word index. Position 4: empty, marked as dot (.) Position 5: Information about the measurement and earth-curvature correction. 0 = measured; without earth-curvature correction. 1 = entered manually; without earth-curvature correction. 2 = measured; with earth-curvature correction. 5 = entered manually; with earth-curvature correction. Position 6: Units and decimal places. Note: The data is stored in the unit and resolution that is defined by the "Unit" and "Decimal" settings on the instrument during data export. 6 = metre, last place 0.1mm. 1 = foot, last place 0.001ft. 0 = metre, last place 1mm. 7 = foot, last place 0.0001ft (only DNA03). 8 = metre, last place 0.01mm (only DNA03). Position 7-15: Measurement data (n) Position 16: Space character, ASCII-Code 32(×) * */ public GSIWord(GSIWI wi, int info, string data) { this.WI = wi; this.Info = info; this.Sign = true; this.DataValue = double.NaN; this.Data = data ?? ""; InitText(); }