请选择 进入手机版 | 继续访问电脑版
  • 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python util.distance函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中util.distance函数的典型用法代码示例。如果您正苦于以下问题:Python distance函数的具体用法?Python distance怎么用?Python distance使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了distance函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: checkTerrain

    def checkTerrain(self, c):

        #Confirm current region
        c.resetRegion()
        if c.region is None:
            for r in self.regions:
                dist = util.distance(c.precisePos, r.pos)
                if dist <= MAP_REGION_SIZE:
                    c.region = r
                    break

        #Check for Fortress
        for i in self.structures:
            sTeam = i.team
            cTeam = c.team + 1
            if isinstance(i, mapstructure.Fortress) and (sTeam == cTeam):
                dist = util.distance(c.precisePos, i.precisePos)
                if (dist <= i.triggerSize):
                    c.currTerrain = FORTRESS
                    return
                 
        #Check all terrain circles in current region
        for i in c.region.terrainMasterList:
            circle = i[0]
            terrainType = i[1]
            dist = util.distance(c.precisePos, circle[0])
            if dist <= circle[1]:
                terrainType = self.terrainBasedOnWinter(terrainType, c)
                c.currTerrain = terrainType
                return

        c.currTerrain = self.terrainBasedOnWinter(PLAINS, c)
开发者ID:Wopple,项目名称:fimbulvetr,代码行数:32,代码来源:mapmode_m.py


示例2: connected_to

    def connected_to(self, res, cutoff=3.0):
        """
		Determine if another residue is connected to this residue, returns 0
		if res is not connected to self, returns 1 if connection is going
		from 5' to 3' and returns -1 if connection is going from 3' to 5'

        :param res: another residue
        :type res: Residue object

        """
        # 5' to 3'
        o3_atom = self.get_atom("O3'")
        p_atom = res.get_atom("P")
        if o3_atom and p_atom:
            if util.distance(o3_atom.coords, p_atom.coords) < cutoff:
                return 1

        # 3' to 5'
        p_atom = self.get_atom("P")
        o3_atom = res.get_atom("O3'")
        if o3_atom and p_atom:
            if util.distance(o3_atom.coords, p_atom.coords) < cutoff:
                return -1

        return 0
开发者ID:ribokit,项目名称:RiboBase,代码行数:25,代码来源:residue.py


示例3: initialize

 def initialize(self):
     setupGraphs(self) # inits self.graph
     self.verbose = True
     self.bots = set()
     self.defenders = []
     self.attackers = []
     self.flagGetters = []
     self.scouts = []
     teamPosition, isTeamCorner = self.getStrategicPostion(self.game.team.flag.position)
     teamPosition = self.level.findNearestFreePosition(teamPosition)
     teamDirs = self.getDefendingDirs(teamPosition)
     enemyPosition, isEnemyCorner = self.getStrategicPostion(self.game.enemyTeam.flagScoreLocation)
     enemyPosition = self.level.findNearestFreePosition(enemyPosition)
     enemyDirs = self.getDefendingDirs(enemyPosition)
     for i, bot_info in enumerate(self.game.bots_available):
         bot = Bot(bot_info, self)
         if i < self.numOfDefenders:                
             self.defenders.append(bot)
         elif self.numOfDefenders <= i < self.numOfFlagGetters + self.numOfDefenders:
             self.flagGetters.append(bot)
         elif i %3 == 0 or len(self.attackers) < 2:
             self.attackers.append(bot)
         elif i %3 == 1:
             self.defenders.append(bot)
         else:
             self.flagGetters.append(bot)
             
     #TODO: priority decided based on distance
     teamPriority = 1 if distance(self.level.findRandomFreePositionInBox(self.game.team.botSpawnArea), teamPosition) < 25 else 0
     self.defendingGroup = Squad(self.defenders, Goal(Goal.DEFEND, teamPosition, isTeamCorner, priority=teamPriority, graph=self.graph, dirs=teamDirs), commander=self)
     enemyPriority = 1 if distance(self.level.findRandomFreePositionInBox(self.game.team.botSpawnArea), enemyPosition) < 25 else 0
     self.attackingGroup = Squad(self.attackers, Goal(Goal.DEFEND, enemyPosition, isEnemyCorner, priority=enemyPriority, graph=self.graph, dirs=[(self.game.enemyTeam.flagScoreLocation - enemyPosition, 1)]), commander=self)
     self.flagGroup = Squad(self.flagGetters, Goal(Goal.GETFLAG, None, None, graph=self.graph))
     self.squads = [self.defendingGroup, self.attackingGroup,self.flagGroup]
