使用tour_editor.html设置视角和添加热点

控制初始视角
  • 双击打开vtour文件夹中的tour_editor.html。请先运行测试服务器,然后在浏览器地址栏中加上tour_editor.html,例如 http://localhost:52782/tour_editor.html
  • tour_editor是flash插件,因此打开状态下为Flash内核。
  • 通过默认皮肤提供的导航功能选择场景,然后通过鼠标或键盘缩放摇移选择你希望的起始视角,然后点击 set as startup view 按钮保存。每个场景scene在转动到合适的角度后需要点击一次这个按钮。点完后可以通过下方缩略图跳转到下一个场景,选择好视角后点击 set as startup view 按钮。当你点击一下 set as startup view 按钮,那么此时的视角就是载入所在场景时的初始视角。
  • 全部改动完成后,点击 edit tour.xml 下,全选复制所有代码,然后在代码编辑器中对tour.xml全部粘贴覆盖。
添加、删除和移动热点
  • 点击 add hotspot 按钮,画面正中会出现一个箭头热点,用鼠标将热点拖到你希望放置的位置。
  • 确定位置后点击 done 按钮,会弹出一个对话框,对话框中是该漫游里所有场景的列表,点击选中需要热点所跳转的场景,然后点击 done 按钮。在不同的场景中均按照这个方法添加热点。
  • 点击 move hotspots 按钮,你可以拖拽画面中的任意一个或多个热点到你希望的位置,该功能适用于任意热点hotspot,不限但包括默认热点。完成后点击 done 按钮。
  • 点击 delete hotspots 按钮,你可以点击画面中的任意一个或多个热点进行删除操作,该功能适用于任意热点hotspot,不限但包括默认热点。完成后点击 done 按钮。

转载于:https://www.cnblogs.com/JennyZhang-sharing/p/6810011.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
class AbstractGreedyAndPrune(): def __init__(self, aoi: AoI, uavs_tours: dict, max_rounds: int, debug: bool = True): self.aoi = aoi self.max_rounds = max_rounds self.debug = debug self.graph = aoi.graph self.nnodes = self.aoi.n_targets self.uavs = list(uavs_tours.keys()) self.nuavs = len(self.uavs) self.uavs_tours = {i: uavs_tours[self.uavs[i]] for i in range(self.nuavs)} self.__check_depots() self.reachable_points = self.__reachable_points() def __pruning(self, mr_solution: MultiRoundSolution) -> MultiRoundSolution: return utility.pruning_multiroundsolution(mr_solution) def solution(self) -> MultiRoundSolution: mrs_builder = MultiRoundSolutionBuilder(self.aoi) for uav in self.uavs: mrs_builder.add_drone(uav) residual_ntours_to_assign = {i : self.max_rounds for i in range(self.nuavs)} tour_to_assign = self.max_rounds * self.nuavs visited_points = set() while not self.greedy_stop_condition(visited_points, tour_to_assign): itd_uav, ind_tour = self.local_optimal_choice(visited_points, residual_ntours_to_assign) residual_ntours_to_assign[itd_uav] -= 1 tour_to_assign -= 1 opt_tour = self.uavs_tours[itd_uav][ind_tour] visited_points |= set(opt_tour.targets_indexes) # update visited points mrs_builder.append_tour(self.uavs[itd_uav], opt_tour) return self.__pruning(mrs_builder.build()) class CumulativeGreedyCoverage(AbstractGreedyAndPrune): choice_dict = {} for ind_uav in range(self.nuavs): uav_residual_rounds = residual_ntours_to_assign[ind_uav] if uav_residual_rounds > 0: uav_tours = self.uavs_tours[ind_uav] for ind_tour in range(len(uav_tours)): tour = uav_tours[ind_tour] quality_tour = self.evaluate_tour(tour, uav_residual_rounds, visited_points) choice_dict[quality_tour] = (ind_uav, ind_tour) best_value = max(choice_dict, key=int) return choice_dict[best_value] def evaluate_tour(self, tour : Tour, round_count : int, visited_points : set): new_points = (set(tour.targets_indexes) - visited_points) return round_count * len(new_points) 如何改写上述程序,使其能返回所有已经探索过的目标点visited_points的数量,请用代码表示
最新发布
06-10

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值