当前位置: 首页 > news >正文

【定制项目】【M15 消防安全宣传】主要模块:视频 + 音频 + 图标 + 问答游戏

目录

一、项目需求

二、效果展示

1、动态视频

2、切片效果图 

主页

公益宣传片(视频MP4), 火灾启示录(视频MP4),消防宣教员(视频MP4),消防设施原理(视频MP4) 

视频播放页 -  自动播放 + 循环播放

 消防标识识别模块

游戏问答模块

三、项目架构

四、项目分析

1、http服务器:go 语言

http 服务器代码

打开浏览器命令代码

2、前端技术 html + javascript;

3、动态配置项

五、更多案例


一、项目需求

项目名称:【消防安全宣传】

功能模块(共6个模块):公益宣传片(视频MP4), 火灾启示录(视频MP4),消防宣教员(视频MP4),消防设施原理(视频MP4),消防标识识别(大图标宣传展示),消防体验游戏(互动游戏)。

功能说明:各个模块图片,视频,音乐等素材可动态配置,实时生效;

                  游戏问题数量可定义N个,程序自动随机选择不重复的问题;

项目工期:15个工作日。

二、效果展示

1、动态视频

2、切片效果图 

主页

公益宣传片(视频MP4), 火灾启示录(视频MP4),消防宣教员(视频MP4),消防设施原理(视频MP4) 

视频播放页 -  自动播放 + 循环播放

 消防标识识别模块

点击图标后放大效果

游戏问答模块

开始页 

问题页

答案提示页

问答结束页

三、项目架构

  • 触摸屏 Windows系统,分辨率 1920*1080px;(代码支持运行环境Windows,Linux类系统。)
  • 可执行程序exe 开机自启动,自动全屏最大化;
  • B/S架构,支持Chrome,IE,QQ等主流浏览器;
  • http服务器:go 语言。

四、项目分析

1、http服务器:go 语言

http 服务器代码

func main() {
	go browser()

	r := gin.Default()

	r.StaticFS("/static", http.Dir("./static")) 

	r.Run(":" + strconv.Itoa(http_port)) //默认在本地8080端口启动服务
}

打开浏览器命令代码

func browser(){
	cmd := exec.Command("./Browser/chrome.exe", "--kiosk", "http://127.0.0.1:" + strconv.Itoa(http_port) + "/static/index.html")

	err := cmd.Run()
	
	fmt.Printf("%s, error:%v \n", "cmd", err)
}

2、前端技术 html + javascript;

<div id="base" class="">

    <!-- 背景 (Image) -->
    <div id="u1" class="ax_default image">
      <img id="u1_img" class="img " src="images/index/u1.png" />
      <div id="u1_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>

    <!-- 1 公益 (Image) -->
    <div id="u2" class="ax_default image" onclick="play_video('gongyi')">
      <img id="u2_img" class="img " src="images/index/u2.png" />
      <div id="u2_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>

    <!-- 2 启示 anli (Image) -->
    <div id="u3" class="ax_default image" onclick="play_video('qishi')">
      <img id="u3_img" class="img " src="images/index/u3.png" />
      <div id="u3_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>

    <!-- 3 宣教  (Image) -->
    <div id="u4" class="ax_default image" onclick="play_video('xuanjiao')">
      <img id="u4_img" class="img " src="images/index/u4.png" />
      <div id="u4_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>

    <!-- 4 设施 (Image) -->
    <div id="u5" class="ax_default image" onclick="play_video('sheshi')">
      <img id="u5_img" class="img " src="images/index/u5.png" />
      <div id="u5_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>

    <!-- 5 标识 (Image) -->
    <div id="u6" class="ax_default image">
      <img id="u6_img" class="img " src="images/index/u6.png" />
      <div id="u6_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>

    <!-- 6 游戏 (Image) -->
    <div id="u7" class="ax_default image">
      <img id="u7_img" class="img " src="images/index/u7.png" />
      <div id="u7_text" class="text " style="display:none; visibility: hidden">
        <p></p>
      </div>
    </div>


  </div>

3、动态配置项

