示例#1
0
 if isinstance(ts.GetMeasureUnit(), LeicaTPS1200):
     p = GetInt("Prism number (-1 for none) ", p)
     if p >= 0:
         ts.SetPrismType(p)
     else:
         pc = -99
     atr = 0 if p == 2 else 1
 else:
     pc = GetFloat("Prism constant [mm] (-99 for none) ",
                   pc * 1000) / 1000.0
     if pc > -99:
         ts.SetPc(pc)
         #pc = -99
     atr = 0 if pc == 0.00344 else 1
 print(ts.GetPc())
 ts.SetATR(atr)
 raw_input("Target on prism and press enter")
 if atr:
     res = ts.MoveRel(Angle(0), Angle(0), atr)
     if 'errorCode' in res or ts.measureIface.state != ts.measureIface.IF_OK:
         print("Cannot target on prism")
         ts.measureIface.state = ts.measureIface.IF_OK
         continue
 res = ts.Measure()
 obs = ts.GetMeasure()
 obs['id'] = t_id
 geo_wrt.WriteData(obs)
 coo = ts.Coords()
 coo['id'] = t_id
 if pc > -99:
     coo['pc'] = pc
示例#2
0
            filt=['id', 'hz', 'v', 'distance', 'east', 'north', 'elev'],
            fname=sys.argv[5],
            mode='a',
            sep=';')
    else:
        wrt = EchoWriter()

    ts = TotalStation("Leica", mu, iface)
    slopeDist = 0
    if edm not in mu.edmModes:
        edm = 'FAST'
    ts.SetEDMMode(edm)
    # initialize instrument and variables
    if mode > 0:
        ts.SetLock(0)
        ts.SetATR(1)
        ts.MoveRel(Angle(0), Angle(0), 1)
        ts.Measure()
        measurement = ts.GetMeasure()
        if 'distance' in measurement:
            slopeDist = measurement['distance']

        if mode in (3, 4, 5):
            ts.SetLock(1)
            ts.LockIn()
            if mode == 5:
                last_hz = measurement['hz']  # direction of last measured point
                last_v = measurement['v']
                prev_hz = measurement['hz']  # direction of last measured point
                prev_v = measurement['v']
                moving = True
示例#3
0
        #sys.exit(1)
    # set port
    port = 'COM5'
    if len(sys.argv) > 4:
        port = sys.argv[4]
    iface = SerialIface("test", port)
    # set output file name
    fn = 'measmtrx.txt'
    if len(sys.argv) > 5:
        fn = sys.argv[5]
    # write out measurements
    wrt = FileWriter(angle='DEG', dist='.3f', fname=fn)
    if wrt.GetState() != wrt.WR_OK:
        sys.exit(-1)  # open error
    ts = TotalStation(stationtype, mu, iface, wrt)
    ts.SetATR(0)  # turn ATR off
    ts.SetEDMMode('RLSTANDARD')  # reflectorless distance measurement
    ts.SetRedLaser(1)  # turn red laser on

    w = raw_input("Target on lower left corner and press Enter")
    w1 = ts.GetAngles()
    w = raw_input("Target on upper right corner and press Enter")
    w2 = ts.GetAngles()

    dh = (w2['hz'].GetAngle() - w1['hz'].GetAngle()) / dh_nr
    dv = (w2['v'].GetAngle() - w1['v'].GetAngle()) / dv_nr
    # measurement loops
    for i in range(dh_nr + 1):  # horizontal loop
        measdir = i % 2  # check modulo
        hz = Angle(w1['hz'].GetAngle() + i * dh, 'RAD')
        for j in range(dv_nr + 1):  # vertical loop
示例#4
0
    arange = PI2
    if len(sys.argv) > 7:
        arange = float(sys.argv[7]) / 360.0 * PI2
    iface = SerialIface("rs-232", port)  ## eomRead='\n'
    wrt = CsvWriter(angle='DMS',
                    dist='.3f',
                    filt=['id', 'east', 'north', 'elev'],
                    fname='section.txt',
                    mode='w',
                    sep=';')
    ts = TotalStation(stationtype, mu, iface)
    if isinstance(mu, Trimble5500):
        print("Set Trimble 550x to direct reflex (MNU 722)")
        raw_input()
    else:
        ts.SetATR(0)  # ATR mode off
        ts.SetLock(0)  # Lock mode off
        ts.SetEDMMode("RLSTANDARD")  # Reflectorless distance measurement
        ts.SetRedLaser(1)

    # Direction of the points to defining the plane
    points = []
    for i in range(numberOfPoints):
        raw_input("Target on %d point and press enter" % (i + 1))
        ts.Measure()
        obs = ts.GetMeasure()
        if ts.measureIface.state != ts.measureIface.IF_OK or \
           'errorCode' in obs:
            print('Start again!')
            exit(1)
        # Calculation of the directed coordinates according to the instrument's origin