男女做爰视频网站/怎样进行网络推广效果更好

男女做爰视频网站,怎样进行网络推广效果更好,上海信息技术做网站,快件网站建设pygame几乎可以识别任意外接游戏操纵设备。 游戏手柄上的每个操作都会形成一个电信号被joystick类对象捕获到, joystick把这个信号归一化到[-1,1]区间,或者离散化为{0,1}。 以下程序创建一个弹出窗口,实时显示joystick捕获到的信号数值&…

pygame几乎可以识别任意外接游戏操纵设备。

游戏手柄上的每个操作都会形成一个电信号被joystick类对象捕获到, joystick把这个信号归一化到[-1,1]区间,或者离散化为{0,1}。

以下程序创建一个弹出窗口,实时显示joystick捕获到的信号数值,便于查看joystick捕获到的信号对应于游戏手柄的哪个按钮/操作。 

代码参考博客:Pygame详解(十七):joystick 模块_pygame joystick-CSDN博客

进行了注释解读。 

import pygame# Define some colors  ## 定义颜色
BLACK    = (   0,   0,   0)
WHITE    = ( 255, 255, 255)# This is a simple class that will help us print to the screen
# It has nothing to do with the joysticks, just outputting the
# information.
## 这是一个简单的 class, 用于帮助我们把joystick的信息打印到屏幕上,便于查看哪个按键对应哪个变量。
## 这个类不对 joystick 做任何操作,仅仅打印它的信息。
class TextPrint:def __init__(self):self.reset()self.font = pygame.font.Font(None, 20)def print(self, screen, textString):textBitmap = self.font.render(textString, True, BLACK) ## 设置屏幕中显示的文字,并设置显示颜色screen.blit(textBitmap, [self.x, self.y])   ## 在screen 的指定位置打印文字。self.y += self.line_height                ## 光标的位置下移一个行高的高度def reset(self):self.x = 10    ## 设置打印文字的初始 x 位置self.y = 10    ## 设置打印文字的初始 y 位置self.line_height = 15 ## 设置行高为15像素def indent(self): ## 光标位置右移10个空格self.x += 10def unindent(self): ## 光标位置左移10个空格self.x -= 10## 初始化 pygame
pygame.init()# Set the width and height of the screen [width,height]
size = [500, 750]  ## 设置矩形框的大小
screen = pygame.display.set_mode(size) ## 获取pygame里面内置的 display 对象, 命名为screenpygame.display.set_caption("My Game") ## 设置screen窗口的标题# Loop until the user clicks the close button.
## 循环,直至用于点击弹出的窗口上的关闭按钮
done = False# Used to manage how fast the screen updates
## 用于管理screen更新的速度
clock = pygame.time.Clock()# Initialize the joysticks
## 初始化joystick
pygame.joystick.init()# Get ready to print
## 准备 print
textPrint = TextPrint()# -------- Main Program Loop -----------
# 主程序
while done==False:# EVENT PROCESSING STEP## 事件处理步骤for event in pygame.event.get(): # User did something # 当用户做了某件事时if event.type == pygame.QUIT: # If user clicked close ## 如果用户的操作不是 quit(在screen上显示)done=True # Flag that we are done so we exit this loop  ## 当用户在screen上点击close时,把done设置为true,退出循环# Possible joystick actions: JOYAXISMOTION JOYBALLMOTION JOYBUTTONDOWN JOYBUTTONUP JOYHATMOTION# joystick 其他可能的动作:axis运动, ball运动, button按压运动,button弹起运动, hat运动if event.type == pygame.JOYBUTTONDOWN: ## 当发生按钮按下动作时,打印信息print("Joystick button pressed.")if event.type == pygame.JOYBUTTONUP:   ## 当发生按钮弹起动作时,打印信息print("Joystick button released.")# DRAWING STEP ## 绘制步骤# First, clear the screen to white. Don't put other drawing commands# above this, or they will be erased with this command.## 首先, 把screen清空为白色,不添加其他任何绘制命令,或者其他所有的绘制命令被这个命令覆盖screen.fill(WHITE)  ## 把screen填充为白色textPrint.reset()   ## textPrint 是一个自己定义的类# Get count of joysticks  ## 获取连接到当前机器上的joystick的个数joystick_count = pygame.joystick.get_count()textPrint.print(screen, "Number of joysticks: {}".format(joystick_count) ) ## 在 screen上打印信息,textPrint.indent()   ## 在 screen上打印空格# For each joystick:## 对每个joystick执行以下操作for i in range(joystick_count):joystick = pygame.joystick.Joystick(i)  ## 获取当前 joystick 对象joystick.init()                         ## 初始化当前joystick textPrint.print(screen, "Joystick {}".format(i) )  ## 打印 当前 joystick 编号到screen textPrint.indent()  ## 打印空格# Get the name from the OS for the controller/joystickname = joystick.get_name()  ## 获取joystick的名字textPrint.print(screen, "Joystick name: {}".format(name) ) ## 打印joystick的名字# Usually axis run in pairs, up/down for one, and left/right for the other.## 通常, axis成对运行,一个用于表示上下,另一个用于表示左右。axes = joystick.get_numaxes()  ## 获取axis轴的个数textPrint.print(screen, "Number of axes: {}".format(axes) )textPrint.indent()for i in range( axes ):  axis = joystick.get_axis( i ) ## 获取第 i 个 axis 的当前数值,取值范围一般在[-1,1]之间textPrint.print(screen, "Axis {} value: {:>6.3f}".format(i, axis) ) ## 把axis的编号和数值打印到窗口上textPrint.unindent()buttons = joystick.get_numbuttons() ## 获取按钮的个数textPrint.print(screen, "Number of buttons: {}".format(buttons) )textPrint.indent()for i in range( buttons ):button = joystick.get_button( i ) ## 获取第i个按钮的当前取值textPrint.print(screen, "Button {:>2} value: {}".format(i,button) )textPrint.unindent()# Hat switch. All or nothing for direction, not like joysticks.# Value comes back in an array.hats = joystick.get_numhats()  ## 获取键帽的个数textPrint.print(screen, "Number of hats: {}".format(hats) )textPrint.indent()for i in range( hats ):hat = joystick.get_hat( i )  ## 打印当前键帽的数值/状态textPrint.print(screen, "Hat {} value: {}".format(i, str(hat)) )textPrint.unindent()textPrint.unindent()# ALL CODE TO DRAW SHOULD GO ABOVE THIS COMMENT## 所有绘制代码需要在这一行之前# Go ahead and update the screen with what we've drawn.## 用上面的命令更新 screen pygame.display.flip()# Limit to 20 frames per second## 更新间隔是 20帧/秒,帧率clock.tick(200)# Close the window and quit. ## 关闭窗口并退出
# If you forget this line, the program will 'hang'  ## 如果您忘记了这一行,如果从IDLE运行,程序将在退出时“挂起”。
# on exit if running from IDLE.
pygame.quit ()

