CN108121541A - 一种向画布添加二维界面组件时的建议位置生成方法 - Google Patents

一种向画布添加二维界面组件时的建议位置生成方法 Download PDF

Info

Publication number
CN108121541A
CN108121541A CN201711395284.9A CN201711395284A CN108121541A CN 108121541 A CN108121541 A CN 108121541A CN 201711395284 A CN201711395284 A CN 201711395284A CN 108121541 A CN108121541 A CN 108121541A
Authority
CN
China
Prior art keywords
painting canvas
interface assembly
coordinate points
suggested position
region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201711395284.9A
Other languages
English (en)
Other versions
CN108121541B (zh
Inventor
林土荣
杨荣得
刘志坚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Futu Network Technology Co Ltd
Original Assignee
Shenzhen Futu Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Futu Network Technology Co Ltd filed Critical Shenzhen Futu Network Technology Co Ltd
Priority to CN201711395284.9A priority Critical patent/CN108121541B/zh
Publication of CN108121541A publication Critical patent/CN108121541A/zh
Application granted granted Critical
Publication of CN108121541B publication Critical patent/CN108121541B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种向画布添加二维界面组件时的建议位置生成方法,其包括:计算画布内容区域;计算画布可见区域与画布内容区域的差值,获取右侧的差值区域与下侧的差值区域;判断界面组件的默认尺寸是否能被右侧的差值区域容纳,若是,则返回建议位置的坐标点为右侧的差值区域的坐标点,若否,则判断界面组件的默认尺寸是否能被下侧的差值区域容纳,若是,则返回建议位置的坐标点为下侧的差值区域的坐标点,若否,则初始化当前坐标点;偏移当前坐标点:为当前界面组件坐标点增加偏移量;使用当前坐标点和界面组件的默认尺寸,作为界面组件的建议位置。本发明能有效简化用户添加界面组件时的操作步骤,有助于用户快速排版界面组件。

Description

一种向画布添加二维界面组件时的建议位置生成方法
技术领域
本发明涉及图形组件添加位置自动生成方法,尤其涉及一种向画布添加二维界面组件时的建议位置生成方法。
背景技术
现有技术中向画布添加界面组件时,界面组件的建议位置算法请参照图1,包括以下4个步骤:1、初始化当前坐标点为current_point(0,0);2、偏移当前坐标点:当前界面组件坐标点current_point增加偏移量offset_point(20,20),如果current_point的x或y超出操作系统的屏幕的最大宽或高,重置x或y为20;3、使用当前坐标点point,及新添加界面组件的默认宽高size,作为建议位置rect;4、再次添加界面组件时,重复2~3步获取建议位置。现有技术中的另一种相近的方案是:在画布的空白区域划分出五个区域,上/下/左/右/全部,用户需要选择一个区域来摆放新添加的界面组件。
而上述两种方式均不能快速的将用户添加的界面组件摆放到相对合适的位置,每次用户添加完界面组件后,基本上都要手动调整界面的位置,不便于操作,且效率低下。
发明内容
本发明要解决的技术问题在于,针对现有技术的不足,提供一种向画布添加二维界面组件时的建议位置生成方法,该方法能有效简化用户添加界面组件时的操作步骤,有助于用户快速排版界面组件。
为解决上述技术问题,本发明采用如下技术方案。
一种向画布添加二维界面组件时的建议位置生成方法,其包括有如下步骤:步骤S1,计算画布内容区域;步骤S2,计算画布可见区域与画布内容区域的差值,获取右侧的差值区域与下侧的差值区域;步骤S3,判断界面组件的默认尺寸是否能被右侧的差值区域容纳,若是,则返回建议位置的坐标点为右侧的差值区域的坐标点,大小为界面组件的默认尺寸,若否,则执行步骤S4;步骤S4,判断界面组件的默认尺寸是否能被下侧的差值区域容纳,若是,则返回建议位置的坐标点为下侧的差值区域的坐标点,大小为界面组件的默认尺寸,若否,则执行步骤S5;步骤S5,初始化当前坐标点;步骤S6,偏移当前坐标点:为当前界面组件坐标点增加偏移量;步骤S7,使用当前坐标点和界面组件的默认尺寸,作为界面组件的建议位置。
优选地,所述画布包括用于摆放多个界面组件的二维坐标区域,画布的左上角为二维坐标的原点,x轴向右为正数,y轴向下为正数。
优选地,所述画布可见区域为画布中用户当前可见的区域。
优选地,所述画布内容区域为画布中已有的多个界面组件的合集。
优选地,所述步骤S6中,为当前界面组件坐标点增加偏移量(20,20)。
优选地,为当前界面组件坐标点增加偏移量时,若当前界面组件坐标点的x或y值超出操作系统屏幕的最大宽或高,则重置x或y为20。
本发明公开的向画布添加二维界面组件时的建议位置生成方法中,在对多个界面组件进行排版时,能够为新添加的界面组件生成建议位置的算法,其中向画布中添加新的界面组件时,计算画布可见区域与画布内容区域的差值,用界面组件的默认尺寸按从左到右,从上到下的顺序来尝试放入差值区域中,只要差值区域能容纳指定尺寸的界面组件,则生成新增界面组件的建议位置。基于上述特性,使得本发明能有效简化用户添加界面组件时的操作步骤,有助于用户快速排版界面组件。
附图说明
图1为现有技术中界面组件的建议位置算法的流程图。
图2为本发明界面组件建议位置生成方法的流程图。
具体实施方式
下面结合附图和实施例对本发明作更加详细的描述。
本发明公开了一种向画布添加二维界面组件时的建议位置生成方法,请参照图2,其包括有如下步骤:
步骤S1,计算画布内容区域;
步骤S2,计算画布可见区域与画布内容区域的差值,获取右侧的差值区域与下侧的差值区域;
步骤S3,判断界面组件的默认尺寸是否能被右侧的差值区域容纳,若是,则返回建议位置的坐标点为右侧的差值区域的坐标点,大小为界面组件的默认尺寸,若否,则执行步骤S4;
步骤S4,判断界面组件的默认尺寸是否能被下侧的差值区域容纳,若是,则返回建议位置的坐标点为下侧的差值区域的坐标点,大小为界面组件的默认尺寸,若否,则执行步骤S5;
步骤S5,初始化当前坐标点;
步骤S6,偏移当前坐标点:为当前界面组件坐标点增加偏移量;
步骤S7,使用当前坐标点和界面组件的默认尺寸,作为界面组件的建议位置。
上述方法中,在对多个界面组件进行排版时,能够为新添加的界面组件生成建议位置的算法,其中向画布中添加新的界面组件时,计算画布可见区域与画布内容区域的差值,用界面组件的默认尺寸按从左到右,从上到下的顺序来尝试放入差值区域中,只要差值区域能容纳指定尺寸的界面组件,则生成新增界面组件的建议位置。基于上述特性,使得本发明能有效简化用户添加界面组件时的操作步骤,有助于用户快速排版界面组件。
本实施例中,所述画布包括用于摆放多个界面组件的二维坐标区域,画布的左上角为二维坐标的原点,x轴向右为正数,y轴向下为正数。所述画布可见区域为画布中用户当前可见的区域。所述画布内容区域为画布中已有的多个界面组件的合集。
作为一种优选方式,所述步骤S6中,为当前界面组件坐标点增加偏移量(20,20)。进一步地,为当前界面组件坐标点增加偏移量时,若当前界面组件坐标点的x或y值超出操作系统屏幕的最大宽或高,则重置x或y为20。
本发明方法在实际应用过程中,可参考如下实施例:
步骤1、计算画布内容区域(workspace_content_rect);
步骤2、计算画布可见区域与画布内容区域的差值,取右侧的差值区域(top_right_delta_rect)与下侧的差值区域(bottom_delta_rect);
步骤3、如果界面组件的默认size能被右侧的差值区域(top_right_delta_rect)容纳,返回建议位置的坐标点为右侧的差值区域(top_right_delta_rect)的坐标点point(top_right_delta_rect.x,top_right_delta_rect.y),大小为界面组件的默认size(w,h),建议位置的矩形区域记为rect(top_right_delta_rect.x,top_right_delta_rect.y,size.w,size.h),否则执行步骤4;
步骤4、如果界面组件的默认size能被下侧的差值区域(bottom_delta_rect)容纳,则返回建议位置的坐标点为下侧的差值区域(bottom_delta_rect)的坐标点point(bottom_delta_rect.x,bottom_delta_rect.y),大小为界面组件的默认size(w,h),建议位置的矩形区域记为rect(bottom_delta_rect.x,bottom_delta_rect.y,size.w,size.h),否则执行步骤5;
步骤5、初始化当前坐标点为current_point(0,0);
步骤6、偏移当前坐标点:当前界面组件坐标点current_point增加偏移量offset_point(20,20),如果current_point的x或y超出操作系统的屏幕的最大宽或高,重置x或y为20;
步骤7、使用当前坐标点point,及新添加界面组件的默认宽高size,作为建议位置rect;
步骤8、再次添加界面组件时,重复步骤6~7获取建议位置。
本发明相比现有技术而言的有益效果在于,通过优化多个界面组件的默认宽高值,可以提高建议位置算法输出结果的可接受度。在满足界面组件内容能正常展示的情况下,按以下规则来设置界面组件的默认值:所有类型的两两界面组件之间,默认宽高值尽可能是整数倍的关系;内容相关度较大的界面组件,宽高值优先考虑用偶数倍的关系来约束。基于上述过程,使得本发明能简化用户添加界面组件操作步骤,辅助用户快速排版界面组件,获得较好的用户预期的界面组件排版效果。
以上所述只是本发明较佳的实施例,并不用于限制本发明,凡在本发明的技术范围内所做的修改、等同替换或者改进等,均应包含在本发明所保护的范围内。

Claims (6)

1.一种向画布添加二维界面组件时的建议位置生成方法,其特征在于,包括有如下步骤:
步骤S1,计算画布内容区域;
步骤S2,计算画布可见区域与画布内容区域的差值,获取右侧的差值区域与下侧的差值区域;
步骤S3,判断界面组件的默认尺寸是否能被右侧的差值区域容纳,若是,则返回建议位置的坐标点为右侧的差值区域的坐标点,大小为界面组件的默认尺寸,若否,则执行步骤S4;
步骤S4,判断界面组件的默认尺寸是否能被下侧的差值区域容纳,若是,则返回建议位置的坐标点为下侧的差值区域的坐标点,大小为界面组件的默认尺寸,若否,则执行步骤S5;
步骤S5,初始化当前坐标点;
步骤S6,偏移当前坐标点:为当前界面组件坐标点增加偏移量;
步骤S7,使用当前坐标点和界面组件的默认尺寸,作为界面组件的建议位置。
2.如权利要求1所述的向画布添加二维界面组件时的建议位置生成方法,其特征在于,所述画布包括用于摆放多个界面组件的二维坐标区域,画布的左上角为二维坐标的原点,x轴向右为正数,y轴向下为正数。
3.如权利要求1所述的向画布添加二维界面组件时的建议位置生成方法,其特征在于,所述画布可见区域为画布中用户当前可见的区域。
4.如权利要求1所述的向画布添加二维界面组件时的建议位置生成方法,其特征在于,所述画布内容区域为画布中已有的多个界面组件的合集。
5.如权利要求2所述的向画布添加二维界面组件时的建议位置生成方法,其特征在于,所述步骤S6中,为当前界面组件坐标点增加偏移量(20,20)。
6.如权利要求5所述的向画布添加二维界面组件时的建议位置生成方法,其特征在于,为当前界面组件坐标点增加偏移量时,若当前界面组件坐标点的x或y值超出操作系统屏幕的最大宽或高,则重置x或y为20。
CN201711395284.9A 2017-12-21 2017-12-21 一种向画布添加二维界面组件时的建议位置生成方法 Active CN108121541B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711395284.9A CN108121541B (zh) 2017-12-21 2017-12-21 一种向画布添加二维界面组件时的建议位置生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711395284.9A CN108121541B (zh) 2017-12-21 2017-12-21 一种向画布添加二维界面组件时的建议位置生成方法

Publications (2)

Publication Number Publication Date
CN108121541A true CN108121541A (zh) 2018-06-05
CN108121541B CN108121541B (zh) 2021-03-19

Family

ID=62230937

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711395284.9A Active CN108121541B (zh) 2017-12-21 2017-12-21 一种向画布添加二维界面组件时的建议位置生成方法

Country Status (1)

Country Link
CN (1) CN108121541B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918014A (zh) * 2019-03-15 2019-06-21 努比亚技术有限公司 页面显示方法、可穿戴设备及计算机可读存储介质
CN111651161A (zh) * 2020-07-16 2020-09-11 深圳市易鸿达软件开发有限公司 图形化界面构建方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080022196A1 (en) * 1997-04-09 2008-01-24 Boye Steven R Method and apparatus for implementing web pages having smart tables
CN103049493A (zh) * 2012-12-07 2013-04-17 北京百度网讯科技有限公司 用于确定目标页面元素的呈现位置的方法、装置与设备
CN103942314A (zh) * 2014-04-22 2014-07-23 重庆市科学技术研究院 一种html文件图文混排显示方法
CN106547560A (zh) * 2016-11-01 2017-03-29 福建星网锐捷通讯股份有限公司 基于安卓系统的文本与其它组件混排方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080022196A1 (en) * 1997-04-09 2008-01-24 Boye Steven R Method and apparatus for implementing web pages having smart tables
CN103049493A (zh) * 2012-12-07 2013-04-17 北京百度网讯科技有限公司 用于确定目标页面元素的呈现位置的方法、装置与设备
CN103942314A (zh) * 2014-04-22 2014-07-23 重庆市科学技术研究院 一种html文件图文混排显示方法
CN106547560A (zh) * 2016-11-01 2017-03-29 福建星网锐捷通讯股份有限公司 基于安卓系统的文本与其它组件混排方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918014A (zh) * 2019-03-15 2019-06-21 努比亚技术有限公司 页面显示方法、可穿戴设备及计算机可读存储介质
CN109918014B (zh) * 2019-03-15 2022-10-04 努比亚技术有限公司 页面显示方法、可穿戴设备及计算机可读存储介质
CN111651161A (zh) * 2020-07-16 2020-09-11 深圳市易鸿达软件开发有限公司 图形化界面构建方法、装置、计算机设备及存储介质
CN111651161B (zh) * 2020-07-16 2023-04-18 深圳市易鸿达软件开发有限公司 图形化界面构建方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN108121541B (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
CN110675471B (zh) 节点连线的生成方法、装置、设备及存储介质
CN108121541A (zh) 一种向画布添加二维界面组件时的建议位置生成方法
EP1530165A3 (en) Method for displaying three-dimensional polygons on screen
CN104134195B (zh) 基于块几何稀疏的图像修复方法
CN109407940A (zh) 一种目标对象选中方法、系统、终端及存储介质
JP2009100233A5 (zh)
CN105068984B (zh) 一种自动拼图排版方法
CN106469138B (zh) 词云的生成方法及装置
CN107170007B (zh) 具有图像散焦功能的图像装置及其产生散焦图像的方法
CN106296593B (zh) 图像恢复方法和装置
CN102339469B (zh) 图像处理方法和装置
US7957594B2 (en) Outline definition apparatus and outline definition method, and image processing apparatus
CN108510441A (zh) 一种基于交错网格的影像多分辨率显示方法
WO2015137358A1 (ja) 画像処理方法、画像処理装置、及びプログラム
CN103077272B (zh) 一种屏蔽罩封装库的创建方法及装置
CN113538252B (zh) 图像矫正方法以及装置
CN106780426A (zh) 一种基于色彩特征模型的集成电路板多形态焊点定位方法
CN108874257B (zh) 一种图片展示方法及装置
CN107516293A (zh) 图像插值方法和图像插值系统
CN105081583B (zh) 一种提高激光切割精度的方法
CN109685875A (zh) 一种gpu线光栅化边界计算优化方法
CN110942417B (zh) 一种gpu纹素取值方法
JP2010026690A (ja) 画像処理装置
EP1791091A3 (en) Method and apparatus for non-shrinking mesh smoothing using local fitting
JP2008305081A (ja) 画像処理プログラム、および画像処理装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant