真正的二进制时钟

binary_clock的Python项目详细描述


概述

网上有很多binary clocks和手表广告,甚至有可能买到腕表二元表, 例如在Ledwatchstop中。 然而,据我所知,它们只是表面上的双星,测量一天中的时间 按惯例,以小时+分钟为单位。只是这两个数字以某种方式用二进制表示。

模块binary_clock提供了一个我认为真正的二进制时钟的实现。 第一位代表半天,12小时。第二个,一刻钟,6个小时,等等。 每一位代表一个间隔,这个间隔是前一位的一半。

例如,11010000表示12+6+1.5=19.5,即下午7:30。

另一种说法是,0.11010000是一天的零头,用二进制表示。所以,0.11010000=13/16天。

模式

提供两种模式。最简单的选择是使用平面颜色,每一位都显示一个该颜色的正方形。那么二进制时钟 看起来像这样:

Binary clock with flat bits

位应该从左到右,从上到下读取。有了这个4x4格式,它更适合作为一个图标站在桌面上。

如果您想获得更丰富的图像,第二种模式允许您选择任意两个大小相等的图像,一个用于ON位,另一个用于OFF位,获得如下信息:

Binary clock with images

用法

所有代码都在文件binclockWrapper.py中,由命令行脚本binclock.py启动。支持的参数是

geometry
格式axb的强制参数,其中a和b是整数。它提供位网格的大小。
offset
从屏幕右下角提供初始偏移量的字符串。例如,'-1-43'是左侧的1像素 43个以上。时钟是可拖动的,您可以在创建后移动它们。
sidecolor
对于flat模式。 在后一种情况下,side是每边的像素数,而color是十六进制格式为'rrggbb'的字符串。 例如,黄色是“00ffff”。
imageonimageoff
文件名字符串,用于image模式。如果提供,则忽略选项sidecolor
borderwidth
是帧内每个位的宽度,以像素为单位。
bgcolor
是帧的颜色,格式为“rrggbb”。
persistent
是一个标志,如果存在,则强制时钟始终位于其他窗口的顶部。

示例

平面模式:

binclock --color=#30a0ff --side=10 --borderwidth=2 --bgcolor=#808080 --geometry=4x4 --persistent

图像模式:

binclock --imageon=light_green_button.jpg --imageoff=dark_green_button.jpg  --borderwidth=3 --bgcolor=#808080 --geometry=1x12

观测值

每一位的闪烁频率是前一位的两倍。对于16位,最后一个代表2^-16天,大约1.318秒。 所以,16位是最接近典型的小时+分+秒观看的。如果为geometry提供的值包含太多位:

  • The consumption of CPU time will be noticeable
  • The computer/screen might not be fast enough to refresh bits with the speed that would be required.

在我进行的测试中,合理行为的极限似乎是22位左右,但似乎很少 指的是用那么多。

协作

您可能希望改进或添加功能,在这种情况下,您非常欢迎,随时与我联系zeycus@gmail.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java文件分块,获取长度字节   java嵌入式Tomcat不执行jsf页面   java我的数据库中有2个实体,但hibernate返回其中6个。   java如何基于逗号拆分字符串   java取消已经运行的CompletableFutures的预期模式是什么   java如何在informix中从另一个数据库复制表ddl和数据   为什么图片是黑色的?   java根据字符串数组中的单词筛选列表   Java8的集合。平行流有效吗?   Kotlin中的java静态内部类   java如何在GUI中生成一列字符串   javafx如何正确使用高对比度主题?   带空格的javascript Httpurlconnection参数   java如何设置GridBagLayout的约束   java如何在一个线程可能尚未初始化时关闭另一个线程   java将简单时间格式转换为特殊时间格式(hhmmt)   安卓/java阵列重复过滤器的问题   java在队列的链接实现下,入队和出队是如何工作的   java更新sql外键约束