以下是我的一个使用示例:

import pygamepygame.init()
pygame.joystick.init()for i in range(10):joystick_count = pygame.joystick.get_count() ## 统计接入了几个jsystick摇杆/设备joystick = pygame.joystick.Joystick(0) ## 返回一个joystick设备类对象,与外接的一个joystick对接。joystick.init() ## 使用前需要对设备进行初始化stick_id = joystick.get_id()print(f"======{i}==========")print(f"游戏手柄的 名字是:{joystick.get_name()}")print(f"操纵轴的数量 numaxes = {joystick.get_numaxes()}")     ## 获得 Joystick 操纵轴的数量。 7 个print(f"追踪球的数量 numballs = {joystick.get_numballs()}")   ## 获得 Joystick 上追踪球的数量。 0 个print(f"按钮的数量 numbuttons = {joystick.get_numbuttons()}") ## 获得 Joystick 上按钮的数量。  34 个print(f"帽键的数量 numhats = {joystick.get_numhats()}")       ## 获得 Joystick 上帽键的数量。  1 个## 打印每个操纵轴的数值for j in range(joystick.get_numaxes()):  ## 获取第j个轴的数值value = joystick.get_axis(j)  ## 获得操纵轴的当前坐标,其值是从 -1.0 到 1.0,0 在中间。 轴的数量必须是从 ## 0 到 get_numaxes() - 1 的数字。## 你可能需要考虑一些额外的盈余来处理抖动,偏移值是在 0 的上下游动。print(f"axis_{j}_value = {value}")## 打印每个按钮的状态for k in range(joystick.get_numbuttons()): value = joystick.get_button(k)    ## 获取第k个按钮的数值print(f"button_{k}_value = {value}")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/69746.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html css js网页制作成品——HTML+CSS+js茉酸奶的茶网页设计(5页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨‍&#x1f…

