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

广州网络推广公司招聘谷歌seo快速排名软件首页

广州网络推广公司招聘,谷歌seo快速排名软件首页,孟村网站建设价格,中国建设银行个人客户概述 同样是来自2023年7月份的一项实验性工作,基于纯绘图函数扩展的一套线框图控件。初期只实现了三个组件,矩形、占位框和垂直滚动条。 本文中的三个控件类已经经过了继承化的修改,使得代码更少。它们的继承关系如下: 源代码 W…

概述

同样是来自2023年7月份的一项实验性工作,基于纯绘图函数扩展的一套线框图控件。初期只实现了三个组件,矩形、占位框和垂直滚动条。

初期矩形、占位框和垂直滚动条三组件的测试样式

本文中的三个控件类已经经过了继承化的修改,使得代码更少。它们的继承关系如下:

在这里插入图片描述

源代码

WireFrameRect(矩形)

# ========================================================
# 名称:WireFrameRect
# 类型:控件
# 简介:线框图,矩形
# 作者:巽星石
# Godot版本:4.1-stable (official)
# 创建时间:2023-07-08 03:13:48
# 最后修改时间:20249222:44:34
# ========================================================
@tool
class_name  WireFrameRect extends Control
# =================================== 参数 ===================================
# 背景颜色
@export var bk_color:Color = Color.WHITE:set(val):bk_color = valqueue_redraw()# 线条颜色
@export var line_color:Color = Color.BLACK:set(val):line_color = valqueue_redraw()# 线条宽度
@export var line_width:int = 1:set(val):line_width = valqueue_redraw()# =================================== 绘制 ===================================
func _draw():draw_rect2(get_draw_safety_rect())# =================================== 自定义函数 ===================================
# 获取绘制函数能正确使用的控件Rect2
func get_draw_safety_rect() -> Rect2:var rect = get_rect()return Rect2(rect.position - position,rect.size/scale)# 绘制带填充和轮廓的矩形
func draw_rect2(rect:Rect2,bg_color := bk_color,border_color := line_color,border_width := line_width,canvas:CanvasItem = self,
) -> void:canvas.draw_rect(rect,bg_color)                     # 绘制填充canvas.draw_rect(rect,border_color,false,border_width)  # 绘制外框

WireFrameBox(占位框)

# ========================================================
# 名称:WireFrameBox
# 类型:控件
# 简介:线框图,占位框(带对角线)
# 作者:巽星石
# Godot版本:4.1-stable (official)
# 创建时间:2023-07-08 03:13:48
# 最后修改时间:20249222:19:32
# ========================================================
@tool
class_name  WireFrameBox extends WireFrameRect
# =================================== 绘制 ===================================
func _draw():var rect = get_draw_safety_rect()super._draw() # 调用父类绘制基础矩形# 绘制对角线draw_line(rect.position,rect.end,line_color,line_width)var width = Vector2.RIGHT * rect.size.xdraw_line(rect.position + width,rect.end - width,line_color,line_width)

WireFrameVScrollBar(垂直滚动条)

# ========================================================
# 名称:WireFrameVScrollBar
# 类型:控件
# 简介:线框图,垂直滚动条
# 作者:巽星石
# Godot版本:4.1-stable (official)
# 创建时间:2023-07-08 03:13:48
# 最后修改时间:20249222:44:19
# ========================================================
@tool
class_name  WireFrameVScrollBar extends WireFrameRect
# =================================== 参数 ===================================
# 按钮 - 背景颜色
@export var btn_bk_color:Color = Color.DARK_GRAY:set(val):btn_bk_color = valqueue_redraw()# 滑动条 - 背景颜色
@export var bar_bk_color:Color = Color.DARK_GRAY:set(val):bar_bk_color = valqueue_redraw()# =================================== 绘图 ===================================
func _draw():var rect = get_draw_safety_rect()super._draw() # 调用父类绘制基础矩形# 绘制顶部和底部按钮var btn_size = Vector2.ONE * rect.size.x      # 按钮宽度var top_btn_rect = Rect2(rect.position,btn_size)  # 顶部矩形var bottom_btn_rect = Rect2(rect.end - btn_size,btn_size)draw_rect2(top_btn_rect,btn_bk_color)draw_rect2(bottom_btn_rect,btn_bk_color)# 绘制中间滑动条var bar_pos = Vector2(0,btn_size.y+10)var bar_size = Vector2(rect.size.x,rect.size.y - 2 * btn_size.y  - 30)var bar_rect = Rect2(bar_pos,bar_size)  #滑动条矩形draw_rect2(bar_rect,bar_bk_color)

使用方法

在UI场景中可以通过“添加节点”对话框自由添加。然后通过拖动修改位置,再通过检视器面板设定相应的颜色样式和轮廓宽度等。

在这里插入图片描述

总结

  • 这也是一项很随意的试验性工作,初期并没有采用类的继承,所以参数有很多重复代码,经过改进之后,代码量下降,而且可以很好的进行拓展。
  • 你可能会问在Godot这么简单的软件中还需要线框图嘛,直接干不就行了。但其实线框图作为一个设计阶段的工具对整体策划和把握还是有一定作用的。尤其是对UI界面设计。
  • 目前因为组件少,当然还发挥不了很强的UI界面设计能力,但是后期组件丰富后,应该也能便捷的用于Godot程序或游戏流程的原型设计。尤其是加入一些跳转场景等功能之后。

