发明名称 模拟三维素描铅笔画的绘制方法
摘要 本发明公开一种模拟三维素描铅笔画的绘制方法,有三维图形输入模块、明暗色调抽取模块、绘制模式生成模块及绘制模块,根据素描铅笔画的特点定义了新的区域划分、采样及绘制模式,所采用的明暗色调抽取方法简单快速,同时所定义的三种笔触模型也简单易行,充分利用铅笔画近似的特性,加快了后续绘制过程速度,提高了绘制三维场景素描铅笔画的效率,利于在实际生产中普及。
申请公布号 CN103679794A 申请公布日期 2014.03.26
申请号 CN201310733180.X 申请日期 2013.12.27
申请人 辽宁师范大学 发明人 王相海;傅博;辛灵;毕晓昀
分类号 G06T15/02(2011.01)I 主分类号 G06T15/02(2011.01)I
代理机构 大连非凡专利事务所 21220 代理人 闪红霞
主权项 1.一种模拟三维素描铅笔画的绘制方法,其特征在于按如下步骤进行:a. 输入三维几何模型方程,获得三维几何图形;b. 对三维几何模型进行明暗色调及光亮度的抽取:b.1 在获取的三维几何图形表面选取等距离长度d的分点,将三维几何模型所在三维几何空间分为n个平面,每个平面分别记为归类层part<sup>1</sup>、part<sup>2</sup>、…part<sup>n</sup>;b.2 对各归类层part<sup>i</sup>分别进行光源遮挡判断,确定该归类层part<sup>i</sup>所在位置的明暗信息;b.3 计算一个归类层part<sup>i</sup>的中心点与上下归类层中心点的叉积,将该叉积存储为vector<sup>1</sup>,计算归类part<sup>i</sup>的中心点与其左右归类层中心点的叉积,并存储为vector<sup>2</sup>;b.4 对一个归类层part<sup>i</sup>,将其对应的vector<sup>1</sup>和vector<sup>2</sup>做为该平面的法向量,利用phong模型计算该平面中心点的反射光亮度,存储归类层part<sup>i</sup>的反射光亮度;c. 定义竖线笔触模型、横线笔触模型或弧线笔触模型,对三维模型均匀分点,建立绘制模式:c.1 定义竖线笔触模型、横线笔触模型、弧线笔触模型;约定:笔触的起点为A(x<sub>a</sub>,y<sub>a</sub>,z<sub>a</sub>), 笔触的终点为B(x<sub>b</sub>,y<sub>b</sub>,z<sub>b</sub>), 圆心坐标为O(x<sub>o</sub>,y<sub>b</sub>,z<sub>o</sub>);c.1.1竖线笔触模型是指以分点A(x<sub>a</sub>,y<sub>a</sub>,z<sub>a</sub>)为起点竖直向下一段长度的线段,竖线笔触模型取一定范围内的随机数<i>h</i>,使所画的竖直笔触的长度为<i>h·d</i>,由直线方程推出所绘制笔触的终点B(x<sub>b</sub>,y<sub>b</sub>,z<sub>b</sub>)坐标为(x<sub>a</sub>,y<sub>a</sub>-<i>h·d,z</i><sub>a</sub>); c.1.2横线笔触模型是指以分点 A(x<sub>a</sub>,y<sub>a</sub>,z<sub>a</sub>)为中点相切于三维客体表面的横线段,横线笔触模型设通过A点绘制随机长度为<i>w·d</i>横线笔触,其中<i>w</i>为一定范围内的随机数,设圆柱的中轴线垂直于<i>xoy</i>平面,过A点与圆柱中轴线垂直的圆柱截面的圆心坐标为<img file="999430DEST_PATH_IMAGE002.GIF" wi="95" he="25" />,则以A点位中点的横线的起点B(x<sub>b</sub>,y<sub>b</sub>,z<sub>b</sub>)和终点C(x<sub>c</sub>,y<sub>c</sub>,z<sub>c</sub>)坐标分别为:<img file="52837DEST_PATH_IMAGE004.GIF" wi="276" he="139" />;c.1.3弧线笔触模型是指以分点A(x<sub>a</sub>,y<sub>a</sub>,z<sub>a</sub>)为起点,通过调节圆弧半径<img file="201310733180X100001DEST_PATH_IMAGE005.GIF" wi="16" he="17" />、水平分量<img file="453469DEST_PATH_IMAGE006.GIF" wi="17" he="16" />和竖直分量<img file="201310733180X100001DEST_PATH_IMAGE007.GIF" wi="14" he="20" />向右下或左下方所绘制的弧线段,弧线笔触以A为起点在垂直于<img file="996446DEST_PATH_IMAGE008.GIF" wi="14" he="14" />轴的平面<img file="201310733180X100001DEST_PATH_IMAGE009.GIF" wi="14" he="22" />内绘制一条弧线,然后计算圆柱上过A点切平面的法向量以及它与<img file="351204DEST_PATH_IMAGE009.GIF" wi="14" he="22" />平面法向量的夹角<img file="270618DEST_PATH_IMAGE010.GIF" wi="17" he="16" />,最后将弧线绕A点旋转<img file="964905DEST_PATH_IMAGE010.GIF" wi="17" he="16" />角即可得到以A为起点的弧线笔触;c.2:对三维几何模型建立矩形包围盒,建立三维坐标系,模型中心为坐标系原点,对坐标系建立八个卦限为octant<sup>1</sup>、octant<sup>2</sup>、…octant<sup>8</sup>, 每个卦限选取两个点p,q,作为生成笔触的点;c.3:对于每个卦限上的点p,q,利用Phong模型计算它们在投影屏幕上的漫反射光亮度并予以保存;c.4:对三维几何模型,选取等距离长度d,对每一个固定的u,进行u向等距离d分点,并将分点保存到临时二维数组A中,再以临时二维数组A的点为参照点,沿着总体v向进行等距离d分点,u向、v向分得的点作为三维几何模型的分点m;     d. 在三维几何模型上的分点m处,按照b.2步骤所确定的明暗信息、b.4步骤存储的反射光亮度及c.1 步骤定义的笔触模型绘制相应的线条笔触,绘制顺序是按照分点m在观察坐标系下的z坐标从小到大排序进行绘制;在三维几何模型上的点p,q,按照c.3步骤所保存的反射光亮度及c.1 步骤定义的笔触模型绘制相应的线条笔触。
地址 116029 辽宁省大连市沙河口区黄河路850号