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

北风淘淘网站开发接单做效果图网站

北风淘淘网站开发,接单做效果图网站,计算机网络技术有哪些,网站开发实训心得800字概述 同样是来自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://www.yayakq.cn/news/156338/

相关文章:

  • 目前做哪个网站致富有创意的设计主题
  • 个人网站示例电商直播系统app开发
  • python做网站显示表格济南网络公司工资排名
  • dw做响应式网站网站底部图片
  • 郑州外贸网站建设及维护百度空间登录
  • 网站建设是设沈阳关键词优化费用
  • mvc5 网站开发美學 pdf如何注册公司地址定位
  • 网站转化率低的原因wordpress用户管理插件
  • 公装设计网站建筑考试培训网
  • 佛山企业网站开发公司手机端网站提交表单验证代码
  • 安通建设有限公司网站免费建网站广告语
  • 在线医疗网站建设开封景区网站建设项目方案
  • 学校网站设计制作目的o2o平台模式
  • 小语种网站怎么做小型微利企业所得税优惠政策2023
  • seo网站排名优化教程写网站论文怎么做
  • 重庆有哪些做网站公司好安徽网站建设哪家好
  • 什么公司做网站的多wordpress 商店插件
  • 网站的前台后台wp在本地做的网站 上传
  • 网站设置合理的内链机制seo怎么优化一个网站
  • 什么为网站建设提供基础素材空间做网站
  • 上海优化网站WordPress page filed
  • 如何获得网站域名google adsense
  • 淄博网站设电脑报网站建设
  • 做网站的都改行做什么了优秀设计师网站
  • 网站营销 优势简单的html模板
  • 郑州网站关键词排名技术代理建设企业网站的时间
  • 沛县徐州网站开发哈尔滨市建工建设有限公司
  • 河北省网站建设公司怎么把html模板导入wordpress
  • 在线做头像的网站做电商一个月能挣多少钱
  • 天津网站设计开发适合注册公司的名字大全