在vscode中拉取gitee里的项目并运行

拉取项目: 方法一:vscode点击查看--->终端(或者直接通过快捷键ctrol+ `打开) 在终端内通过cd命令定位到你想存放项目的文件夹 例如:cd h: 通过命令:git clone 地址 例如:git clone newbee-mall-vue-app: 前端代码 等待拉取完成即可在对应文件夹下看到项目啦 方…

cap2:1000分类的ResNet的TensorRT部署指南(python版)

文章目录 1、保存pytorch模型1.1 获取pth模型1.2 建立标杆 2、导出ONNX2.1 导出模型2.2 验证模型2.3 可视化模型结构 3、环境搭建3.1 TensorRT的安装3.2 安装pycuda 4、转换TensorRT引擎4.1 使用trtexec工具完成序列化4.2 使用python的API进行转换 5、推理5.1 推理代码5.2 结果…

Mybatis快速入门与核心知识总结

Mybatis 1. 实体类(Entity Class)1.1 实体类的定义1.2 简化编写1.2.1 Data1.2.2 AllArgsConstructor1.2.3 NoArgsConstructor 2. 创建 Mapper 接口2.1 Param2.2 #{} 占位符2.3 SQL 预编译 3. 配置 MyBatis XML 映射文件(可选)3.1 …

python-leetcode 28.两数相加

题目: 给定两个非空链表,表示两个非负整数,它们每位数字都是按照逆序地方式存储,并且每个节点只能存储一位数字。请将两数相加,并以相同的形式返回一个表示和的链表。 输入:l1 [2,4,3], l2 [5,6,4] 输出…

【云安全】云原生- K8S API Server 未授权访问

API Server 是 Kubernetes 集群的核心管理接口,所有资源请求和操作都通过 kube-apiserver 提供的 API 进行处理。默认情况下,API Server 会监听两个端口:8080 和 6443。如果配置不当,可能会导致未授权访问的安全风险。 8080 端口…

微信小程序配置3 配置sass

1. 在config。json文件里面的setting配置“sass” 2. 改你需要的页面后缀名为scss。 3.查看页面即可看到样式。

16.React学习笔记.React更新机制

一. 发生更新的时机以及顺序## image.png props/state改变render函数重新执行产生新的VDOM树新旧DOM树进行diff计算出差异进行更新更新到真实的DOM 二. React更新流程## React将最好的O(n^3)的tree比较算法优化为O(n)。 同层节点之间相互比较,不跨节点。不同类型的节…

凸包算法—— cad c#二次开发

效果如下&#xff1a; 代码如下&#xff1a; using IfoxDemo; //[assembly: CommandClass(typeof(IFoxDemo.凸包class))]//只允许此类快捷键命令 namespace IFoxDemo {public class 凸包class{public static class 凸包助手{/// <summary>/// 计算点集的凸包并返回多段线…

ctfshow-36D杯

ctfshow-36D杯 给你shell ($obj[secret] ! $flag_md5 ) ? haveFun($flag) : echo "here is your webshell: $shell_path"; 这是个弱比较&#xff0c;输入?give_me_shell前三个是0说明二进制小于1000000就是ASCII的64&#xff0c; 0-32是不可见或非打印字符&…

Linux ARM64 将内核虚拟地址转化为物理地址

文章目录 前言一、通用方案1.1 kern_addr_valid1.2 __pa 二、ARM64架构2.1 AT S1E1R2.2 is_kernel_addr_vaild2.3 va2pa_helper 三、demo演示参考资料 前言 本文介绍一种通用的将内核虚拟地址转化为物理地址的方案以及一种适用于ARM64 将内核虚拟地址转化为物理地址的方案&…

本地部署DeepSeek集成VSCode创建自己的AI助手

文章目录 安装Ollama和CodeGPT安装Ollama安装CodeGPT 下载并配置DeepSeek模型下载聊天模型&#xff08;deepseek-r1:1.5b&#xff09;下载自动补全模型&#xff08;deepseek-coder:1.3b&#xff09; 使用DeepSeek进行编程辅助配置CodeGPT使用DeepSeek模型开始使用AI助手 ✍️相…

云原生AI Agent应用安全防护方案最佳实践(上)

当下&#xff0c;AI Agent代理是一种全新的构建动态和复杂业务场景工作流的方式&#xff0c;利用大语言模型&#xff08;LLM&#xff09;作为推理引擎。这些Agent代理应用能够将复杂的自然语言查询任务分解为多个可执行步骤&#xff0c;并结合迭代反馈循环和自省机制&#xff0…

解锁云电脑爽玩TGA游戏,ToDesk、海马云等多款云电脑游戏横测

作为一名游戏爱好者&#xff0c;我深入研究了云电脑技术在游戏娱乐中的应用。通过对比传统游戏机与云电脑的成本效益&#xff0c;我发现云电脑以其低成本和灵活性脱颖而出。我以自身为例&#xff0c;分析了云电脑如何满足对游戏体验的高要求。在测评中&#xff0c;我选择了ToDe…

新数据结构(4)——Java继承

基本概念 继承的本质&#xff1a;重复使用已经定义好的方法和域&#xff0c;实现代码的重复利用。 使用继承之后&#xff0c;创建的子类可以方便地调用父类中已经定义的方法。 一个继承的例子&#xff1a; 重载和重写 重载 重载&#xff1a;发生在同一个类里&#xff0c;指…

VMware Workstate 的 Ubuntu18 安装 vmware tools(不安装没法共享)

在共享主机路径后&#xff0c;可以在&#xff1a; /mnt/hgfs/下方找到共享的文件。但没有安装vmware tool时是没法共享的。 如何安装vmware tool&#xff0c;网上版本很多。这里记录一下&#xff1a; VMware Workstation 17 Pro&#xff0c;版本&#xff1a;17.6.0 虚拟机系统…

【每日一题 | 2025】2.3 ~ 2.9

个人主页&#xff1a;GUIQU. 归属专栏&#xff1a;每日一题 文章目录 1. 【2.3】P8784 [蓝桥杯 2022 省 B] 积木画2. 【2.4】P8656 [蓝桥杯 2017 国 B] 对局匹配3. 【2.5】[ABC365D] AtCoder Janken 34. 【2.6】P8703 [蓝桥杯 2019 国 B] 最优包含5. 【2.7】P8624 [蓝桥杯 2015…

ARM Cortex-M3/M4 权威指南 笔记【二】架构

一、架构 1.1 架构简介 Cortex-M3/M4 处理器都基于 ARMv7-M 架构。最初的 ARMv7-M 架构是随着 Cortex-M3 处理器一同引入的&#xff0c;而在 Cortex-M4 发布时&#xff0c;架构中又额外增加了新的指令和特性&#xff0c;改进后的架构有时也被称为 ARMV7E-M。要了解 ARM7-M 和…

Java进阶14 TCP日志枚举

Java进阶14 TCP&日志&枚举 一、网络编程TCP Java对基于TCP协议得网络提供了良好的封装&#xff0c;使用Socket对象来代表两端的通信端口&#xff0c;并通过Socket产生IO流来进行网络通信。 1、TCP协议发数据 1.1 构造方法 方法 说明 Socket(InetAddress address…

jenkins备份还原配置文件

下载ThinBackup插件 方式1 从插件市场直接下载 Manage Jenkins->Manage Plugins->可选插件搜索 注意&#xff1a;有时可能因为网络或者版本问题下载不了&#xff0c;好像是默认下载最新版本&#xff0c;可选择手动安装&#xff01; 方式二 手动安装插件 点击查看手…