CN117215528A - 一种动态图元坐标生成方法及系统 - Google Patents
一种动态图元坐标生成方法及系统 Download PDFInfo
- Publication number
- CN117215528A CN117215528A CN202310963585.6A CN202310963585A CN117215528A CN 117215528 A CN117215528 A CN 117215528A CN 202310963585 A CN202310963585 A CN 202310963585A CN 117215528 A CN117215528 A CN 117215528A
- Authority
- CN
- China
- Prior art keywords
- functional block
- primitive
- width
- output
- input
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000006870 function Effects 0.000 claims abstract description 48
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 23
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 6
- 239000003086 colorant Substances 0.000 claims description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明涉及计算机图形技术领域,公开了一种动态图元坐标生成方法及系统包括,获取所有的功能块及每个功能块的所有属性信息,并按照属性的类别,分别存储到输入映射表和输出映射表中,通过功能块的属性信息计算功能块图元的初始宽度、初始高度以及坐标,计算功能块图元的详细描述信息的位置以及输入连接点之间距和输出连接点之间距,定义功能块图元功能,并计算输入连接点和输出连接点的坐标。本方法与现有技术相比,本发明提出的动态坐标生成算法具有良好的动态特性,提升了画布页面的空间利用率及组态的正确性,进而提高了组态软件的组态效率和可靠性。
Description
技术领域
本发明涉及计算机图形技术领域,尤其涉及一种动态图元坐标生成方法及系统。
背景技术
图形组态作为组态软件中用户直接面对的模块,在系统和用户之间起到沟通桥梁的作用,实现用户绘制监控界面,显示监控图形,控制逻辑管理等功能,其重要性不言而喻。用户界面由若干基本图元组成,在图形组态中,图元一般分为两大类:基本图元和动态图元,基本图元是指直线、折线、圆、多边形等;动态图元则是指能够随着外界时间或者输人数据等条件变化而改变自身表现形式的对象。然后,在进行图形组态的过程中,无论如何微调功能块图元的位置,总是会遇到两个功能块图元的连接点无法对齐的情况,特别是当画布中功能块图元个数较多且功能块图元的连接点非常密集的情况下,组态页面的显示效果十分凌乱,容易导致工程人员组态错误,从而引起组态逻辑异常等安全性问题。
发明内容
本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
鉴于上述现有存在的问题,提出了本发明。
因此,本发明提供了一种动态图元坐标生成方法及系统,能够实现实时、自适应的图元坐生成,提供更加灵活和精确的图形显示效果。
为解决上述技术问题,本发明提供如下技术方案,一种动态图元坐标生成方法及系统,包括:获取所有的功能块及每个功能块的所有属性信息,并按照属性的类别,分别存储到输入映射表和输出映射表中,通过功能块的属性信息计算功能块图元的初始宽度、初始高度以及坐标,计算功能块图元的详细描述信息的位置以及输入连接点之间距和输出连接点之间距,定义功能块图元功能,并计算输入连接点和输出连接点的坐标。
作为本发明所述的一种动态图元坐标生成方法及系统的一种优选方案,其中:所述获取所有的功能块及每个功能块的所有属性信息包括优先从固定路径下的custom attr文件中获取,若custom attr文件不存在,则从数据库中获取,数据库中存储的为系统自带的功能块及缺省的属性信息,custom attr文件内的信息是在数据库中功能块及属性的基础上增加的功能块属性信息,可为某个项目自定义配置。
作为本发明所述的一种动态图元坐标生成方法及系统的一种优选方案,其中:所述计算功能块图元的初始宽度、初始高度以及坐标包括图元的宽度的计算方式:
fw=max((max(iw1,iw2,…iwn)+max(ow1,ow2,…,own)+sp),(snw+wd))
其中,fw表示功能块图元的宽度,iw1表示输入属性1的宽度,iw2表示输入属性2的宽度,iwn表示输入属性n的宽度,ow1表示输出属性1的宽度,ow2表示输出属性2的宽度,iwn表示输出属性n的宽度,sp表示输入属性和输出属性之间的横向间距,snw表示功能块名字所占宽度,wd表示功能块名字首端所留余量;
图元的高度的计算方式:
fh=max(max(iac,oac)*mp,mw)
其中,fh表示功能块图元的高度,iac表示输入属性个数,oac表示输出属性个数,mp表示放大倍数,mw表示预先设置的功能块图元的最小高度;
功能块图元左上顶点横坐标的计算方式:
tlx=(fw/2)*(-1)
其中,tlx表示功能块图元左上顶点横坐标的结果,fw表示功能块图元的宽度;
功能块图元左上顶点纵坐标的计算方式:
tly=(fh/2)*(-1)
其中,tly表示功能块图元左上顶点纵坐标的结果,fh表示功能块图元的高度。
作为本发明所述的一种动态图元坐标生成方法及系统的一种优选方案,其中:其特征在于:所述计算功能块图元的详细描述信息的位置包括初始宽度,功能块图元边界的宽度的计算方式:
bfw=fw+pl*2+wsp*2
其中,bfw表示功能块图元边界的宽度,fw表示功能块图元的宽度,pl表示输入连接点或输出连接点的宽度,pl*2表示输入连接点宽度、输出连接点宽度之和,wsp表示输入连接点的左侧预留宽度或输出连接点的右侧预留宽度,wsp*2表示输入连接点左侧预留宽度、输出连接点右侧预留宽度之和;
功能块图元边界的高度的计算方式:
bfh=fh+dst+hsp
其中,bfh表示功能块图元边界的高度,fh表示功能块图元的高度,dst表示功能块图元底部偏移量,hsp表示功能块图元顶部预留高度。
作为本发明所述的一种动态图元坐标生成方法及系统的一种优选方案,其中:所述输入连接点之间距和输出连接点之间距包括功能块图元输入连接点之间距的计算方式:
spi=tomulpitle(fh/(iac+1))
其中,spi表示输入连接点之间的间距,tomultiple()是一个算法模块,算法输出为最接近源数据的n的倍数,fh为功能块图元高度,iac表示输入属性个数;
功能块图元输出连接点之间距的计算方式:
spo=tomulpitle(fh/(oac+1))
其中,spo表示输出连接点之间的间距,tomultiple()是一个算法模块,算法输出为最接近源数据的n的倍数,fh为功能块图元高度,oac表示输出属性个数。
作为本发明所述的一种动态图元坐标生成方法及系统的一种优选方案,其中:所述定义功能块图元功能包括定义功能块图元的线条类型、线条层叠样式表、填充类型、颜色、是否具备抗锯齿,定义功能块名字内容、文字样式、字体样式、旋转角度,定义功能块图元的输入连接点和输出连接点文本内容、文字颜色、字体样式、旋转角度。
作为本发明所述的一种动态图元坐标生成方法及系统的一种优选方案,其中:所述计算输入连接点和输出连接点的坐标包括输入连接点的横坐标的计算方式:
tix=(fw/2+pl)*(-1)
其中,fw表示功能块图元的宽度,pl表示连接点的宽度,系数-1表示横坐标点在坐标原点的负方向;
输入连接点的纵坐标的计算方式:
tiy=(fh/2)*(-1)+spi*idx
其中,fh为功能块图元的高度,系数-1表示在坐标原点的负方向,spi表示输入连接点之间的间距,idx表示从上到下排序输入连接点的索引号;
输出连接点的横坐标的计算方式:
tjx=(fw/2+pl)*(+1)
其中,fw表示功能块图元的宽度,pl表示连接点的宽度,系数+1表示横坐标点在坐标原点的正方向;
输出连接点的纵坐标的计算方式:
tiy=(fh/2)*(-1)+spo*idx
其中,fh为功能块图元的高度,系数-1表示在坐标原点的负方向,spo表示输出连接点之间的间距,idx表示从上到下排序输出连接点的索引号。
本发明的另一个目的是提供一种动态图元坐标生成方法及系统度系统,其能提供了灵活参数设置和算法设计,可以根据具体需求进行定制化的图元坐标生成,用户可以根据自己的需求调整图形的大小、形状、位置等属性,从而实现个性化的图形显示效果。
一种动态图元坐标生成方法及系统的系统,其特征在于:包括视窗模块、图项模块、连接点模块、静态信息模块、动态信息模块、近数算法模块;
视窗模块,此模块用于确定功能块边界的坐标、大小、位置、线性的信息,以便于在移动等情况下重绘或刷新图元时准确定位到图元的位置及区域;另外,在创建具有多个图元的场景中,用于计算整个场景的大小和位置信息。
图项模块,此模块用于确定功能块图元的坐标、大小、位置、线性、形状、是否抗锯齿的信息,用于创建自定义的功能块。此模块会提供一个UI界面供用户操作,使其可以对已有的功能块的外观进行编辑,编辑完成后会将新修改的外观信息更新到对应的配置文件中。
连接点模块,此模块用于确定连接点的位置、输入/输出特性、功能块的属性名称、功能块的属性数量、数据类型的信息;是功能块之间数据逻辑关联的桥梁。
静态信息模块,此模块用于确定功能块名字、功能块用途的文本的位置、内容、字体、颜色、旋转角度等信息,便于组态人员对此功能块进行初步的直观了解。
动态信息模块,此模块用于确定功能块详细描述信息文本的内容、位置、字体、颜色、旋转角度的信息,便于组态人员对此功能块进行深入的了解,此模块内容可进行实时编辑。
近数算法模块,此模块的输入参数有两个s,n,输出参数为d;其中,s表示需要处理的源数据,n表示处理后的数据d应能够对n整除。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现一种动态图元坐标生成方法及系统的步骤。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现一种动态图元坐标生成方法及系统的步骤。
本发明的有益效果:通过功能块图元坐标的动态计算,使图元坐标自动适配画布格栅。画布格栅间距的修改会触发功能块图元坐标重新计算生成,以动态匹配画布格栅间距,使功能块图元连接点坐标与画布格栅间距保持一个比例关系,解决画布格栅布局初始化或调整后,两个功能块图元之间的连接点不能对齐的问题;根据功能块图元输入和输出连接点个数,动态调整连接点之间的间距,以使图元整体高度控制在合理的范围之内,解决在功能块图元输入连接点或输出连接点个数很多时,空间利用率不高的问题;通过动态计算输入和输出连接点信息的宽度以及功能块描述信息的宽度,获取最优值作为功能块图元的宽度,以使功能块图元在画布上的布局合理,解决在画面单个页面上功能块图元分布密集时,画布页面显示凌乱,工程人员组态时容易出错的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1为本发明一个实施例提供的一种动态图元坐标生成方法及系统流程示意图;
图2为本发明一个实施例提供的一种动态图元坐标生成方法及系统算法模块示意图;
图3为本发明一个实施例提供的一种动态图元坐标生成方法及系统的工作流程示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一、第二或第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
实施例1
参照图1,为本发明的第一个实施例,该实施例提供了一种动态图元坐标生成方法及系统,包括:
S1:获取所有的功能块及每个功能块的所有属性信息,并按照属性的类别,分别存储到输入映射表和输出映射表中。
更进一步的,所述获取所有的功能块及每个功能块的所有属性信息包括优先从固定路径下的custom attr文件中获取,若custom attr文件不存在,则从数据库中获取,数据库中存储的为系统自带的功能块及缺省的属性信息,customattr文件内的信息是在数据库中功能块及属性的基础上增加的功能块属性信息,可为某个项目自定义配置。
S2:通过功能块的属性信息计算功能块图元的初始宽度、初始高度以及坐标。
更进一步的,所述计算功能块图元的初始宽度、初始高度以及坐标包括图元的宽度的计算方式:
fw=max((max(iw1,iw2,…iwn)+max(ow1,ow2,…,own)+sp),(snw+wd))
其中,fw表示功能块图元的宽度,iw1表示输入属性1的宽度,iw2表示输入属性2的宽度,iwn表示输入属性n的宽度,ow1表示输出属性1的宽度,ow2表示输出属性2的宽度,iwn表示输出属性n的宽度,sp表示输入属性和输出属性之间的横向间距,snw表示功能块名字所占宽度,wd表示功能块名字首端所留余量;
应说明的是,从步骤1中的功能块输入属性映射表中可以获取到每个输入属性,计算每个输入属性文本所占宽度,比较任意两个输入属性文本宽度,每次比较保留最大宽度,最后获取到的宽度即为最大输入属性所占宽度,从步骤1中的功能块输出属性映射表中获取到每个输出属性,按上述方法计算出最大输出属性所占宽度,然后对最大输入属性宽度、最大输出属性宽度、前两者之间的横向间距求和作为fw1,功能块名字所占宽度与功能块名字首端余量之和作为fw2,最后比较fw1和fw2的大小,若fw1大于fw2,则fw的值为fw1,否则,fw2作为功能块图元的宽度。
图元的高度的计算方式:
fh=max(max(iac,oac)*mp,mw)
其中,fh表示功能块图元的高度,iac表示输入属性个数,oac表示输出属性个数,mp表示放大倍数,mw表示预先设置的功能块图元的最小高度;
功能块图元左上顶点横坐标的计算方式:
tlx=(fw/2)*(-1)
其中,tlx表示功能块图元左上顶点横坐标的结果,fw表示功能块图元的宽度;功能块图元的宽度的一半作为tlx的绝对值,在此基础上乘以-1表示横坐标点在源点的负方向。
功能块图元左上顶点纵坐标的计算方式:
tly=(fh/2)*(-1)
其中,tly表示功能块图元左上顶点纵坐标的结果,fh表示功能块图元的高度,功能块图元的高度的一半作为tly的绝对值,在此基础上乘以-1表示纵坐标点在源点的负方向。
S3:计算功能块图元的详细描述信息的位置以及输入连接点之间距和输出连接点之间距。
更进一步的,所述计算功能块图元的详细描述信息的位置包括初始宽度,功能块图元边界的宽度的计算方式:
bfw=fw+pl*2+wsp*2
其中,bfw表示功能块图元边界的宽度,fw表示功能块图元的宽度,pl表示输入连接点或输出连接点的宽度,pl*2表示输入连接点宽度、输出连接点宽度之和,wsp表示输入连接点的左侧预留宽度或输出连接点的右侧预留宽度,wsp*2表示输入连接点左侧预留宽度、输出连接点右侧预留宽度之和;最后,对功能块图元的宽度、输入连接点宽度、输出连接点宽度、输入连接点左侧预留宽度、输出连接点右侧预留宽度求和作为功能块图元边界的宽度。
功能块图元边界的高度的计算方式:
bfh=fh+dst+hsp
其中,bfh表示功能块图元边界的高度,fh表示功能块图元的高度,dst表示功能块图元底部偏移量,hsp表示功能块图元顶部预留高度,;对功能块图元高度、功能块图元底部偏移量、功能块顶部预留高度求和作为功能块图元边界的高度。
更进一步的是,所述输入连接点之间距和输出连接点之间距包括功能块图元输入连接点之间距的计算方式:
spi=tomulpitle(fh/(iac+1))
其中,spi表示输入连接点之间的间距,tomultiple()是一个算法模块,算法输出为最接近源数据的n的倍数,fh为功能块图元高度,iac表示输入属性个数;
功能块图元输出连接点之间距的计算方式:
spo=tomulpitle(fh/(oac+1))
其中,spo表示输出连接点之间的间距,tomultiple()是一个算法模块,算法输出为最接近源数据的n的倍数,fh为功能块图元高度,oac表示输出属性个数。
S4:定义功能块图元功能,并计算输入连接点和输出连接点的坐标。
更进一步的,所述定义功能块图元功能包括定义功能块图元的线条类型、线条层叠样式表、填充类型、颜色、是否具备抗锯齿,定义功能块名字内容、文字样式、字体样式、旋转角度,定义功能块图元的输入连接点和输出连接点文本内容、文字颜色、字体样式、旋转角度。
更进一步的,所述计算输入连接点和输出连接点的坐标包括输入连接点的横坐标的计算方式:
tjx=(fw/2+pl)*(-1)
其中,fw表示功能块图元的宽度,pl表示连接点的宽度,系数-1表示横坐标点在坐标原点的负方向;
输入连接点的纵坐标的计算方式:
tiy=(fh/2)*(-1)+spi*idx
其中,fh为功能块图元的高度,系数-1表示在坐标原点的负方向,spi表示输入连接点之间的间距,idx表示从上到下排序输入连接点的索引号;
输出连接点的横坐标的计算方式:
tix=(fw/2+pl)*(+1)
其中,fw表示功能块图元的宽度,pl表示连接点的宽度,系数+1表示横坐标点在坐标原点的正方向;
输出连接点的纵坐标的计算方式:
tiy=(fh/2)*(-1)+spo*idx
其中,fh为功能块图元的高度,系数-1表示在坐标原点的负方向,spo表示输出连接点之间的间距,idx表示从上到下排序输出连接点的索引号。
实施例2
参照图2,为本发明的一个实施例,提供了一种动态图元坐标生成方法及系统,为了验证本发明的有益效果,通过实验进行科学论证。
所述算法模块tomultiple(),
步骤1:判断输入参数的有效性,若输入参数无效,则转换为有效参数;
步骤2:通过将输入参数对10求余分离出输入参数的末尾数,记为srcunit;
步骤3:通过将输入参数除10获取到输入参数的除末尾数以外的其他数据,记为srcres;
步骤4:假设近数目标为n,输出结果数据有两部分组成,分别为输出结果的末尾数destunit和输出结果的其他数据srcres,这里输出结果的其他数据与输入参数的其他数据部分相同;
步骤5:若上述srcunit大于n,则destunit的数据为n;
步骤6:若上述srcunit大于0并且小于n,则destunit的数据置为0;
步骤7:若上述srcunit等于0,则destunit的数据保持不变;
步骤8:最后通过计算公式为srcres*10+destunit获取得到输出结果。
参照表1,为本发明的一个实施例,提供了一种动态图元坐标生成方法,为了验证其有益效果,提供了两次实验的对比结果。
表1实验结果数据
由上述表1可知,画布格栅间距调整后,功能块图元坐标重新计算生成,以动态匹配画布格栅间距,使功能块图元连接点坐标与画布格栅间距保持一个比例,以保证两个功能块图元之间的连接点对齐。
应说明的是,以上实施例仅用于说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
实施例3
本发明第三个实施例,其不同于前两个实施例的是:
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置)、便携式计算机盘盒(磁装置)、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编辑只读存储器(EPROM或闪速存储器)、光纤装置以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
实施例4
参照图3,为本发明的一个实施例,提供了一种动态图元坐标生成方法及系统的系统,其特征在于:包括视窗模块、图项模块、连接点模块、静态信息模块、动态信息模块、近数算法模块;
视窗模块,此模块用于确定功能块边界的坐标、大小、位置、线性等信息,以便于在移动等情况下重绘或刷新图元时准确定位到图元的位置及区域;另外,在创建具有多个图元的场景中,用于计算整个场景的大小和位置信息。
图项模块,此模块用于确定功能块图元的坐标、大小、位置、线性、形状、是否抗锯齿等信息,用于创建自定义的功能块。此模块会提供一个UI界面供用户操作,使其可以对已有的功能块的外观进行编辑,编辑完成后会将新修改的外观信息更新到对应的配置文件中。
连接点模块,此模块用于确定连接点的位置、输入/输出特性、功能块的属性名称、功能块的属性数量、数据类型等信息;是功能块之间数据逻辑关联的桥梁。
静态信息模块,此模块用于确定功能块名字、功能块用途等文本的位置、内容、字体、颜色、旋转角度等信息,便于组态人员对此功能块进行初步的直观了解。
动态信息模块,此模块用于确定功能块详细描述信息文本的内容、位置、字体、颜色、旋转角度等信息,便于组态人员对此功能块进行深入的了解,此模块内容可进行实时编辑。
近数算法模块,此模块的输入参数有两个s,n,输出参数为d;其中,s表示需要处理的源数据,n表示处理后的数据d应能够对n整除。
应说明的是,以上实施例仅用于说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种动态图元坐标生成方法及系统,其特征在于:包括,
获取所有的功能块及每个功能块的所有属性信息,并按照属性的类别,分别存储到输入映射表和输出映射表中;
通过功能块的属性信息计算功能块图元的初始宽度、初始高度以及坐标;
计算功能块图元的详细描述信息的位置以及输入连接点之间距和输出连接点之间距;
定义功能块图元功能,并计算输入连接点和输出连接点的坐标。
2.如权利要求1所述的一种动态图元坐标生成方法及系统,其特征在于:所述获取所有的功能块及每个功能块的所有属性信息包括优先从固定路径下的custom attr文件中获取,若custom attr文件不存在,则从数据库中获取,数据库中存储的为系统自带的功能块及缺省的属性信息,custom attr文件内的信息是在数据库中功能块及属性的基础上增加的功能块属性信息,可为某个项目自定义配置。
3.如权利要求2所述的一种动态图元坐标生成方法及系统,其特征在于:所述计算功能块图元的初始宽度、初始高度以及坐标包括图元的宽度的计算方式:
fw=max((max(iw1,iw2,…iwn)+max(ow1,ow2,…,own)+sp),(snw+wd))
其中,fw表示功能块图元的宽度,iw1表示输入属性1的宽度,iw2表示输入属性2的宽度,iwn表示输入属性n的宽度,ow1表示输出属性1的宽度,ow2表示输出属性2的宽度,iwn表示输出属性n的宽度,sp表示输入属性和输出属性之间的横向间距,snw表示功能块名字所占宽度,wd表示功能块名字首端所留余量;
图元的高度的计算方式:
fh=max(max(iac,oac)*mp,mw)
其中,fh表示功能块图元的高度,iac表示输入属性个数,oac表示输出属性个数,mp表示放大倍数,mw表示预先设置的功能块图元的最小高度;
功能块图元左上顶点横坐标的计算方式:
tlx=(fw/2)*(-1)
其中,tlx表示功能块图元左上顶点横坐标的结果,fw表示功能块图元的宽度;
功能块图元左上顶点纵坐标的计算方式:
tly=(fh/2)*(-1)
其中,tly表示功能块图元左上顶点纵坐标的结果,fh表示功能块图元的高度。
4.如权利要求3所述的一种动态图元坐标生成方法及系统,其特征在于:所述计算功能块图元的详细描述信息的位置包括初始宽度,功能块图元边界的宽度的计算方式:
bfw=fw+pl*2+wsp*2
其中,bfw表示功能块图元边界的宽度,fw表示功能块图元的宽度,pl表示输入连接点或输出连接点的宽度,pl*2表示输入连接点宽度、输出连接点宽度之和,wsp表示输入连接点的左侧预留宽度或输出连接点的右侧预留宽度,wsp*2表示输入连接点左侧预留宽度、输出连接点右侧预留宽度之和;
功能块图元边界的高度的计算方式:
bfh=fh+dst+hsp
其中,bfh表示功能块图元边界的高度,fh表示功能块图元的高度,dst表示功能块图元底部偏移量,hsp表示功能块图元顶部预留高度。
5.如权利要求4所述的一种动态图元坐标生成方法及系统,其特征在于:所述输入连接点之间距和输出连接点之间距包括功能块图元输入连接点之间距的计算方式:
spi=tomulpitle(fh/(iac+1))
其中,spi表示输入连接点之间的间距,tomultiple()是一个算法模块,算法输出为源数据的n的倍数,fh为功能块图元高度,iac表示输入属性个数;
功能块图元输出连接点之间距的计算方式:
spo=tomulpitle(fh/(oac+1))
其中,spo表示输出连接点之间的间距,tomultiple()是一个算法模块,算法输出为源数据的n的倍数,fh为功能块图元高度,oac表示输出属性个数。
6.如权利要求5所述的一种动态图元坐标生成方法及系统,其特征在于:所述定义功能块图元功能包括定义功能块图元的线条类型、线条层叠样式表、填充类型、颜色、是否具备抗锯齿,定义功能块名字内容、文字样式、字体样式、旋转角度,定义功能块图元的输入连接点和输出连接点文本内容、文字颜色、字体样式、旋转角度。
7.如权利要求6所述的一种动态图元坐标生成方法及系统,其特征在于:所述计算输入连接点和输出连接点的坐标包括输入连接点的横坐标的计算方式:
tix=(fw/2+pl)*(-1)
其中,fw表示功能块图元的宽度,pl表示连接点的宽度,系数-1表示横坐标点在坐标原点的负方向;
输入连接点的纵坐标的计算方式:
tiy=(fh/2)*(-1)+spi*idx
其中,fh为功能块图元的高度,系数-1表示在坐标原点的负方向,spi表示输入连接点之间的间距,idx表示从上到下排序输入连接点的索引号;
输出连接点的横坐标的计算方式:
tix=(fw/2+pl)*(+1)
其中,fw表示功能块图元的宽度,pl表示连接点的宽度,系数+1表示横坐标点在坐标原点的正方向;
输出连接点的纵坐标的计算方式:
tiy=(fh/2)*(-1)+spo*idx
其中,fh为功能块图元的高度,系数-1表示在坐标原点的负方向,spo表示输出连接点之间的间距,idx表示从上到下排序输出连接点的索引号。
8.一种采用如权利要求1~7任一所述的一种动态图元坐标生成方法及系统的系统,其特征在于:包括视窗模块、图项模块、连接点模块、静态信息模块、动态信息模块、近数算法模块;
所述视窗模块,此模块用于确定功能块边界的坐标、大小、位置、线性的信息,以便于在移动等情况下重绘或刷新图元时准确定位到图元的位置及区域;另外,在创建具有多个图元的场景中,用于计算整个场景的大小和位置信息;
所述图项模块,此模块用于确定功能块图元的坐标、大小、位置、线性、形状、是否抗锯齿的信息,用于创建自定义的功能块。此模块会提供一个UI界面供用户操作,使其可以对已有的功能块的外观进行编辑,编辑完成后会将新修改的外观信息更新到对应的配置文件中;
所述连接点模块,此模块用于确定连接点的位置、输入/输出特性、功能块的属性名称、功能块的属性数量、数据类型的信息;是功能块之间数据逻辑关联的桥梁;
所述静态信息模块,此模块用于确定功能块名字、功能块用途的文本的位置、内容、字体、颜色、旋转角度等信息,便于组态人员对此功能块进行初步的直观了解;
所述动态信息模块,此模块用于确定功能块详细描述信息文本的内容、位置、字体、颜色、旋转角度的信息,便于组态人员对此功能块进行深入的了解,此模块内容可进行实时编辑;
所述近数算法模块,此模块的输入参数有两个s,n,输出参数为d,其中,s表示需要处理的源数据,n表示处理后的数据d应能够对n整除。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310963585.6A CN117215528B (zh) | 2023-08-02 | 2023-08-02 | 一种动态图元坐标生成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310963585.6A CN117215528B (zh) | 2023-08-02 | 2023-08-02 | 一种动态图元坐标生成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117215528A true CN117215528A (zh) | 2023-12-12 |
CN117215528B CN117215528B (zh) | 2024-08-20 |
Family
ID=89034216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310963585.6A Active CN117215528B (zh) | 2023-08-02 | 2023-08-02 | 一种动态图元坐标生成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117215528B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190171425A1 (en) * | 2017-12-04 | 2019-06-06 | Booz Allen Hamilton Inc. | Method and system to provide a generalized framework for dynamic creation of module analytic applications |
CN114398071A (zh) * | 2021-12-30 | 2022-04-26 | 国电南京自动化股份有限公司 | 一种控制系统的控制逻辑组态实现方法及系统 |
CN115116083A (zh) * | 2022-06-22 | 2022-09-27 | 中国电力科学研究院有限公司 | 监控画面电力图元自动标识及修正方法、系统及存储介质 |
CN115249284A (zh) * | 2021-04-26 | 2022-10-28 | 华为云计算技术有限公司 | 可视化视图的构建方法及装置 |
CN116050340A (zh) * | 2023-01-19 | 2023-05-02 | 深圳华大九天科技有限公司 | 版图设计中引脚的自动布局方法、装置及相关产品 |
-
2023
- 2023-08-02 CN CN202310963585.6A patent/CN117215528B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190171425A1 (en) * | 2017-12-04 | 2019-06-06 | Booz Allen Hamilton Inc. | Method and system to provide a generalized framework for dynamic creation of module analytic applications |
CN115249284A (zh) * | 2021-04-26 | 2022-10-28 | 华为云计算技术有限公司 | 可视化视图的构建方法及装置 |
CN114398071A (zh) * | 2021-12-30 | 2022-04-26 | 国电南京自动化股份有限公司 | 一种控制系统的控制逻辑组态实现方法及系统 |
CN115116083A (zh) * | 2022-06-22 | 2022-09-27 | 中国电力科学研究院有限公司 | 监控画面电力图元自动标识及修正方法、系统及存储介质 |
CN116050340A (zh) * | 2023-01-19 | 2023-05-02 | 深圳华大九天科技有限公司 | 版图设计中引脚的自动布局方法、装置及相关产品 |
Non-Patent Citations (1)
Title |
---|
杨勇: "基于图元文件实现红黑树插入删除过程的动态演示", 《电脑知识与技术》, vol. 17, no. 35, 31 December 2021 (2021-12-31), pages 166 - 168 * |
Also Published As
Publication number | Publication date |
---|---|
CN117215528B (zh) | 2024-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Interactive cutaway illustrations of complex 3D models | |
US8760467B2 (en) | Distortion of raster and vector artwork | |
US7095412B2 (en) | Methods and systems for hinting fonts | |
JP6869249B2 (ja) | 2つのタイプのインクベクトルデータを生成して選択的に出力する方法及びシステム | |
US5583978A (en) | Apparatuses and methods for creating and using portable fonted texts with embedded automatically-created font descriptions | |
US7412360B2 (en) | Method and apparatus for shape deformation and placement | |
Bartz et al. | Adapted surface visualization of cerebral aneurysms with embedded blood flow information | |
JPH06505817A (ja) | 画像合成及び処理 | |
JPS6367220B2 (zh) | ||
US9001126B2 (en) | Displaying text on path | |
US11501477B2 (en) | Customizing font bounding boxes for variable fonts | |
KR102132369B1 (ko) | 치아 분할 시스템 및 방법 | |
US20170236020A1 (en) | Method and system for generating and selectively outputting two types of ink vector data | |
US5818459A (en) | Data conversion apparatus and method using control points of a curve | |
Anastacio et al. | Sketch-based parameterization of L-systems using illustration-inspired construction lines and depth modulation | |
WO1996005574A1 (en) | Method for generating curves | |
CN117215528B (zh) | 一种动态图元坐标生成方法及系统 | |
Hu et al. | Parameterizable fonts based on shape components | |
EP0545664A2 (en) | Method and apparatus for generating and displaying freeform strokes | |
US5649081A (en) | Method and apparatus for pattern data processing | |
Zongker et al. | Example-based hinting of true type fonts | |
Ribó et al. | Some algorithms to correct a geometry in order to create a finite element mesh | |
US6941251B1 (en) | Method for transforming CAD model using general function composition mechanism | |
JP4302102B2 (ja) | 3次元設計支援プログラム | |
KR20150021731A (ko) | 캐드객체의 스케일링 조정 장치 및 방법 |
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 |