3D文字展示方法、介质、设备及装置与流程

文档序号:19736937发布日期:2020-01-18 04:37阅读:151来源:国知局
3D文字展示方法、介质、设备及装置与流程

本发明涉及3d文字处理技术领域,特别涉及一种3d文字展示方法、一种计算机可读存储介质、一种计算机设备和一种3d文字展示装置。



背景技术:

3d文字,是以立体的、变现力更强的方式对文字进行呈现的一种文字展示形式,其相较普通二维文字有着突出的视觉效果,因而受到越来越多人的认可。

相关技术中,在对3d文字进行展示的过程中,在用户输入的文字数量较多时,往往容易导致生成的3d文字部分被截断,或者,在生成时3d文字可完整显示,而在用户对于该3d文字进行旋转操作时,却导致3d文字中的部分被截断,从而极大地影响用户体验。



技术实现要素:

本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的一个目的在于提出一种3d文字展示方法,能够防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

本发明的第二个目的在于提出一种计算机可读存储介质。

本发明的第三个目的在于提出一种计算机设备。

本发明的第四个目的在于提出一种3d文字展示装置。

为达到上述目的,本发明第一方面实施例提出了一种3d文字展示方法,包括以下步骤:获取用户的输入指令,以便根据所述输入指令生成对应的3d文字三维顶点数据;根据所述3d文字三维顶点数据计算3d文字的顶点与旋转中心之间的最远距离;构建以所述旋转中心为球心、所述最远距离为半径的球体;根据所述球体的半径和摄像机视角计算所述球体与摄像机的四方锥形可视空间相切时所述球心与所述摄像机视点之间的距离;并根据所述球心与所述摄像机视点之间的距离对所述摄像机进行设置,以及通过设置后的摄像机将所述3d文字投影到画布上,以对3d文字进行展示。

根据本发明实施例的3d文字展示方法,首先,获取用户的输入指令,以便生成该输入指令所对应的3d文字三维顶点数据,其中,该3d文字三维顶点数据包含3d文字中各顶点的坐标值,从而,可以根据3d文字三维顶点数据对3d文字的顶点与旋转中心之间的最远距离进行计算;接着,构建以旋转中心为球心、3d文字的顶点与旋转中心之间的最远距离为半径的球体,可知,当3d文字以旋转中心进行任意旋转时,其顶点都不会超出该球体的边界,然后,根据该球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时该球心与摄像机视点之间的距离,即言,让球体与摄像机的四方锥形可视空间相切,则此时球心与摄像机视点之间的距离为保证3d文字不被截断的摄像机视点与球心之间的最小距离;接着,根据该距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

另外,根据本发明上述实施例提出的3d文字展示方法还可以具有如下附加的技术特征:

可选地,在计算所述球体与摄像机的四方锥形可视空间相切时所述球心与所述摄像机视点之间的距离之后,还包括:根据所述球体半径和摄像机视角计算画布的大小,以便通过调整画布的大小来控制3d文字投影的大小。

可选地,还包括:获取用户的旋转操作,并根据所述旋转操作获取所述摄像机视点的旋转角度;根据所述旋转角度和所述摄像机视点与所述旋转中心之间的距离计算所述摄像机视点旋转后的坐标,以便通过该坐标对摄像机进行旋转。

为达到上述目的,本发明第二方面实施例提出了一种计算机可读存储介质,其上存储有3d文字展示程序,该3d文字展示程序被处理器执行时实现如上述的3d文字展示方法。

根据本发明实施例的计算机可读存储介质,通过存储器存储3d文字展示程序,以使得处理器在执行该3d文字展示程序时,实现如上述的3d文字展示方法,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

为达到上述目的,本发明第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上述的3d文字展示方法。

根据本发明实施例的计算机设备,通过存储器对计算机程序进行存储,以使得处理器在执行存储在存储器上的计算机程序时,实现如上述的3d文字展示方法,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

