CN103745492A - 一种基于矢量数据的二维阴影生成方法 - Google Patents
一种基于矢量数据的二维阴影生成方法 Download PDFInfo
- Publication number
- CN103745492A CN103745492A CN201310734151.5A CN201310734151A CN103745492A CN 103745492 A CN103745492 A CN 103745492A CN 201310734151 A CN201310734151 A CN 201310734151A CN 103745492 A CN103745492 A CN 103745492A
- Authority
- CN
- China
- Prior art keywords
- shade
- shadow
- limit
- moulding
- interior
- 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
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明揭示了一种基于矢量数据的二维阴影生成方法,通过在二维平面内定义内阴影点光源,根据光源发射的直线和造型轮廓之间的交点来判断内阴影附着边,进而生成内阴影的过程,包括如下步骤:1)定义内阴影点光源;2)确定内阴影附着边;3)中心投影,得到内阴影附着边的缩小图形;4)将缩小图形投影到造型平面上,得到它和原始内阴影附着边的闭合多边形;5)填充闭合多边形,得到内阴影区域。本发明有效提高了二维动画中的阴影制作效率,有效节约了人力成本,有效保证动动画质量。
Description
技术领域
本发明涉及光线跟踪算法领域,具体涉及一种基于矢量数据的二维阴影生成方法。
背景技术
二维动画中的阴影分为外阴影和内阴影两种,其中外阴影是指在光线照射情况下,造型实体在地面或墙壁上的投影,这种阴影能有效地表示图形实体在空间中的位置,以及和其他实体之间的相互关系,在三维图形处理中得到大量的应用;内阴影则是指在光线照射条件下,造型实体背光方向所形成的阴暗面,这种阴影能够体现出光源照射的方向以及图形实体的景深信息,在二维图形处理中应用广泛。当前在计算机图形学领域,对外阴影的研究非常广泛,集中于三维图形领域,成果也很多,但在二维图形领域则研究较少;内阴影方面则一直都是二维图形处理过程中的难点问题,国内外相关的研究也很少,在二维动画制作过程中也只能通过手绘来完成,因此为了减少工作量,降低成本,国内动画制作人员都采取了规避阴影的做法,即在动画作品中不进行阴影处理,这不可避免地造成了画面没有层次感、视觉效果差的结果。
当前,在二维图形的阴影处理方面主要依靠手工绘制完成,但近年来,在图像处理领域已经提出了许多对图像进行素描风格处理的算法,这一类算法可以通过图像来生成素描图。因为光影处理是素描画绘制过程中的重要内容,因此当前的图像素描化算法中也就不可避免的要对原始图像进行阴影处理,而这里的阴影处理主要是针对边界的内阴影处理,对于二维动画中的外阴影则还需通过手绘方法生成。因此目前在二维图形的阴影生成技术研究中主要解决的还是内阴影的问题,即基于图像处理得到内阴影,其一般步骤如图1所示:
通过对当前基于图像处理的阴影生成算法进行研究,我们认为其缺陷主要在于以下几点:
1、图像因为是栅格数据,只能逐像素的赋值来实现阴影效果,因此在设定光照方向的时候只能设定自左向右、自右向左、自上而下以及自下而上等四种情况,而对于带角度的光照方向只能通过明暗区域的分隔线来实现,所以在光照的模拟上和实际的效果要求存在一定的差异。
2、图像主要通过像素的灰度来确定内阴影的附着边和内阴影的区域像素,因此当图像中的图像灰度不均匀时,会出现脏区域,就如同墨迹一般,必须通过后期处理加以清除。
3、在图像上一旦对内阴影区域内的像素进行赋值操作后,再要对其修改就变得比较困难,必须通过图像处理软件逐像素进行处理,工作量比较大,而且对于修改的效果也很难掌控。
发明内容
本发明的目的在于提供一种提高动画的制作效率、有效节约成本、有效保证动动画质量的基于矢量数据的二维阴影生成方法。
本发明的技术方案是,一种基于矢量数据的二维阴影生成方法,通过在二维平面内定义内阴影点光源,根据光源发射的直线和造型轮廓之间的交点来判断内阴影附着边,进而生成内阴影的过程,包括如下步骤:
1)定义内阴影点光源;
2)确定内阴影附着边;
3)中心投影,得到内阴影附着边的缩小图形;
4)将缩小图形投影到造型平面上,得到它和原始内阴影附着边的闭合多边形;
5)填充闭合多边形,得到内阴影区域。
在本发明一个较佳实施例中,通过在三维空间定义内阴影点光源,然后根据光线直射的原理,结合二维动画的五面造型,应用光照投影算法求得造型外阴影的过程,包括如下步骤:
1)以造型为中心,定义外阴影的点光源,设定点光源的运动球面;
2)根据点光源的位置,确定造型的向光面;
3)调入向光面的数据,并对其进行旋转,以正对点光源位置;
4)从点光源出发,将造型外轮廓投影到地面上,得到其外阴影。
在本发明一个较佳实施例中,定义内阴影点光源后,采用光线求交的方式求得点光源发射的光线和造型外轮廓的交点,进而确定背光面和向光面的过程为确定内阴影附着边技术,包括如下步骤:
3)设k=n,按照第(2)步,从反向开始求解附着边的另一个端点;
4)在确定了内阴影附着边的两个端点后,根据光照方向可以确定背光的轮廓边。
在本发明一个较佳实施例中,确定附着边以后,根据附着边的形状来确定内阴影的区域和形状的过程为内阴影绘制技术,包括如下步骤:
1)取图形对象的中心点沿Z轴正向平移M得到的点为视点,从该视点出发,求其和附着边轮廓上每个顶点所连的直线和某一个平面的交点;
2)把平面上的顶点再投影到平面P中,实际上就得到了附着边的一个缩小图形,就可以把这些投影后的顶点作为内阴影的区域顶点;
3)增加一个权值,用于标识附着边顶点上阴影的深度,以便于更好地表现内阴影的圆弧效果;
4)把附着边的顶点数组和新的顶点数组合并组成一个新的多边形,并填色,此多边形即为内阴影区域。
在本发明一个较佳实施例中,定义了点光源之后,结合二维动画的五面造型,根据光线方向和物体轮廓,求解地面阴影的过程为外阴影绘制技术,包括如下步骤:
1)定义光线方向;
2)确定向光面;
3)坐标转换:
① 得到造型的中轴线;
② 以中轴线为旋转轴,按照造型面对应的角度对其进行旋转,得到点位的三维坐标;
③ 对造型外轮廓的每一个点,根据光照方向,计算其在地面的投影点;
④ 所有的投影点连接成阴影区域;
4)光照投影,得到地面阴影。
本发明所述为一种基于矢量数据的二维阴影生成方法,本发明有效提高了二维动画中的阴影制作效率,有效节约了人力成本,有效保证动动画质量。
附图说明
图1为现有的基于图像处理的内阴影算法步骤示意图;
图2为本发明一较佳实施例的基于矢量的内阴影生成步骤示意图;
图3为本发明一较佳实施例的基于矢量的外阴影生成步骤示意图;
图4为本发明一较佳实施例的照射光线与多边形之间有两个交点的情况示意图;
图5为本发明一较佳实施例的照射光线与多边形之间有多个交点的情况示意图;
图6为本发明一较佳实施例的图形对象的投影示意图。
具体实施方式
下面对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
本发明所述为一种基于矢量数据的二维阴影生成方法,通过在二维平面内定义内阴影点光源,根据光源发射的直线和造型轮廓之间的交点来判断内阴影附着边,进而生成内阴影的过程,如图2所示,包括如下步骤:
1)定义内阴影点光源:是指根据实际的光影效果需求,在二维平面内定义一个点光源,该点光源和二维动画造型呈一定角度;
2)确定内阴影附着边:是指在定义内阴影点光源后,采用光线求交的方式求得点光源发射的光线和造型外轮廓的交点,进而确定背光面和向光面的过程,其过程主要包括以下几个步骤:
① 如果SPk和多边形之间除了Pk点外,不存在其它交点,则当前的点P为一个端点,继续第3)步;
② 如果只有两个交点,因为多边形的边为直线段,因此在这两个交点之间必定存在不少于一个的多边形顶点,如图4所示;
③ 如果存在多个交点,如图5所示:
此时跳至第(3)步。
(3)设k=n,按照第(2)步,从反向开始求解附着边的另一个端点。
对于如何确定哪一组点串是背光面轮廓的节点,依然可以通过直线求交的方法来实现:通过光源分别向两组点串中的任意一个点引直线,显然,光源和背光面上的点所组成的线段必然和向光面轮廓相交,因此我们就可以通过这一规律来确定背光面的点串数组,其形成的轮廓曲线即为附着边。
3)中心投影,得到内阴影附着边的缩小图形;
4)将缩小图形投影到造型平面上,得到它和原始内阴影附着边的闭合多边形;
5)填充闭合多边形,得到内阴影区域。
通过在三维空间定义内阴影点光源,然后根据光线直射的原理,结合二维动画的五面造型,应用光照投影算法求得造型外阴影的过程,包括如下步骤:
1)以造型为中心,定义外阴影的点光源,设定点光源的运动球面;
2)根据点光源的位置,确定造型的向光面;
3)调入向光面的数据,并对其进行旋转,以正对点光源位置;
4)从点光源出发,将造型外轮廓投影到地面上,得到其外阴影。
定义内阴影点光源后,采用光线求交的方式求得点光源发射的光线和造型外轮廓的交点,进而确定背光面和向光面的过程为确定内阴影附着边技术,包括如下步骤:
2)求解直线SPk和多边形上每一线段(由多边形的两个顶点组成,设为)的交点,根据交点的数量进行判断;
3)设k=n,按照第(2)步,从反向开始求解附着边的另一个端点;
4)在确定了内阴影附着边的两个端点后,根据光照方向可以确定背光的轮廓边。
确定附着边以后,根据附着边的形状来确定内阴影的区域和形状的过程为内阴影绘制技术,包括如下步骤:
1)取图形对象的中心点沿Z轴正向平移M得到的点为视点,从该视点出发,求其和附着边轮廓上每个顶点所连的直线和某一个平面的交点,如图6所示;
3)为了更好地表现内阴影的圆弧效果(离端点越近的阴影区域越小,离光源点越远的阴影区域越大),需要增加一个权值,用于标识附着边顶点上阴影的深度,设距离权为u,以便于更好地表现内阴影的圆弧效果,则其计算方法如下:
② 分别求出附着边上每个顶点和光源之间的距离,记为d;
③ 根据下式计算权重u;
4)把附着边的顶点数组和新的顶点数组合并组成一个新的多边形,并填色,此多边形即为内阴影区域。
定义外阴影点光源,是指参照现实世界的光照情况,设定一个三维坐标下的点光源的过程,其过程主要包括以下几个步骤:
(1)以动画造型中心为原点建立一个三维坐标系;
(2)然后按照给定的半径,在三维坐标系中围绕造型设置一个外接球体;
(3)最后在球体表面按照一定间隔的角度做一系列的经线和纬线,我们就把这些经线和纬线作为光源的移动轨迹,光源的位置则由经纬度决定。
定义了外阴影点光源之后,结合二维动画的五面造型,根据光线方向和物体轮廓,求解地面阴影的过程为外阴影生成技术,如图3所示,包括如下步骤:
1)定义光线方向:
2)确定向光面:
在二维动画的制作过程中,对于一个造型一般都采用五面画法,即为每一个造型都绘制五个角度的平面图形,分别为正面、正面45o、侧面90o、背面、以及背面45o;
3)坐标转换:在二维动画中,不同的造型面都是在XY平面绘制的,这和光源的三维坐标并不对应,因此首先要把不同角度的造型坐标转换为对应的三维坐标。这一转换过程可以通过将不同角度的造型面围绕造型的中轴线旋转相应角度得到,步骤如下:
① 得到造型的中轴线;
② 以中轴线为旋转轴,按照造型面对应的角度对其进行旋转,得到点位的三维坐标,设原造型面上任意一点坐标为(X,Y),对其进行平移后的坐标为(X,Y,w),则对平移后坐标再进行旋转后的三维坐标可由以下公式得到:
③ 对造型外轮廓的每一个点,根据光照方向,计算其在地面的投影点。地面则由经过造型的最底点,且平行于XZ平面的平面代表;
④ 所有的投影点连接成阴影区域;
4)设定视点位置,将三维空间的阴影区域投影到XY平面,得到最后的二维阴影。
本发明所述为一种基于矢量数据的二维阴影生成方法,本发明有效提高了二维动画中的阴影制作效率,有效节约了人力成本,有效保证动动画质量。
以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本领域的技术人员在本发明所揭露的技术范围内,可不经过创造性劳动想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书所限定的保护范围为准。
Claims (5)
1.一种基于矢量数据的二维阴影生成方法,其特征在于:通过在二维平面内定义内阴影点光源,根据光源发射的直线和造型轮廓之间的交点来判断内阴影附着边,进而生成内阴影的过程,包括如下步骤:
1)定义内阴影点光源;
2)确定内阴影附着边;
3)中心投影,得到内阴影附着边的缩小图形;
4)将缩小图形投影到造型平面上,得到它和原始内阴影附着边的闭合多边形;
5)填充闭合多边形,得到内阴影区域。
2.根据权利要求1所述的基于矢量数据的二维阴影生成方法,其特征在于:通过在三维空间定义内阴影点光源,然后根据光线直射的原理,结合二维动画的五面造型,应用光照投影算法求得造型外阴影的过程,包括如下步骤:
1)以造型为中心,定义外阴影的点光源,设定点光源的运动球面;
2)根据点光源的位置,确定造型的向光面;
3)调入向光面的数据,并对其进行旋转,以正对点光源位置;
4)从点光源出发,将造型外轮廓投影到地面上,得到其外阴影。
5.根据权利要求1所述的基于矢量数据的二维阴影生成方法,其特征在于:定义了点光源之后,结合二维动画的五面造型,根据光线方向和物体轮廓,求解地面阴影的过程为外阴影绘制技术,包括如下步骤:
1)定义光线方向;
2)确定向光面;
3)坐标转换:
① 得到造型的中轴线;
② 以中轴线为旋转轴,按照造型面对应的角度对其进行旋转,得到点位的三维坐标;
③ 对造型外轮廓的每一个点,根据光照方向,计算其在地面的投影点;
④ 所有的投影点连接成阴影区域;
4)光照投影,得到地面阴影。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310734151.5A CN103745492B (zh) | 2013-12-27 | 2013-12-27 | 一种基于矢量数据的二维阴影生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310734151.5A CN103745492B (zh) | 2013-12-27 | 2013-12-27 | 一种基于矢量数据的二维阴影生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103745492A true CN103745492A (zh) | 2014-04-23 |
CN103745492B CN103745492B (zh) | 2016-08-24 |
Family
ID=50502507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310734151.5A Active CN103745492B (zh) | 2013-12-27 | 2013-12-27 | 一种基于矢量数据的二维阴影生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103745492B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111783317A (zh) * | 2020-07-30 | 2020-10-16 | 北部湾大学 | 一种基于空间矢量数据的地物朝向及迎风面计算方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870097A (en) * | 1995-08-04 | 1999-02-09 | Microsoft Corporation | Method and system for improving shadowing in a graphics rendering system |
CN102396003A (zh) * | 2009-04-17 | 2012-03-28 | 设计代码公司 | 用于向计算机图形中的对象添加阴影的方法 |
-
2013
- 2013-12-27 CN CN201310734151.5A patent/CN103745492B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870097A (en) * | 1995-08-04 | 1999-02-09 | Microsoft Corporation | Method and system for improving shadowing in a graphics rendering system |
CN102396003A (zh) * | 2009-04-17 | 2012-03-28 | 设计代码公司 | 用于向计算机图形中的对象添加阴影的方法 |
Non-Patent Citations (3)
Title |
---|
ANDREW WOO: "A survey of shadow algorithms", 《IEEE COMPUTER GRAPHICS AND APPLICATIONS》 * |
LANCE WILLIAMS: "Casting curved shadows on curved surfaces", 《PROC OF SIGGRAPH》 * |
过洁,等: "基于阴影图的阴影生成算法研究现状", 《计算机辅助设计与图形学学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111783317A (zh) * | 2020-07-30 | 2020-10-16 | 北部湾大学 | 一种基于空间矢量数据的地物朝向及迎风面计算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103745492B (zh) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104463948B (zh) | 三维虚拟现实系统与地理信息系统的无缝可视化方法 | |
WO2017206325A1 (zh) | 全局光照的计算方法及装置 | |
CN100492412C (zh) | 体三维显示中的体素数据生成方法 | |
CN102289845B (zh) | 一种三维模型绘制方法以及装置 | |
CN105787865A (zh) | 基于游戏引擎和gpu并行处理的分形图生成与渲染方法 | |
CN106558017B (zh) | 球形显示图像处理方法及系统 | |
CN104732592A (zh) | 一种基于二维led旋转屏的实时三维数据生成方法 | |
CN104157000B (zh) | 模型表面法线的计算方法 | |
CN103645463B (zh) | 合成孔径雷达成像数据三维显示的方法 | |
CN102147927A (zh) | 一种地形纹理贴图的处理方法和处理装置 | |
CN104318605A (zh) | 矢量实线与三维地形的并行贴合渲染方法 | |
Rosu et al. | Semi-supervised semantic mapping through label propagation with semantic texture meshes | |
CN104822059A (zh) | 一种基于gpu加速的虚拟视点合成方法 | |
CN109461197B (zh) | 一种基于球面uv和重投影的云实时绘制优化方法 | |
CN109358430A (zh) | 一种基于二维led风扇屏的实时三维显示方法 | |
CN112102489A (zh) | 导航界面显示方法、装置、计算设备和存储介质 | |
CN111986303A (zh) | 流体渲染方法、装置、存储介质及终端设备 | |
CN106204703A (zh) | 三维场景模型渲染方法和装置 | |
Sandnes | Sketching 3D immersed experiences rapidly by hand through 2D cross sections | |
CN104517313A (zh) | 基于屏幕空间的环境光遮蔽的方法 | |
CN103945209B (zh) | 一种基于分块投影的dibr方法 | |
CN103617650A (zh) | 一种复杂三维地形显示方法 | |
TWI731604B (zh) | 三維點雲資料處理方法 | |
CN108280870A (zh) | 一种点云模型纹理映射方法与系统 | |
CN103745492A (zh) | 一种基于矢量数据的二维阴影生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Xi Lu Tang town Suzhou city yangshe town in Jiangsu province No. 2 215600 Applicant after: JIANGSU RUYITONG ANIMATION INDUSTRY CO., LTD. Address before: Xi Lu Tang town Suzhou city yangshe town in Jiangsu province No. 2 215600 Applicant before: Jiangsu Ruyitong Animation Industry Co., Ltd. |
|
COR | Change of bibliographic data | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |