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

网站建设实验目的十大销售管理软件排行榜

网站建设实验目的,十大销售管理软件排行榜,wordpress 搬家 sae,计算机编程培训班文档生成时间:2023-07-02 16:02:42 (老久之前的不成熟版本) 基本信息 项目信息文件名easy_clock.gdGodot版本4.0.3-stable (official)is_tooltrueextendControlclass_nameEasyClock所在项目名称组件库文件路径res://easy_clock.gd绝对路径E:/Godot4.x - 软件/音频…

文档生成时间:2023-07-02 16:02:42
(老久之前的不成熟版本)

基本信息

项目信息
文件名easy_clock.gd
Godot版本4.0.3-stable (official)
is_tooltrue
extendControl
class_nameEasyClock
所在项目名称组件库
文件路径res://easy_clock.gd
绝对路径E:/Godot4.x - 软件/音频可视化/easy_clock.gd
作者巽星石

概述

一个纯粹基于_draw简易参数化时钟组件。可以自由缩放,目前支持各种颜色、字体、字号修改以及开启或关闭绘制数字、刻度。

基于_process刷新有点浪费,后期可能基于Timer进行修改。

变量

变量类型描述
draw_centerbool是否绘制中心
draw_numsbool是否绘制数字
draw_scalesbool是否绘制刻度线
bk_colorColor表盘 - 背景颜色
h_colorColor时针 - 颜色
m_colorColor分针 - 颜色
s_colorColor秒针 - 颜色
center_colorColor中心点 - 颜色
h_widthint时针 - 宽度
m_widthint分针 - 宽度
s_widthint秒针 - 宽度
nums_colorColor数字 - 颜色
font_sizeint数字 - 字体大小
fontSystemFont数字 - 字体

源代码

以下是完整源代码:

# ========================================================
# 名称:EasyClock
# 类型:Control扩展节点
# 简介:利用_draw实现的参数化的指针型钟表组件
# 作者:巽星石
# Godot版本:4.0.3-stable (official)
# 创建时间:2023-07-02 14:36:14
# 最后修改时间:20237216:22:40
# ========================================================
@tool
extends Control
class_name EasyClock
# =================================== 参数 ===================================
# 功能开关
@export_group("switch")
## 是否绘制中心
@export var draw_center:bool = false:set(val):draw_center = valqueue_redraw()
## 是否绘制数字
@export var draw_nums:bool = false:set(val):draw_nums = valqueue_redraw()
## 是否绘制刻度
@export var draw_scales:bool = false:set(val):draw_scales = valqueue_redraw()
# 颜色
@export_group("Color")
## 表盘 - 颜色
@export var bk_color:Color = Color("#ccc"):set(val):bk_color = valqueue_redraw()
## 时针 - 颜色
@export var h_color:Color = Color("#444"):set(val):h_color = valqueue_redraw()
## 分针 - 颜色
@export var m_color:Color = Color("#444"):set(val):m_color = valqueue_redraw()
## 秒针 - 颜色
@export var s_color:Color = Color("#444"):set(val):s_color = valqueue_redraw()
## 中心点 - 颜色
@export var center_color:Color = Color("#ccc"):set(val):center_color = valqueue_redraw()
# 宽度
@export_group("Width")
## 时针 - 宽度
@export var h_width:int = 10:set(val):h_width = valqueue_redraw()
## 分针 - 宽度
@export var m_width:int = 5:set(val):m_width = valqueue_redraw()
## 秒针 - 宽度
@export var s_width:int = 3:set(val):s_width = valqueue_redraw()
@export_group("nums")
## 表盘数字 - 颜色
@export var nums_color:Color = Color("#ccc"):set(val):nums_color = valqueue_redraw()
## 默认字体大小
@export var font_size = 14:set(val):font_size = valqueue_redraw()
## 默认字体	
@export var font:SystemFont:set(val):font = valqueue_redraw()# =================================== 动态计算参数 ===================================
var center = Vector2(100,100) # 表盘中心
var r = 80 # 表盘半径
var h_r = 60 # 时针长度
var m_r = 50 # 分针长度
var s_r = 40 # 秒针长度func _ready():resized.connect(func():calc())calc()queue_redraw()# 重新计算
func calc():center = get_global_rect().get_center()r = get_global_rect().size.y/2h_r = r * 0.82m_r = r * 0.85s_r = r * 0.9func _process(delta):queue_redraw()func _draw():# 获取当前时间信息var dict = Time.get_datetime_dict_from_system()# 绘制表盘draw_circle(center,r,bk_color)draw_circle(center,r * 0.8,bk_color.darkened(0.2))draw_circle(center,r * 0.8 - 10,bk_color.darkened(0.15))# 绘制日期var date := "%d.%d.%d" % [dict["year"],dict["month"],dict["day"]]draw_string(font, Vector2.DOWN * r * 0.4 + center - Vector2(font_size * 2,-font_size/2),date,HORIZONTAL_ALIGNMENT_CENTER,-1,font_size * 1.5,nums_color)# 绘制时间# 绘制数字if draw_nums:for i in range(1,13):var f_size = font_size if i % 3 != 0 else font_size * 2draw_string(font, (Vector2.UP * (r - f_size/1.25)).rotated((2* PI /12) * i) + center - Vector2(f_size/3,-f_size/2),str(i),HORIZONTAL_ALIGNMENT_CENTER,-1,f_size,nums_color)# 绘制draw_line(center,(Vector2.UP * h_r).rotated((2* PI /12) * dict["hour"]) + center,h_color,h_width)draw_line(center,(Vector2.UP * m_r).rotated((2* PI /60) * dict["minute"]) + center,m_color,m_width)draw_line(center,(Vector2.UP * s_r).rotated((2* PI /60) * dict["second"]) + center,s_color,s_width)# 绘制中心if draw_center:draw_circle(center,r * 0.1,center_color)draw_circle(center,r * 0.1 - 8,center_color.darkened(0.2))draw_circle(center,5,center_color.darkened(0.3))# 绘制刻度线if draw_scales:for i in range(60):draw_line((Vector2.UP * r * 0.9).rotated((2* PI /60) * i) + center ,(Vector2.UP * r * 0.95).rotated((2* PI /60) * i) + center,s_color,1)
http://www.cadmedia.cn/news/13298.html

相关文章:

  • 杭州富阳区网站建设公司广州seo关键词优化外包
  • 学生登录入口旅游企业seo官网分析报告
  • 随县最新疫情最新消息seo搜索引擎优化平台
  • 小程序开发工具代理平台搜索引擎优化的完整过程
  • 河北网站建设多少钱关键词排名快照优化
  • 湖北黄石网站建设推广app赚佣金
  • 新闻网站建设毕业设计如何做网站关键词优化
  • 好看的论坛网站模板北京发生大事了
  • 灯饰网站建设网络营销活动方案
  • 外贸网站建设哪里做得好上海关键词优化方法
  • 聊城网站建设服务好长春做网络优化的公司
  • 网站策划包括哪些内容网站软件下载大全
  • 东阳建设网站谷歌搜索引擎免费入口
  • 可以做用户调研的网站深圳网站建设开发公司
  • 国家税务总局网上办税服务平台快速网站排名优化
  • 加工平台校准系统seo网站培训班
  • 平台网站建设需要什么技术企业推广宣传方式
  • 福州网站建设网络营销平台
  • 南昌专业网站建设百度搜索引擎营销如何实现
  • 西安做网站收费价格常见的网络营销策略都有哪些
  • 网站建设规划书百度文库seo排名工具给您好的建议
  • 网站你懂我意思正能量晚上不用下载网络推广培训去哪里好
  • 平面设计图形北京搜索引擎优化seo专员
  • 德阳市建设管理一体化平台网站市场推广方案怎么做
  • 定制网站建设公司排行大兴今日头条新闻
  • 个人网站设计毕业论文10000字营销推广方案怎么写
  • ps做网站导航东莞做网络推广的公司
  • 百度系优化保定百度推广优化排名
  • 网站制作价格甄选乐云践新数字营销软件
  • 网站排名推广软件培训机构招生方案模板