为达到上述目的,本发明第四方面实施例提出了一种3d文字展示装置,包括:获取模块,所述获取模块用于获取用户的输入指令;生成模块,所述生成模块用于根据所述输入指令生成对应的3d文字三维顶点数据;计算模块,所述计算模块用于根据所述3d文字三维顶点数据计算3d文字的顶点与旋转中心之间的最远距离;构建模块,所述构建模块用于构建以所述旋转中心为球心、所述最远距离为半径的球体;所述计算模块还用于根据所述球体的半径和摄像机视角计算所述球体与摄像机的四方锥形可视空间相切时所述球心与所述摄像机视点之间的距离;展示模块,所述展示模块用于根据所述球心与所述摄像机视点之间的距离对所述摄像机进行设置,并通过设置后的摄像机将所述3d文字投影到画布上,以对3d文字进行展示。

根据本发明实施例的3d文字展示装置,通过设置获取模块对用户的输入指令进行获取,以便在获取到用户的输入指令之后,通过生成模块生成与输入指令对应的3d文字三维顶点数据,其中,该3d文字三维顶点数据包含3d文字各顶点的坐标值,进而,设置计算模块根据3d文字三维顶点数据计算3d文字的顶点与旋转中心之间的最远距离;设置构建模块构建以旋转中心为球心、最远距离为半径的球体;计算模块还用于根据球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时球心与摄像机视点之间的距离;最后,设置展示模块根据球心与摄像机视点之间的距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示;从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

另外,根据本发明上述实施例提出的3d文字展示装置还可以具有如下附加的技术特征:

可选地,所述计算模块还用于,在计算所述球体与摄像机的四方锥形可视空间相切时所述球心与所述摄像机视点之间的距离之后,根据所述球体半径和摄像机视角计算画布的大小,以便通过调整画布的大小来控制3d文字投影的大小。

可选地,所述获取模块还用于,获取用户的旋转操作,并根据所述旋转操作获取所述摄像机视点的旋转角度;所述计算模块还用于根据所述旋转角度和所述摄像机视点与所述旋转中心之间的距离计算所述摄像机视点旋转后的坐标,以便通过该坐标对摄像机进行旋转。

附图说明

图1为根据本发明实施例的3d文字展示方法的流程示意图;

图2为根据本发明实施例中球体与摄像机四方锥形可视空间相切状态示意图;

图3为根据本发明实施例的摄像机旋转流程示意图;

图4为根据本发明实施例的3d文字展示装置的方框示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

相关技术中,在对3d文字进行展示的过程中,容易导致生成的3d文字被部分截断无法显示,根据本发明实施例的3d文字展示方法,首先,获取用户的输入指令,以便生成该输入指令所对应的3d文字三维顶点数据,其中,该3d文字三维顶点数据包含3d文字中各顶点的坐标值,从而,可以根据3d文字三维顶点数据对3d文字的顶点与旋转中心之间的最远距离进行计算;接着,构建以旋转中心为球心、3d文字的顶点与旋转中心之间的最远距离为半径的球体,可知,当3d文字以旋转中心进行任意旋转时,其顶点都不会超出该球体的边界,然后,根据该球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时该球心与摄像机视点之间的距离,即言,让球体与摄像机的四方锥形可视空间相切,则此时球心与摄像机视点之间的距离为保证3d文字不被截断的摄像机视点与球心之间的最小距离;接着,根据该距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

请参阅图1,图1为根据本发明实施例的3d文字展示方法的流程示意图,如图1所示,该3d文字展示方法包括以下步骤:

s101,获取用户的输入指令,以便根据输入指令生成对应的3d文字三维顶点数据。

也就是说,对用户的输入指令进行获取,以获取待制作3d文字的参数,进而可以根据该3d文字的参数生成对应输入指令的3d文字三维顶点数据,其中,该3d文字三维顶点数据包含3d文字中各个顶点的坐标信息。