开发者ID:newmanne,项目名称:CTF-,代码行数:34,代码来源:fsmcmd.py


示例4: findMoveTarget

 def findMoveTarget(self, unit):
       enemies = [i for i in self.bots if i.getOwner() == 0 and self.playerID() == 1 and i.getPartOf() == 0 or i.getOwner() == 1 and self.playerID() == 0 and i.getPartOf() == 0]
       targetDist = util.distance(unit.getX(),unit.getY(),unit.getSize(),enemies[0].getX(),enemies[0].getY(),enemies[0].getSize())
       target = enemies[0]
       for e in enemies:
         if util.distance(unit.getX(),unit.getY(),unit.getSize(),e.getX(),e.getY(),e.getSize()) < targetDist:
           target = e
           targetDist = util.distance(unit.getX(),unit.getY(),unit.getSize(),e.getX(),e.getY(),e.getSize())
       return target
开发者ID:siggame,项目名称:MegaMinerAI-6,代码行数:9,代码来源:AI.py


示例5: distancetest

 def distancetest(self):
   print ''
   print '  c 0 1 2 3 4 5 6 7 8 9 X E'
   print 'r   - - - - - - - - - - - -'
   for r in range(self.width()):
     print str(r) + ' |',
     for c in range(self.height()):
       print util.distance([0,0], [r,c]) % 10,
     print '| ' + str(r)
   print '    - - - - - - - - - - - -'
   print '    0 1 2 3 4 5 6 7 8 9 X E'
   print ''
开发者ID:alexpear,项目名称:commander,代码行数:12,代码来源:gamestate.py


示例6: update_with_sr

 def update_with_sr(self, sr):
   '''
   Adds the following to a filled-out Ride
    - distance to the original request location
    - distance to the closest destination
   '''
   self.search_request = sr
   self.start_distance = util.distance(
       (sr.start_lat,sr.start_long),
       (self.requests[0].start_lat, self.requests[0].start_long))
   self.end_distance = min([
     util.distance(
       (sr.end_lat,sr.end_long),
       (r.end_lat, r.end_long)) for r in self.requests])
开发者ID:sergeyk,项目名称:cabfriendly,代码行数:14,代码来源:models.py


示例7: checkForStop

    def checkForStop(self):
        if not self.target is None:
            currDist = util.distance(self.precisePos, self.target)

            nextLoc = []
            for i in range(2):
                nextLoc.append(self.precisePos[i] + self.vel[i]) 
            nextDist = util.distance(nextLoc, self.target)
            if nextDist > currDist:
                if len(self.targetBuffer) > 0:
                    self.target = self.targetBuffer[0]
                    self.targetBuffer = self.targetBuffer[1:]
                    self.startMovement()
                else:
                    self.stop()
开发者ID:Wopple,项目名称:fimbulvetr,代码行数:15,代码来源:mapchar.py


示例8: irregular_galaxy_calc_positions

def irregular_galaxy_calc_positions(positions, adjacency_grid, size, width):
    """
    Calculate positions for the irregular galaxy shape.
    """
    max_delta = max(min(float(universe_tables.MAX_STARLANE_LENGTH), width / 10.0), adjacency_grid.min_dist * 2.0)
    print "Irregular galaxy shape: max delta distance = {}".format(max_delta)
    origin_x, origin_y = width / 2.0, width / 2.0
    prev_x, prev_y = origin_x, origin_y
    reset_to_origin = 0
    for _ in range(size):
        attempts = 100
        found = False
        while (attempts > 0) and not found:
            attempts -= 1
            x = prev_x + uniform(-max_delta, max_delta)
            y = prev_y + uniform(-max_delta, max_delta)
            if util.distance((x, y), (origin_x, origin_y)) > width * 0.45:
                prev_x, prev_y = origin_x, origin_y
                reset_to_origin += 1
                continue
            found = not adjacency_grid.too_close_to_other_positions((x, y))
            if attempts % 10:
                prev_x, prev_y = x, y
        if found:
            pos = (x, y)
            adjacency_grid.insert_pos(pos)
            positions.append(pos)
        prev_x, prev_y = x, y
    print "Reset to origin {} times".format(reset_to_origin)