[
    {
        "question": "下面哪个是119火警电话标识?",
        "answer": "u111.png",
        "answer_list": {
            "A": "u131.png",
            "B": "u161.png",
            "C": "u111.png",
            "D": "u151.png"
        }
    },
    {
        "question": "下面哪个是消防栓标识?",
        "answer": "u171.png",
        "answer_list": {
            "A": "u161.png",
            "B": "u311.png",
            "C": "u171.png",
            "D": "u151.png"
        }
    },
    {
        "question": "下面哪个是安全通道标识?",
        "answer": "u131.png",
        "answer_list": {
            "A": "u111.png",
            "B": "u131.png",
            "C": "u181.png",
            "D": "u141.png"
        }
    },
    {
        "question": "下面哪个是禁止堆放杂物标识?",
        "answer": "u331.png",
        "answer_list": {
            "A": "u371.png",
            "B": "u321.png",
            "C": "u341.png",
            "D": "u331.png"
        }
    },
    {
        "question": "下面哪个是消防通道标识?",
        "answer": "u221.png",
        "answer_list": {
            "A": "u361.png",
            "B": "u351.png",
            "C": "u331.png",
            "D": "u221.png"
        }
    }
]

五、更多案例

YYDatav的数据可视化大屏《精彩案例汇总》(Python&Echarts源码)_YYDataV数据可视化的博客-CSDN博客_datav案例

本次分享结束,欢迎交流,需要定制项目请私聊~

相关文章:

  • 计算机毕业设计-基于协同过滤算法的旅游管理系统-基于SSM的旅游定制系统(源码+讲解+文档)
  • 蓝凌OA漏洞分析与处置方案
  • JAVA基础(四十五)——集合之Map接口
  • Python+审计实务与案例分析库 毕业设计-附源码211526
  • ES6--》对象扩展方法
  • 安卓在任意位置打开drawerLayout
  • 对一个即将上线的网站,如何做一个较完整的Web应用/网站测试?
  • 新授粉方式的花授粉算法-附代码
  • 毕业设计之基于springboot+uniapp的租房小程序
  • 一种改进的混合阿奎拉鹰和哈里斯鹰优化算法
  • ubuntu16 虚拟机单盘扩容
  • 几个简单的JavaScript面试题
  • 和月薪3W的聊过后,才知道自己一直在打杂...
  • Elasticsearch 8.X 路径检索的企业级玩法
  • 为什么不试试神奇的3407呢?
  • 【391天】每日项目总结系列128(2018.03.03)
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • 2017前端实习生面试总结
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • java8-模拟hadoop
  • JavaScript 一些 DOM 的知识点
  • Node + FFmpeg 实现Canvas动画导出视频
  • PHP变量
  • v-if和v-for连用出现的问题
  • Zsh 开发指南(第十四篇 文件读写)
  • 浮动相关
  • 关于使用markdown的方法(引自CSDN教程)
  • 简单基于spring的redis配置(单机和集群模式)
  • 利用DataURL技术在网页上显示图片
  • 排序算法之--选择排序
  • 使用Gradle第一次构建Java程序
  • 线性表及其算法(java实现)
  • 用quicker-worker.js轻松跑一个大数据遍历
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (HAL库版)freeRTOS移植STMF103
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (六) ES6 新特性 —— 迭代器(iterator)
  • ./和../以及/和~之间的区别
  • .NET 8 编写 LiteDB vs SQLite 数据库 CRUD 接口性能测试(准备篇)
  • .net core 实现redis分片_基于 Redis 的分布式任务调度框架 earth-frost
  • .NET MVC第三章、三种传值方式
  • .NET Remoting学习笔记(三)信道
  • .netcore 如何获取系统中所有session_如何把百度推广中获取的线索(基木鱼,电话,百度商桥等)同步到企业微信或者企业CRM等企业营销系统中...
  • [ vulhub漏洞复现篇 ] Hadoop-yarn-RPC 未授权访问漏洞复现
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [20150321]索引空块的问题.txt
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [C#]OpenCvSharp结合yolov8-face实现L2CS-Net眼睛注视方向估计或者人脸朝向估计
  • [c]统计数字