其中,输入指令可以包含多种信息,例如,待制作3d文字的文字内容、待制作3d文字的文字字号、待制作3d文字的字体、颜色等。

s102,根据3d文字三维顶点数据计算3d文字的顶点与旋转中心之间的最远距离。

即言,在获取到3d文字中各个顶点的坐标信息之后,根据各个顶点的坐标信息对3d文字的顶点与旋转中心之间的最远距离进行计算。

作为一种示例,在获取到3d文字三维顶点数据之后,首先,抽取3d文字中各个顶点坐标值中的极值,并根据该极值、旋转中心的坐标值计算3d文字顶点与该旋转中心之间的最远距离。

s103,构建以旋转中心为球心、最远距离为半径的球体。

也就是说,在计算得到3d文字各个顶点与旋转中心之间的最远距离之后,以旋转中心为球形、以该最远距离为半径构建一个球体,从而,当3d文字以旋转中心进行任意角度的旋转时,3d文字中的任意顶点均不会超出该球体的范围。

s104,根据球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时球心与摄像机视点之间的距离;并根据球心与摄像机视点之间的距离对摄像机进行设置,以及通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示。

即言,令球体与摄像机的四方锥形可视空间相切,此时,根据球体的半径和摄像机视角对摄像机视点与球心之间的距离进行计算,可知,该距离即为摄像机根据当前视角可在3d文字任意旋转下对3d文字进行完整展示的最小距离,从而,根据该距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,可以防止3d文字在显示的过程中被截断而导致显示不完整,并且,无论文字多少,均可最大化利用画布,不会因为视距设置过大而导致摄像机四方锥形可视空间的浪费,进而浪费计算资源。

作为一种示例,如图2所示,以旋转中心为原心,当求得3d文字各个顶点与旋转中心之间的最远距离为r时,构建以旋转中心为球心,以r为半径的球体,进而,根据视角θ和球体的半径可以求得此时视点与旋转中心之间的距离从而,在根据该距离对摄像机进行设置后,即可保证该球体处于摄像机的四方锥形可视空间内,且无论3d文字如何旋转,都不会出现部分被截断的现象。

在一些实施例中,为了提高3d文字的最终展示效果,本发明实施例提出的3d文字展示方法在计算球体与摄像机的四方锥形可视空间相切时球心与摄像机视点之间的距离之后,还包括:根据球体半径和摄像机视角计算画布的大小,以便通过调整画布的大小来控制3d文字投影的大小。

可以理解,当画布设置过大时,可能导致3d文字投影过大,给用户的体验不佳,而到画布设置过小时,则可能导致3d文字的投影过小,显示不清晰;因此,通过球体半径和摄像机视角进行画布大小的计算,以通过调整画布的大小对3d文字投影的大小进行控制。

作为一种示例,如图2所示,当视点与旋转中心之间的距离为d时,将画布设置为正方形,且画布的边长为从而,当画布的边长设置为时,可使得3d文字投影的大小与其相同字号的二维文字相当,使得3d文字的最终显示效果更佳。

在一些实施例中,如图3所示,本发明实施例提出的3d文字展示方法还包括:

s201,获取用户的旋转操作,并根据旋转操作获取摄像机视点的旋转角度。

即言,获取用户对于3d文字的旋转操作,例如,获取用户持续按住鼠标以对3d文字进行拖动,以获取用户的旋转操作,或者,获取用户输入的旋转角度,以获取用户的旋转操作,然后,根据该旋转操作获取摄像机视点的旋转角度。

s202,根据旋转角度和摄像机视点与旋转中心之间的距离计算摄像机视点旋转后的坐标,以便通过该坐标对摄像机进行旋转。

也就是说,根据摄像机视点的旋转角度和摄像机视点与旋转中心之间的距离计算摄像机视点在根据用户的旋转操作进行旋转之后的坐标值,并通过该坐标值对摄像机进行旋转,以便通过旋转后的摄像机对3d文字进行投影,以对3d文字进行展示。

综上所述,根据本发明实施例的3d文字展示方法,首先,获取用户的输入指令,以便生成该输入指令所对应的3d文字三维顶点数据,其中,该3d文字三维顶点数据包含3d文字中各顶点的坐标值,从而,可以根据3d文字三维顶点数据对3d文字的顶点与旋转中心之间的最远距离进行计算;接着,构建以旋转中心为球心、3d文字的顶点与旋转中心之间的最远距离为半径的球体,可知,当3d文字以旋转中心进行任意旋转时,其顶点都不会超出该球体的边界,然后,根据该球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时该球心与摄像机视点之间的距离,即言,让球体与摄像机的四方锥形可视空间相切,则此时球心与摄像机视点之间的距离为保证3d文字不被截断的摄像机视点与球心之间的最小距离;接着,根据该距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

为了实现上述实施例,本发明实施例提出了一种计算机可读存储介质,其上存储有3d文字展示程序,该3d文字展示程序被处理器执行时实现如上述的3d文字展示方法。

根据本发明实施例的计算机可读存储介质,通过存储器存储3d文字展示程序,以使得处理器在执行该3d文字展示程序时,实现如上述的3d文字展示方法,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验。

为了实现上述实施例,本发明实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上述的3d文字展示方法。

根据本发明实施例的计算机设备,通过存储器对计算机程序进行存储,以使得处理器在执行存储在存储器上的计算机程序时,实现如上述的3d文字展示方法,从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验。

为了实现上述实施例,本发明实施例提出了一种3d文字展示装置,如图3所示,该3d文字展示装置包括:获取模块10、生成模块20、计算模块30、构建模块40和展示模块50。

其中,获取模块10用于获取用户的输入指令;

生成模块20用于根据输入指令生成对应的3d文字三维顶点数据;

计算模块30用于根据3d文字三维顶点数据计算3d文字的顶点与旋转中心之间的最远距离;

构建模块40用于构建以旋转中心为球心、最远距离为半径的球体;

计算模块30还用于根据球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时球心与摄像机视点之间的距离;

展示模块50用于根据球心与摄像机视点之间的距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示。

在一些实施例中,为了使得本发明实施例提出的3d文字展示装置更加适用于用户,计算模块30还用于,在计算球体与摄像机的四方锥形可视空间相切时球心与摄像机视点之间的距离之后,根据球体半径和摄像机视角计算画布的大小,以便通过调整画布的大小来控制3d文字投影的大小。

在一些实施例中,本发明实施例提出的3d文字展示装置中,获取模块10还用于,获取用户的旋转操作,并根据旋转操作获取摄像机视点的旋转角度;

计算模块30还用于根据旋转角度和摄像机视点与旋转中心之间的距离计算摄像机视点旋转后的坐标,以便通过该坐标对摄像机进行旋转。

需要说明的是,上述关于图1中3d文字展示方法的描述同样适用于该3d文字展示装置,在此不做赘述。

综上所述,根据本发明实施例的3d文字展示装置,通过设置获取模块对用户的输入指令进行获取,以便在获取到用户的输入指令之后,通过生成模块生成与输入指令对应的3d文字三维顶点数据,其中,该3d文字三维顶点数据包含3d文字各顶点的坐标值,进而,设置计算模块根据3d文字三维顶点数据计算3d文字的顶点与旋转中心之间的最远距离;设置构建模块构建以旋转中心为球心、最远距离为半径的球体;计算模块还用于根据球体的半径和摄像机视角计算球体与摄像机的四方锥形可视空间相切时球心与摄像机视点之间的距离;最后,设置展示模块根据球心与摄像机视点之间的距离对摄像机进行设置,并通过设置后的摄像机将3d文字投影到画布上,以对3d文字进行展示;从而实现防止3d文字在显示的过程中被截断,保证3d文字的完整显示,提高用户体验,并且,无论文字多少,均可最大化利用画布。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不应理解为必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1