开发者ID:MatGB,项目名称:freeorion,代码行数:29,代码来源:galaxy.py


示例9: stitching_positions

def stitching_positions(p1, p2):
    """
    Returns a list of positions between p1 and p2 between MIN_SYSTEM_SEPARATION and MAX_STARLANE_LENGTH apart
    """
    if 2 * universe_tables.MIN_SYSTEM_SEPARATION >= universe_tables.MAX_STARLANE_LENGTH:
        util.report_error("MAX_STARLANE_LENGTH must be twice MIN_SYSTEM_SEPARATION to "
                          "allow extra positions to be added to enforce MAX_STARLANE_LENGTH")
        return []

    max_dist = universe_tables.MAX_STARLANE_LENGTH
    min_dist = universe_tables.MIN_SYSTEM_SEPARATION
    p1_p2_dist = util.distance(p1, p2)
    if p1_p2_dist < max_dist:
        return []

    # Pick a random point in an 2:1 ratio ellipse and then rotate and slide it in between p1 and p2
    p1_p2_theta = acos((p2[0] - p1[0]) / p1_p2_dist)
    p1_p2_scale = (p1_p2_dist - 2*min_dist) / 2
    p1_p2_translation = ((p1[0] + p2[0]) / 2, (p1[1] + p2[1]) / 2)

    radius_0space = uniform(0.0, 1.0)
    angle_0space = uniform(0.0, 2.0 * pi)
    rotated_point = (radius_0space * p1_p2_scale * cos(angle_0space + p1_p2_theta),
                     radius_0space * p1_p2_scale * sin(angle_0space + p1_p2_theta))

    p3 = (rotated_point[0] + p1_p2_translation[0], rotated_point[1] + p1_p2_translation[1])

    return [p3] + stitching_positions(p1, p3) + stitching_positions(p2, p3)
开发者ID:MatGB,项目名称:freeorion,代码行数:28,代码来源:galaxy.py


示例10: evaluation_function

	def evaluation_function(self, node_id, cur_days):
		"""
		Evaluation function: if I add node_id to the job schedule, how good is it?
		@author Aaron Nagao

		@param <String> node_id = id of the job I am evaluating
		@return <float> estimate of the value of choosing node_id. Higher value = better choice.

		TODO: change manual weights of 1 to learned weights

		Features for evaluation function:
		# 1) Number of miles required to fulfill this job
		# 2) price of this job
		# 3a) After we deliver this job, how many other jobs are in the area?
		# 3b) After we deliver this job, what's the average price of other jobs in the delivery area?
		# TODO: avg gas price in the area?
		"""
		# key: <String>featureName => value: <tuple>(weight, featureValue)
		# Positive weights for good features.
		return 0
		features = dict()

		"""
		# First, check whether I can finish this job in time
		prevEnd_nextStart_nextEnd = self.distance_matrix[(prevJob['_id']['$oid'], nextJob['_id']['$oid'])] # miles required to drive to next job and fulfill next job (prevJob.end => nextJob.start => nextJob.end)
		
		(from_lng, from_lat) = nextJob['deliveryAddress']['location']['coordinates']
  		(to_lng, to_lat) = (self.start_lng, self.start_lat)
		nextEnd_home = util.distance(from_lat, from_lng, to_lat, to_lng)
		
		sumDays_nextJobAndHome = ( (prevEnd_nextStart_nextEnd + nextEnd_home) / util.MPH ) / 24 # day = miles / miles/hr / 24hr/day
		if cur_days + sumDays_nextJobAndHome > self.max_days:
			return float('-inf') # cannot take on this job
		"""
		
		# 1) Number of miles required to fulfill this job
		# negative weight (prefer shorter jobs)
		features['jobMiles'] = (-.2, util.distance(*self.graph.jobs[node_id]['pickup']+self.graph.jobs[node_id]['delivery']))

		# 2) price of this job
		features['jobPrice'] = (0.3, self.graph.jobs[node_id]['price'])
		
		# 3a) After we deliver this job, how many other jobs are in the area?
		(to_lat, to_lng) = self.graph.jobs[node_id]['delivery']
		to_i, to_j = int(to_lat), int(to_lng)  
		jobsInDeliveryArea = self.graph.delivery_grid[ (to_i, to_j) ]
		numJobsInDeliveryArea = len(jobsInDeliveryArea)
		features['numJobsInDeliveryArea'] = (0.3, numJobsInDeliveryArea)

		# 3b) After we deliver nextJob, what's the average price of other jobs in the delivery area?
		if numJobsInDeliveryArea == 0:
			avgPriceInDeliveryArea = 0
		else:
			avgPriceInDeliveryArea = sum([self.graph.get_price(job) for job in jobsInDeliveryArea]) / numJobsInDeliveryArea
		features['avgPriceInDeliveryArea'] = (0.1, avgPriceInDeliveryArea)
		
		# print features
		heur_score = sum([ v[0]*v[1] for k,v in features.iteritems() ]) / 10
		#print("heur score: " + str(heur_score))
		return heur_score # dot product of feature and its weight
