CN112669410A - 线宽调整方法、装置、计算机设备和存储介质 - Google Patents
线宽调整方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112669410A CN112669410A CN202011612874.4A CN202011612874A CN112669410A CN 112669410 A CN112669410 A CN 112669410A CN 202011612874 A CN202011612874 A CN 202011612874A CN 112669410 A CN112669410 A CN 112669410A
- Authority
- CN
- China
- Prior art keywords
- coordinate
- distance
- space point
- point
- vertex
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请涉及一种线宽调整方法、装置、计算机设备和存储介质。所述方法包括:获取第一空间点坐标和第二空间点坐标;根据第一空间点坐标和第二空间点坐标,确定与参考点对应的目标平面;在目标平面内,根据预设宽度值将第一空间点坐标和第二空间点坐标进行等距平移,得到平移后的顶点坐标;根据第一距离、第二距离和预设宽度值,计算生成各个顶点坐标对应的调节系数;根据各个顶点坐标对应的调节系数调节各个顶点坐标,得到对应的调节坐标,使第一空间点坐标距离相邻调节坐标的距离,与第二空间点距离相邻调节坐标的距离相等。基于上述方法使用简单的面方式模拟线条宽度的效果,消除线条两端宽度不一致的问题,从而使线条显示更自然、真实。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种线宽调整方法、装置、计算机设备和存储介质。
背景技术
OpenGL(Open Graphics Library,开放图形库)使用glLineWidth(指定栅格化线条的宽度)方法设置线宽的范围只有0到10个单位,而基于OpenGLES(OpenGL for EmbeddedSystems,是OpenGL三维图形API的子集)2.0/3.0规范的Webgl(Web Graphics Library,3D绘图协议)指出,对线宽的设置只允许1个单位。所以渲染有宽度的线条时,必须寻找一种替代方案来实现线条的显示。常见的方式是使用平面来模拟线条宽度,基于透视投影模式,渲染场景模型最终会呈现近大远小的效果,无法令投影成像的远近两端宽度保持一致。
发明内容
为了解决上述技术问题,本申请提供了一种线宽调整方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种线宽调整方法,包括:
获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
可选地,所述根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,包括:
根据所述第一空间点坐标和所述第二空间点坐标,生成直线向量;
根据所述直线向量,确定与所述参考点对应的所述目标平面。
可选地,所述根据所述直线向量,确定与所述参考点对应的所述目标平面,包括:
根据所述第一空间点、所述第二空间点和所述参考点,生成第一向量;
根据所述直线向量与所述第一向量的向量叉乘,生成方向向量;
根据所述方向向量和所述直线向量,确定所述目标平面。
可选地,所述保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标,包括:
在所述目标平面内,根据所述方向向量,确定与所述第一空间点坐标相距所述预设宽度值的第一顶点坐标和第二顶点坐标;
在所述目标平面内,根据所述方向向量,确定与所述第二空间点坐标相距所述预设宽度值的第三顶点坐标和第四顶点坐标。
可选地,所述根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,包括:
当所述第一距离和所述第二距离均小于或等于预设距离时,根据所述第一距离和所述预设宽度值的乘积,得到所述第一顶点坐标对应的第一调节系数,以及第二顶点坐标对应的第二调节系数;
根据所述第二距离和所述预设宽度值的乘积,得到与所述第三顶点坐标对应的第三调节系数,以及所述第四顶点坐标对应的第四条件系数。
可选地,所述根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,包括:
当所述第一距离或所述第二距离大于所述预设距离时,根据预设投影区域与所述直线向量,确定投影点坐标;
根据所述投影点坐标和所述预设宽度值,确定顶点坐标。
第二方面,本申请提供了一种线宽调整装置,包括:
坐标点获取模块,用于获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
目标平面确定模块,用于根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
顶点坐标确定模块,用于在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
调节系数获取模块,用于根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
调节模块,用于根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
上述线宽调整方法、装置、计算机设备和存储介质,所述方法包括:获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。基于上述方法使用简单的面方式模拟线条宽度的效果,并在透视投影模式下,消除线条两端宽度不一致的问题,从而使线条显示更自然、真实。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中线宽调整方法的流程示意图;
图2为一个实施例中第一空间点和第二空间点的结构示意图;
图3为一个实施例中第一空间点和第二空间点的平移效果示意图;
图4为一个实施例中一种投影效果示意图;
图5为一个实施例中一种线宽调整装置的结构示意图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在一个实施例中,图1为一个实施例中一种线宽调整方法的流程示意图,参照图1,提供了一种线宽调整方法,该线宽调整方法具体包括如下步骤:
步骤S210,获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标。
具体地,空间点坐标具体为相对于空间直角坐标系中的坐标,空间点坐标包括横坐标、纵坐标和竖坐标,以此确定第一空间点和第二空间点在空间中的位置所在。
步骤S220,根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点。
具体地,参考图2,参考点为透视投影模式下的相机对应的空间点,两个空间点连接可形成直线向量,经过该直线向量的平面有很多,因此,需要借助相机相对于该直线向量的位置关系,最终确定经过该直线向量的目标平面。其中,目标平面的法线为相机到第一空间点或第二空间点的向量,或目标平面的法线为相机到该直线向量上任意一点的向量。
步骤S230,在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标。
具体地,参考图3,预设宽度值为提前预设的数值,可根据实际情况自定义调节,预设宽度值记为W。确定经过第一空间点和第二空间点的目标平面后,在目标平面内,将第一空间点和第二空间点保持等距的情况下,朝着与直线向量垂直的方向平移预设宽度值,即将第一空间点和第二空间点形成的直线向量朝着与直线向量垂直的方向向左平移或向右平移,以此得到以直线向量为中心线的矩形,矩形的四个顶点对应的坐标为顶点坐标,平移后得到顶点坐标为二维坐标。
步骤S240,根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离。
具体地,参考图3,在透视投影模式下,投影后的图像会出现近大远小的效果,例如,将第一空间点记为A点,第二空间点记为B点,将直线向量进行平移后得到的顶点包括第一顶点P0、P1、P2、P3,A点为P0和P1的中点,B点为P2和P3的中点,在透视投影模式下,投影后的P0到P1的距离小于P2到P3的距离,即出现近大远小的效果。
将相机所在的空间点记为C点,则第一距离为第一空间点至相机的距离,记为AC,第二距离为第二空间点至相机的距离,记为BC,P0点对应的调节系数为AC×W,P1点对应的调节系数为-AC×W,P2点对应的调节系数为-BC×W,P3点对应的调节系数为BC×W。
步骤S250,根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
具体地,各个顶点坐标进行调节后的调节坐标为第一空间点或第二空间点与各个顶点坐标对应的调节系数之和,P0点对应的调节坐标为A+AC×W,P1点对应的调节坐标为A-AC×W,P2点对应的调节坐标为B-BC×W,P3点对应的调节坐标为B+BC×W,以此实现对各个顶点坐标进行调节,令A点至调节后的P0点或P1点的距离与B点至调节后的P2点或P3点的距离相等,或经过坐标调节后的P0至P1的距离与P2至P3的距离相等,以此消除线条两端宽度不一致的问题,避免投影画面出现近大远小的问题。
在一个实施例中,根据所述第一空间点、所述第二空间点和所述参考点,生成第一向量;根据所述直线向量与所述第一向量的向量叉乘,生成方向向量;根据所述方向向量和所述直线向量,确定所述目标平面。
具体地,第一向量为直线向量上任意一点到相机的向量,在本实施例中,第一向量为第一空间点或第二空间点到相机的向量,即第一向量为所要确定的目标平面的法线向量,将第一向量记为或此处采用作为第一向量,根据所述直线向量与所述第一向量的向量叉乘,即以此得到方向向量该方向向量分别与直线向量、第一向量垂直,即方向向量所在的平面为目标平面。
在一个实施例中,在所述目标平面内,根据所述方向向量,确定与所述第一空间点坐标相距所述预设宽度值的第一顶点坐标和第二顶点坐标;在所述目标平面内,根据所述方向向量,确定与所述第二空间点坐标相距所述预设宽度值的第三顶点坐标和第四顶点坐标。
具体地,在目标平面内容,将第一空间点沿着方向向量的方向平移预设宽度值W后得到第一顶点坐标P0,将第一空间点沿着方向向量的方向平移-W后得到第二顶点坐标P1,即将第一空间点沿着方向向量的反方向平移W后得到第二顶点坐标。将第二空间点沿着方向向量的反方向平移W后得到第三顶点坐标P2,即第二空间点沿着方向向量移动-W后得到第三顶点坐标P2,将第二空间点沿着方向向量的方向平移W后得到第四顶点坐标P3。在平移过程中,使A点和B点之间的距离保持不变,即将直线向量沿着方向向量的方向进行平移。
在一个实施例中,当所述第一距离和所述第二距离均小于或等于预设距离时,根据所述第一距离和所述预设宽度值的乘积,得到所述第一顶点坐标对应的第一调节系数,以及第二顶点坐标对应的第二调节系数;根据所述第二距离和所述预设宽度值的乘积,得到与所述第三顶点坐标对应的第三调节系数,以及所述第四顶点坐标对应的第四条件系数。
具体地,根据预设距离表示预设投影区域的投影范围,当第一距离和第二距离均小于或等于预设距离时,表示第一空间点和第二空间点均位于投影平面内,第一空间点和第二空间点并未超出预设投影区域的投影范围,根据第一距离、预设宽度值、方向向量和焦距的乘积,得到第一调节系数和第二调节系数,即第一顶点坐标P0对应的第一调节系数为第二顶点坐标P1对应的第二调节系数为根据第二距离、预设宽度值和方向向量的乘积,得到第三调节系数和第四调节系数,即第三顶点坐标P2对应的第三调节系数为第四顶点坐标P3对应的第四调节系数为其中,焦距为比例调节单位,本实施例中的焦距取值为1,可根据实际情况进行自定义,焦距取值越大,调节比例越大,对应的调节坐标与顶点坐标差距越大。
在一个实施例中,当所述第一距离或所述第二距离大于所述预设距离时,根据预设投影区域与所述直线向量,确定投影点坐标;根据所述投影点坐标和所述预设宽度值,确定顶点坐标。
具体地,当所述第一距离或所述第二距离大于所述预设距离时,表示第一空间点或第二空间点超出预设投影区域的投影范围,若第一空间点至相机的第一距离大于预设距离,则将直线向量与预设投影区域的交点坐标作为投影点坐标,将投影点坐标作为新的第一空间点坐标,根据新的第一空间点坐标和第二空间点坐标重新执行确定顶点坐标的步骤,以此,根据新的第一空间点消除线条两端的宽度不一致的问题。
在一个具体实施例中,参照图4,当第一空间点与相机之间的第一距离大于预设距离,第二空间点与相机之间的第二距离小于预设距离时,根据直线向量与预设投影区域的交点,得到投影点P,根据投影点P和第二空间点B,重新形成新的直线向量,根据新的直线向量按照预设宽度值进行平移,得到新的顶点坐标,根据投影点和相机的距离重新计算各个顶点坐标对应的调节系数,按照调节系数对各个顶点坐标进行调节,继而得到调节后的调节坐标,调节后的投影点P至P0点之间的距离和第二空间点至P3点的距离相等,实现重置边线的宽度,达到线条两端宽度相等的效果。
图1为一个实施例中线宽调整方法的流程示意图。应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种线宽调整装置,包括:
坐标点获取模块310,用于获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
目标平面确定模块320,用于根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
顶点坐标确定模块330,用于在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
调节系数获取模块340,用于根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
调节模块350,用于根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
在一个实施例中,所述目标平面确定模块320包括:
直线向量生成单元,用于根据所述第一空间点坐标和所述第二空间点坐标,生成直线向量;
平面确定单元,用于根据所述直线向量,确定与所述参考点对应的所述目标平面。
在一个实施例中,所述目标平面确定模块320还包括:
第一向量计算单元,用于根据所述第一空间点、所述第二空间点和所述参考点,生成第一向量;
第一向量计算单元,用于根据所述直线向量与所述第一向量的向量叉乘,生成方向向量;
目标确定单元,用于根据所述方向向量和所述直线向量,确定所述目标平面。
在一个实施例中,所述顶点坐标确定模块330包括:
第一顶点计算单元,用于在所述目标平面内,根据所述方向向量,确定与所述第一空间点坐标相距所述预设宽度值的第一顶点坐标和第二顶点坐标;
第二顶点计算单元,用于在所述目标平面内,根据所述方向向量,确定与所述第二空间点坐标相距所述预设宽度值的第三顶点坐标和第四顶点坐标。
在一个实施例中,所述调节系数获取模块340包括:
第一系数计算单元,用于当所述第一距离和所述第二距离均小于或等于预设距离时,根据所述第一距离和所述预设宽度值的乘积,得到所述第一顶点坐标对应的第一调节系数,以及第二顶点坐标对应的第二调节系数;
第二系数计算单元,用于根据所述第二距离和所述预设宽度值的乘积,得到与所述第三顶点坐标对应的第三调节系数,以及所述第四顶点坐标对应的第四条件系数。
在一个实施例中,所述调节系数获取模块340还包括:
投影点确定单元,用于当所述第一距离或所述第二距离大于所述预设距离时,根据预设投影区域与所述直线向量,确定投影点坐标;
第三系数计算单元,用于根据所述投影点坐标和所述预设宽度值,确定顶点坐标。
图6示出了一个实施例中计算机设备的内部结构图。该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现线宽调整方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行线宽调整方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的线宽调整装置可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。计算机设备的存储器中可存储组成该线宽调整装置的各个程序模块,比如,图5所示的坐标点获取模块310、目标平面确定模块320、顶点坐标确定模块330、调节系数获取模块340和调节模块350。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的线宽调整方法中的步骤。
图6所示的计算机设备可以通过如图5所示的线宽调整装置中的坐标点获取模块310执行获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标。计算机设备可通过目标平面确定模块320执行根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点。计算机设备可通过顶点坐标确定模块330执行在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标。计算机设备可通过调节系数获取模块340执行根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离。计算机设备可通过调节模块350执行根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述第一空间点坐标和所述第二空间点坐标,生成直线向量;根据所述直线向量,确定与所述参考点对应的所述目标平面。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据所述第一空间点、所述第二空间点和所述参考点,生成第一向量;根据所述直线向量与所述第一向量的向量叉乘,生成方向向量;根据所述方向向量和所述直线向量,确定所述目标平面。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在所述目标平面内,根据所述方向向量,确定与所述第一空间点坐标相距所述预设宽度值的第一顶点坐标和第二顶点坐标;在所述目标平面内,根据所述方向向量,确定与所述第二空间点坐标相距所述预设宽度值的第三顶点坐标和第四顶点坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当所述第一距离和所述第二距离均小于或等于预设距离时,根据所述第一距离和所述预设宽度值的乘积,得到所述第一顶点坐标对应的第一调节系数,以及第二顶点坐标对应的第二调节系数;根据所述第二距离和所述预设宽度值的乘积,得到与所述第三顶点坐标对应的第三调节系数,以及所述第四顶点坐标对应的第四条件系数。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当所述第一距离或所述第二距离大于所述预设距离时,根据预设投影区域与所述直线向量,确定投影点坐标;根据所述投影点坐标和所述预设宽度值,确定顶点坐标。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据所述第一空间点坐标和所述第二空间点坐标,生成直线向量;根据所述直线向量,确定与所述参考点对应的所述目标平面。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据所述第一空间点、所述第二空间点和所述参考点,生成第一向量;根据所述直线向量与所述第一向量的向量叉乘,生成方向向量;根据所述方向向量和所述直线向量,确定所述目标平面。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在所述目标平面内,根据所述方向向量,确定与所述第一空间点坐标相距所述预设宽度值的第一顶点坐标和第二顶点坐标;在所述目标平面内,根据所述方向向量,确定与所述第二空间点坐标相距所述预设宽度值的第三顶点坐标和第四顶点坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当所述第一距离和所述第二距离均小于或等于预设距离时,根据所述第一距离和所述预设宽度值的乘积,得到所述第一顶点坐标对应的第一调节系数,以及第二顶点坐标对应的第二调节系数;根据所述第二距离和所述预设宽度值的乘积,得到与所述第三顶点坐标对应的第三调节系数,以及所述第四顶点坐标对应的第四条件系数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当所述第一距离或所述第二距离大于所述预设距离时,根据预设投影区域与所述直线向量,确定投影点坐标;根据所述投影点坐标和所述预设宽度值,确定顶点坐标。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指示相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍速率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种线宽调整方法,其特征在于,所述方法包括:
获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,包括:
根据所述第一空间点坐标和所述第二空间点坐标,生成直线向量;
根据所述直线向量,确定与所述参考点对应的所述目标平面。
3.根据权利要求2所述的方法,其特征在于,所述根据所述直线向量,确定与所述参考点对应的所述目标平面,包括:
根据所述第一空间点、所述第二空间点和所述参考点,生成第一向量;
根据所述直线向量与所述第一向量的向量叉乘,生成方向向量;
根据所述方向向量和所述直线向量,确定所述目标平面。
4.根据权利要求3所述的方法,其特征在于,所述保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标,包括:
在所述目标平面内,根据所述方向向量,确定与所述第一空间点坐标相距所述预设宽度值的第一顶点坐标和第二顶点坐标;
在所述目标平面内,根据所述方向向量,确定与所述第二空间点坐标相距所述预设宽度值的第三顶点坐标和第四顶点坐标。
5.根据权利要求4所述的方法,其特征在于,所述根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,包括:
当所述第一距离和所述第二距离均小于或等于预设距离时,根据所述第一距离和所述预设宽度值的乘积,得到所述第一顶点坐标对应的第一调节系数,以及第二顶点坐标对应的第二调节系数;
根据所述第二距离和所述预设宽度值的乘积,得到与所述第三顶点坐标对应的第三调节系数,以及所述第四顶点坐标对应的第四条件系数。
6.根据权利要求4所述的方法,其特征在于,所述根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,包括:
当所述第一距离或所述第二距离大于所述预设距离时,根据预设投影区域与所述直线向量,确定投影点坐标;
根据所述投影点坐标和所述预设宽度值,确定顶点坐标。
7.一种线宽调整装置,其特征在于,所述线宽调整装置包括:
坐标点获取模块,用于获取第一空间点坐标和第二空间点坐标,所述第一空间点坐标为第一空间点对应的坐标,所述第二空间点坐标为第二空间点对应的坐标;
目标平面确定模块,用于根据所述第一空间点坐标和所述第二空间点坐标,确定与参考点对应的目标平面,所述目标平面包含所述第一空间点和所述第二空间点;
顶点坐标确定模块,用于在所述目标平面内,保持所述第一空间点坐标和所述第二空间点坐标之间的距离不变,根据预设宽度值将所述第一空间点坐标和所述第二空间点坐标进行平移,得到平移后的顶点坐标;
调节系数获取模块,用于根据第一距离、第二距离和所述预设宽度值,计算生成各个所述顶点坐标对应的调节系数,所述第一距离为所述第一空间点至所述参考点之间的距离,所述第二距离为所述第二空间点至所述参考点之间的距离;
调节模块,用于根据各个所述顶点坐标对应的调节系数调节各个所述顶点坐标,得到对应的调节坐标,使所述第一空间点坐标距离相邻调节坐标的距离,与所述第二空间点距离相邻调节坐标的距离相等。
8.根据权利要求7所述的线宽调整装置,其特征在于,所述目标平面确定模块包括:
直线向量生成单元,用于根据所述第一空间点坐标和所述第二空间点坐标,生成直线向量;
平面确定单元,用于根据所述直线向量,确定与所述参考点对应的所述目标平面。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011612874.4A CN112669410B (zh) | 2020-12-30 | 2020-12-30 | 线宽调整方法、装置、计算机设备和存储介质 |
PCT/CN2021/136348 WO2022143055A1 (zh) | 2020-12-30 | 2021-12-08 | 线宽调整方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011612874.4A CN112669410B (zh) | 2020-12-30 | 2020-12-30 | 线宽调整方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112669410A true CN112669410A (zh) | 2021-04-16 |
CN112669410B CN112669410B (zh) | 2023-04-18 |
Family
ID=75411219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011612874.4A Active CN112669410B (zh) | 2020-12-30 | 2020-12-30 | 线宽调整方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112669410B (zh) |
WO (1) | WO2022143055A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486624A (zh) * | 2021-07-01 | 2021-10-08 | 研祥智能科技股份有限公司 | 实现pcb走线自动等间距的方法、装置及电子设备 |
WO2022143055A1 (zh) * | 2020-12-30 | 2022-07-07 | 广东三维家信息科技有限公司 | 线宽调整方法、装置、计算机设备和存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117685995B (zh) * | 2024-02-02 | 2024-04-09 | 腾讯科技(深圳)有限公司 | 道路处理方法、装置、计算机设备和计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6441816B1 (en) * | 1999-12-29 | 2002-08-27 | Intel Corporation | Method for modeling and rendering complex surfaces using local height maps |
US20050212806A1 (en) * | 2002-05-10 | 2005-09-29 | Metod Koselj | Graphics engine converting individual commands to spatial image information, and electrical device and memory incorporating the graphics engine |
CN101950427A (zh) * | 2010-09-08 | 2011-01-19 | 东莞电子科技大学电子信息工程研究院 | 一种适用于移动终端的矢量线段轮廓化方法 |
US20120287135A1 (en) * | 2011-05-12 | 2012-11-15 | Research In Motion Limited | Method and device for rendering areas bounded by curves using a gpu |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7057615B2 (en) * | 2001-06-28 | 2006-06-06 | Microsoft Corporation | Method and system for representing and displaying digital ink |
JP4199159B2 (ja) * | 2004-06-09 | 2008-12-17 | 株式会社東芝 | 描画処理装置、描画処理方法、及び描画処理プログラム |
CN102117501B (zh) * | 2009-12-31 | 2014-06-11 | 厦门高德软件有限公司 | 一种3d线条绘制方法及装置 |
CN108830781B (zh) * | 2018-05-24 | 2022-05-24 | 桂林航天工业学院 | 一种透视变换模型下的宽基线影像直线匹配方法 |
CN111127297B (zh) * | 2019-12-26 | 2023-08-22 | 南京师范大学 | 顾及线宽一致性的矢量地图实线符号绘制方法 |
CN112669410B (zh) * | 2020-12-30 | 2023-04-18 | 广东三维家信息科技有限公司 | 线宽调整方法、装置、计算机设备和存储介质 |
-
2020
- 2020-12-30 CN CN202011612874.4A patent/CN112669410B/zh active Active
-
2021
- 2021-12-08 WO PCT/CN2021/136348 patent/WO2022143055A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6441816B1 (en) * | 1999-12-29 | 2002-08-27 | Intel Corporation | Method for modeling and rendering complex surfaces using local height maps |
US20050212806A1 (en) * | 2002-05-10 | 2005-09-29 | Metod Koselj | Graphics engine converting individual commands to spatial image information, and electrical device and memory incorporating the graphics engine |
CN101950427A (zh) * | 2010-09-08 | 2011-01-19 | 东莞电子科技大学电子信息工程研究院 | 一种适用于移动终端的矢量线段轮廓化方法 |
US20120287135A1 (en) * | 2011-05-12 | 2012-11-15 | Research In Motion Limited | Method and device for rendering areas bounded by curves using a gpu |
Non-Patent Citations (2)
Title |
---|
QIAOPING ZHANG等: "Accurate Centerline Detection and Line Width Estimation of Thick Lines Using the Radon Transform", 《IEEE TRANSACTIONS ON IMAGE PROCESSING》 * |
何援军: "图学与几何", 《图学学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022143055A1 (zh) * | 2020-12-30 | 2022-07-07 | 广东三维家信息科技有限公司 | 线宽调整方法、装置、计算机设备和存储介质 |
CN113486624A (zh) * | 2021-07-01 | 2021-10-08 | 研祥智能科技股份有限公司 | 实现pcb走线自动等间距的方法、装置及电子设备 |
CN113486624B (zh) * | 2021-07-01 | 2024-01-12 | 研祥智慧物联科技有限公司 | 实现pcb走线自动等间距的方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112669410B (zh) | 2023-04-18 |
WO2022143055A1 (zh) | 2022-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112669410B (zh) | 线宽调整方法、装置、计算机设备和存储介质 | |
JP4845147B2 (ja) | 二次元画像に対する遠近法編集ツール | |
EP1004988B1 (en) | Method, apparatus and computer program product for generating perspective corrected data from warped information | |
Balcaen et al. | Stereo-DIC uncertainty quantification based on simulated images | |
CN112884875A (zh) | 图像渲染方法、装置、计算机设备和存储介质 | |
TW411431B (en) | Anisotropic texture mapping using silhouette/footprint analysis in a computer image generation system | |
CN113643414B (zh) | 一种三维图像生成方法、装置、电子设备及存储介质 | |
EP2887305B1 (en) | Resizing an image | |
US20140267252A1 (en) | Using curves to emulate soft body deformation | |
CN109658474A (zh) | 三维草图的创建方法、装置和计算机设备 | |
Wang et al. | Real-time surface manipulation with C 1 continuity through simple and efficient physics-based deformations | |
Thiery et al. | Green coordinates for triquad cages in 3D | |
CN114820980A (zh) | 三维重建方法、装置、电子设备和可读存储介质 | |
US20230017659A1 (en) | Displacement-centric acceleration for ray tracing | |
JP7546653B2 (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
CN113781571A (zh) | 图像处理方法和装置 | |
CN116051737A (zh) | 图像生成方法、装置、设备及存储介质 | |
KR100633029B1 (ko) | 풋프린트의 분석 및 수정 방법 | |
JP2006300656A (ja) | 画像計測方法、装置、プログラム及び記録媒体 | |
CN112085774A (zh) | 一种透视还原的方法及装置 | |
JP2655056B2 (ja) | テクスチャデータ生成装置 | |
JP2005140623A (ja) | 画像計測方法、装置、プログラム及び記録媒体 | |
JP2976512B2 (ja) | 二次元画像の変形装置 | |
Lava et al. | Sources of systematic errors in the determination of heterogeneous strain fields obtained via DIC | |
Brouwer | Estimating image distortions for mirror anamorphoses using sampled point displacements |
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 |