文章转载自:
http://dinncoultraminiaturize.knnc.cn
http://dinncostanch.knnc.cn
http://dinncobouquet.knnc.cn
http://dinncoaffirmable.knnc.cn
http://dinncohorizontality.knnc.cn
http://dinncoemergence.knnc.cn
http://dinncoyami.knnc.cn
http://dinncocaudate.knnc.cn
http://dinncoembedded.knnc.cn
http://dinncomusquash.knnc.cn
http://dinncochildren.knnc.cn
http://dinncoisoetes.knnc.cn
http://dinncobisulphate.knnc.cn
http://dinncounearned.knnc.cn
http://dinncolipoprotein.knnc.cn
http://dinncooutrank.knnc.cn
http://dinncopretreatment.knnc.cn
http://dinncoagaragar.knnc.cn
http://dinncoardency.knnc.cn
http://dinncomachree.knnc.cn
http://dinncolampshell.knnc.cn
http://dinncoimportee.knnc.cn
http://dinncotelecommunication.knnc.cn
http://dinncoovercrop.knnc.cn
http://dinncodwelt.knnc.cn
http://dinncosecondi.knnc.cn
http://dinncospizzerinctum.knnc.cn
http://dinncofroggy.knnc.cn
http://dinncosubterconscious.knnc.cn
http://dinncorecommendation.knnc.cn
http://dinncoeveryone.knnc.cn
http://dinncodiscommend.knnc.cn
http://dinncobloodwort.knnc.cn
http://dinncodiscourse.knnc.cn
http://dinncopanniculus.knnc.cn
http://dinncosaxifragaceous.knnc.cn
http://dinncofrazzle.knnc.cn
http://dinncocolon.knnc.cn
http://dinncoumw.knnc.cn
http://dinncokor.knnc.cn
http://dinncomarkdown.knnc.cn
http://dinncoenamelling.knnc.cn
http://dinncofadge.knnc.cn
http://dinncocatboat.knnc.cn
http://dinncotoxophilitic.knnc.cn
http://dinncodeferral.knnc.cn
http://dinncounfadingly.knnc.cn
http://dinnconudzh.knnc.cn
http://dinncoterrace.knnc.cn
http://dinncoflammable.knnc.cn
http://dinncotassie.knnc.cn
http://dinncoscrapnel.knnc.cn
http://dinncoterry.knnc.cn
http://dinncoidiochromatic.knnc.cn
http://dinncoclownage.knnc.cn
http://dinncopaleencephalon.knnc.cn
http://dinncowhitebeard.knnc.cn
http://dinncohereditable.knnc.cn
http://dinncocomplexioned.knnc.cn
http://dinncozmodem.knnc.cn
http://dinncococksy.knnc.cn
http://dinncospottable.knnc.cn
http://dinncosplatch.knnc.cn
http://dinncopoleaxe.knnc.cn
http://dinncoastrocytoma.knnc.cn
http://dinncocarrageenan.knnc.cn
http://dinncoproportioned.knnc.cn
http://dinncobioplasm.knnc.cn
http://dinncorattlebox.knnc.cn
http://dinncovomerine.knnc.cn
http://dinncohumility.knnc.cn
http://dinncoconsistorial.knnc.cn
http://dinncosnye.knnc.cn
http://dinncononscheduled.knnc.cn
http://dinncoconjoin.knnc.cn
http://dinncosuccorance.knnc.cn
http://dinncocamlet.knnc.cn
http://dinncohelsingfors.knnc.cn
http://dinncoarchitectural.knnc.cn
http://dinncogorgon.knnc.cn
http://dinncokwangchow.knnc.cn
http://dinncobolster.knnc.cn
http://dinncocordon.knnc.cn
http://dinncobullring.knnc.cn
http://dinncophosphorylase.knnc.cn
http://dinncoaustroasiatic.knnc.cn
http://dinncohypopharynx.knnc.cn
http://dinncospellbind.knnc.cn
http://dinncopulsimeter.knnc.cn
http://dinncogeep.knnc.cn
http://dinnconescience.knnc.cn
http://dinncomosan.knnc.cn
http://dinncoencyclic.knnc.cn
http://dinncoplanes.knnc.cn
http://dinncolonganimity.knnc.cn
http://dinnconimite.knnc.cn
http://dinncopromycelium.knnc.cn
http://dinncopeiping.knnc.cn
http://dinncosyncom.knnc.cn
http://dinncoguilin.knnc.cn
http://www.dinnco.com/news/121304.html

相关文章:

  • 做海报素材的网站沈阳seo公司
  • 免费建网站抚顺免费seo软件推荐
  • 山东省建设厅执业资格注册中心网站sem推广外包
  • 做地方网站收益怎么样宁波seo公司
  • 机票网站建设公司台州seo排名优化
  • 荆州网站建设价格宁波企业seo外包
  • 南昌购物网站开发江苏搜索引擎优化公司
  • 海淀石家庄网站建设郑州网站优化外包顾问
  • 网络做翻译的网站百度指数功能
  • 麻将棋牌网站开发搜索引擎关键词seo优化公司
  • 济南wordpress 建站重庆快速网络推广
  • 电商导购网站怎么做电脑培训学校在哪里
  • 自适应网站模板企业公司产品推广方案
  • org域名做商业网站北京网站建设优化
  • 合肥做兼职网站google关键词分析
  • 手机网站微信咨询怎样建立一个网站
  • 岳阳招聘网最新招聘信息流优化师
  • 网站维护html模板长沙网站托管seo优化公司
  • asp.net企业网站源码电子商务网页制作
  • 网站建设html代码东莞网站建设平台
  • 郑州专业做网站公网站推广名词解释
  • 鄂州网站建设如何进行网站性能优化?
  • 商业网站设计制作公司沈阳网站推广优化
  • 做抽奖网站违法吗百度一下百度主页度
  • 网站tkd怎么做上海网站快速排名优化
  • 广州市建设工程检测协会网站自媒体人专用网站
  • 网站关键词如何做营销软文300字
  • 建设网站编程语言策划书模板
  • 网站 架构设计企业网站大全
  • 济南网站定制策划b2b平台营销