开发者ID:anagao,项目名称:cs221-project,代码行数:60,代码来源:algorithm.py


示例11: heatAt

 def heatAt(self, position):
     heat_from_sources = []
     for hs in self.hsources:
         dist = util.distance(position, hs.position)
         heat = hs.getHeat(dist)
         heat_from_sources.append(heat)
     return sum(heat_from_sources)
开发者ID:onejgordon,项目名称:pphtm,代码行数:7,代码来源:SimpleHeatGame.py


示例12: check_distance_accuracy

def check_distance_accuracy(jobs_file):
  distance_diffs = []
  c = 0
  total = 0
  with open(jobs_file) as f:
    for line in f:
      total += 1
      job = json.loads(line)
      if job['distanceInMiles'] <= 0: 
        c+= 1
        continue
      from_latlng = job['pickupAddress']['location']['coordinates']
      to_latlng = job['deliveryAddress']['location']['coordinates']
      geodesic_distance = util.distance(from_latlng[1], from_latlng[0], to_latlng[1], to_latlng[0])
      error = geodesic_distance/job['distanceInMiles']-1
      distance_diffs.append(error)

  print 'Missing distances: ', c/float(total)
  print 'Mean: ', numpy.mean(distance_diffs)
  print 'Stdev: ', numpy.std(distance_diffs)

  values = [int(p*100) for p in distance_diffs]
  counts = collections.Counter(values)
  X = sorted(counts.keys())
  Y = [counts[x] for x in X]
  

  fig = plt.figure()
  ax = fig.add_subplot(111)
  ax.plot(X, Y)
  ax.set_title('[Geodesic distance - Actual Distance] histogram')
  ax.set_xlabel('Miles')
  ax.set_ylabel('Count')
  plt.show()
开发者ID:anagao,项目名称:cs221-project,代码行数:34,代码来源:cleanup.py


示例13: resetRegion

    def resetRegion(self):
        if self.region is None:
            return

        if (util.distance(self.precisePos, self.region.pos) >
            MAP_REGION_SIZE):
            self.region = None
开发者ID:Wopple,项目名称:fimbulvetr,代码行数:7,代码来源:mapchar.py


示例14: getCorrespondencesForFace

def getCorrespondencesForFace(selectedCorners, corners, currentFace, windowImage):
    h = compute2DHomography(selectedCorners)
    correspondences = []
    # for every possible corner in the face
    for x in range(0, BOX_NUM * 2):
        for y in range(0, BOX_NUM * 2):
            # project the possible corner (in the range [-1,1]x[-1,1]) into image space with the homography h
            scale = (BOX_NUM * 2 - 1.0) / 2.0
            projectedCorner = numpy.dot(h , numpy.array([x / scale - 1.0, y / scale - 1.0, 1]))
            projectedCorner /= projectedCorner[2]
            
            # find the closest corner from the corner detection set
            minDistance = 10000
            minCorner = None
            pos = (projectedCorner[0], projectedCorner[1])
            for corner in corners:
                dist = util.distance(corner, pos)
                if dist < minDistance:
                    minDistance = dist
                    minCorner = corner
            
            # check if the closest corner belongs to this corner -> add correspondence and paint a circle + the coordinates
            if minDistance < MIN_DISTANCE_THRESHOLD:
                coord3d = create3dCoord(currentFace, x + 1, y + 1)
                intPos = (int(pos[0] * ratio), int(pos[1] * ratio))
                cv.Circle(windowImage, intPos , 6, cv.RGB(0, 0, 255))
                # cv.PutText(windowImage, str(coord3d), intPos, DEFAULT_FONT , cv.RGB(0, 0, 255))
                correspondences.append((minCorner, coord3d))
            
    print("found " + str(len(correspondences)) + " correspondences")
    return correspondences
开发者ID:david-westreicher,项目名称:match-moverold,代码行数:31,代码来源:calibrationwrapper.py


示例15: PerformIDEACluster

def PerformIDEACluster(clusters,test,dataset="Unknown", treatment="IDEACLUSTER", disregardY=False):
    Stats = DefectStats()
    if type(test[0].klass()) is str:
        for instance in test:
            Closest = [sys.maxint, None]
            for cluster in clusters:
                for quadrant in cluster.quadrants:
                    if distance(instance.Coord(), quadrant.center()) < Closest[0]:
                        Closest[0] = distance(instance.Coord(), quadrant.center())
                        Closest[1] = cluster
            train = []
            for quadrant in Closest[1].quadrants:
                train.extend(quadrant.ClassCoords())
            Stats.Evaluate(NaiveBayesClassify(instance.Coord(),train, disregardY), instance.klass())
        Stats.StatsLine(dataset, treatment)
    del Stats
开发者ID:abutcher,项目名称:bi,代码行数:16,代码来源:statistics.py


示例16: cornerProbabilityGivenParticleLocation

def cornerProbabilityGivenParticleLocation(observation, particle):
  '''
  Calculates P(e|x_t), given that observation is the (scalar) distance
  to the corner
  TODO: r, theta = observation
  '''
  obs_dist, obs_heading = observation
  
  prob = 0.0
  for corner in corners:
    # calculate distance to corner
    distance = util.distance(particle[0:2], corner)
    # calculate the relative heading w.r.t particle position and heading
    heading = util.normalizeRadians(util.heading(particle[0:2], corner) - particle[2])
    
    # TODO tune sigmas
    # (assume P(e|x_t) ~ exp{-1/2 * |distance - obs_dist| / sigma_1^2} 
    #                    * exp{-1/2 * |heading - obs_heading| / sigma_2^2} )
    prob += numpy.exp(-0.1 * numpy.abs(distance - obs_dist) +
      -7 * numpy.abs(heading - obs_heading))
    '''
    if corner is corners[0]:
      print particle, 'hdg:', heading
      print numpy.exp(-0.1 * numpy.abs(distance - obs_dist) +
        -10 * numpy.abs(heading - obs_heading))
      print numpy.exp(-1 * numpy.abs(heading - obs_heading))
    '''
  
  return prob
开发者ID:EVMakers,项目名称:ballbot,代码行数:29,代码来源:models.py


示例17: initialize

 def initialize(self):
     if self.type == self.PROXIMAL:
         # Setup initial potential synapses for proximal segments
         n_inputs = self.region.n_inputs
         cell_x, cell_y = util.coords_from_index(self.cell.index, self.region._cell_side_len())
         for source in range(n_inputs):
             # Loop through all inputs and randomly choose to create synapse or not
             input_x, input_y = util.coords_from_index(source, self.region._input_side_len())
             dist = util.distance((cell_x, cell_y), (input_x, input_y))
             max_distance = self.region.diagonal
             chance_of_synapse = ((MAX_PROXIMAL_INIT_SYNAPSE_CHANCE - MIN_PROXIMAL_INIT_SYNAPSE_CHANCE) * (1 - float(dist)/max_distance)) + MIN_PROXIMAL_INIT_SYNAPSE_CHANCE
             add_synapse = random.random() < chance_of_synapse
             if add_synapse:
                 self.add_synapse(source)
     else:
         # Distal
         cell_index = self.cell.index
         for index in range(self.region.n_cells):
             if index == cell_index:
                 # Avoid creating synapse with self
                 continue
             chance_of_synapse = DISTAL_SYNAPSE_CHANCE
             add_synapse = random.random() < chance_of_synapse
             if add_synapse:
                 self.add_synapse(index, permanence=0.15)
     log_message = "Initialized %s" % self
     log(log_message)
开发者ID:onejgordon,项目名称:pphtm,代码行数:27,代码来源:chtm_brain.py


示例18: irregular2_galaxy_calc_positions

def irregular2_galaxy_calc_positions(positions, size, width):
    """
    Calculate positions for the irregular2 galaxy shape
    """
    adjacency_grid = AdjacencyGrid(width)
    max_delta = max(min(float(fo.max_starlane_length()), width / 10.0), adjacency_grid.min_dist * 2.0)
    print "Irregular2 galaxy shape: max delta distance =", max_delta
    origin_x, origin_y = width / 2.0, width / 2.0
    prev_x, prev_y = origin_x, origin_y
    reset_to_origin = 0
    for n in range(size):
        attempts = 100
        found = False
        while (attempts > 0) and not found:
            attempts -= 1
            x = prev_x + uniform(-max_delta, max_delta)
            y = prev_y + uniform(-max_delta, max_delta)
            if util.distance(x, y, origin_x, origin_y) > width * 0.45:
                prev_x, prev_y = origin_x, origin_y
                reset_to_origin += 1
                continue
            found = not adjacency_grid.too_close_to_other_positions(x, y)
            if attempts % 10:
                prev_x, prev_y = x, y
        if found:
            pos = fo.SystemPosition(x, y)
            adjacency_grid.insert_pos(pos)
            positions.append(pos)
        prev_x, prev_y = x, y
    print "Reset to origin", reset_to_origin, "times"
开发者ID:pitchforks,项目名称:freeorion,代码行数:30,代码来源:galaxy.py


示例19: refresh

 def refresh(self):
     tcod_map = self.game.dungeon.tcod_map
     if self.entity is self.game.player:
         libtcod.map_compute_fov(tcod_map,
                                 self.entity.x,
                                 self.entity.y,
                                 PLAYER_FOV_RADIUS)
     else:
         libtcod.map_compute_fov(tcod_map,
                                  self.entity.x,
                                  self.entity.y,
                                  self.creature.perception)
     if self.entity is self.game.player:
         for x in range(len(self.fov_map)):
             for y in range(len(self.fov_map[0])):
                 self.fov_map[x][y]=int(libtcod.map_is_in_fov(tcod_map,
                                                              x,y))
     else:
         self.clear()
         for x in range(self.entity.x-self.creature.perception,
                        self.entity.x+self.creature.perception+1):
             for y in range(self.entity.y-self.creature.perception,
                            self.entity.y+self.creature.perception+1):
                 fov_num = int(libtcod.map_is_in_fov(tcod_map,x,y))
                 if fov_num:
                     if (x-self.entity.x==0 or
                         y-self.entity.y==0 or
                         abs(x-self.entity.x)-abs(y-self.entity.y)==0):
                         fov_num += 1
                     if util.distance(self.entity.x,self.entity.y,x,y)<=self.creature.perception//3:
                         fov_num += 1
                 try:
                     self.fov_map[x][y] = fov_num
                 except IndexError: pass
开发者ID:mscottmoore16,项目名称:golemrl,代码行数:34,代码来源:fov.py


示例20: act

  def act(self, acting_unit):
    # First chooses closest foe as target:
    chosen_target = None
    shortest_so_far = 999 # shortest distance of a foe so far
    for other_unit in self.things:
      if (other_unit.allegiance == 'gaia' or
          other_unit.allegiance == acting_unit.allegiance or
          other_unit.quantity <= 0):
        continue  # invalid unit, not a foe
      dist = util.distance(other_unit.coord, acting_unit.coord)
      if dist < shortest_so_far:
        shortest_so_far = dist
        chosen_target = other_unit

    if chosen_target == None:
      return

    # Now moves toward target:
    # really hacky:
    cur = acting_unit.coord
    self.move(
      acting_unit,
      util.coord_sum(
        cur,
        util.direction_from(cur, chosen_target.coord)))

    # Now shoots target:
    self.shoot(acting_unit, chosen_target)
开发者ID:alexpear,项目名称:commander,代码行数:28,代码来源:gamestate.py



注:本文中的util.distance函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python util.doexec函数代码示例发布时间:2022-05-27
下一篇:
Python util.die函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap