瓷砖铺设方案自主设计及展示系统的设计与开发

2017-11-08 22:47肖贝多葛厚宝陈重安曹登宇陈洁顾建荣
智能计算机与应用 2017年5期
关键词:Android平台图像处理

肖贝多 葛厚宝 陈重安 曹登宇 陈洁 顾建荣

摘要:在传统家装中,瓷砖铺设通常存在瓷砖样式固定,铺设效果不便预览的问题,业主参与度低,无法发挥其创造性。为解决这一问题,设计了一种基于 Android 手机的、高用户交互程度的矩形瓷砖拼接设计与展示系统,提供了从用户自由选择素材、自主设计瓷砖花式及拼贴方式到预览整体拼贴效果的一条龙完整功能。本文探讨了该系统的总体结构、主要功能模块的设计过程及关键技术的实现原理。

关键词: 瓷砖铺设; 用户交互; Android平台; 图像处理

中图分类号: TP311.52

文献标志码: A

文章编号: 2095-2163(2017)05-0119-04

Abstract: In the traditional home decoration, there are usually problems with tile paving, for example: tile style is changeless and the effect is inconvenient to preview. Owners are less engaged and can not inspire their creativity. To solve this problem, the paper proposes the independent design and display system for tile paving based on Android. The system provides a complete set of functions, from the user's free choice of material, selfdesigned tile pattern to previewing the effect of the overall paving. Based on the general analysis, this paper discusses the overall structure of the system, the design process of the main functional modules and the realization of key technologies.

Keywords: tile paving; user interaction; Android; image processing

0引言

瓷砖铺设通常是装修过程中极其重要的一环,但传统的位于家装市场的,使用瓷砖实物和铺贴样式板进行展示的方法存在很大的局限性。瓷砖样式以及铺设方式的单一和趋同无法跟上新时代业主飞速发展的创造力,消费者希望把控自己家装细节的愿望难以实现,而样式板受大小限制无法准确预览铺设效果。市场上现存的解决类似问题的软件大多没有做到功能完善、操作简单,对普通用户友好。因此本文研发设计了一种功能相对完整的矩形瓷砖拼接设计与展示系统,旨在重点改进上述问题。现对其探讨论述如下。

1研究背景

在当代,居室环境空间不仅要体现现代感,又要显现艺术性,作为当代居室装饰装修重要材料之一的瓷砖制品具有独特的功能性、艺术性特点,以其自身特有的材质表现力和艺术感染力,在家居装饰中扮演着重要的角色[1]。但是在实际家装过程中,瓷砖铺设的多样性、创新性、自由性都被现实条件所束缚。商家或装修公司人员一般是通过现场展示或商品图册的方式进行产品介绍,并根据家装者的实际需求辅以计算来推荐合适的备选产品,由于场地空间的限制,进行现场展示的瓷砖种类及铺设方案仅能趋于简化[2]。业主通过观看样式板难以想象整体铺设效果,而且单一的样式板也压制了用户自主设计和在家装中追求多样性的现实可能。现今,瓷砖样式趋于多元化。瓷砖在造型上也不再局限于方形与长方形、菱形、多角形,甚至于更为复杂的造型应运而生,可以在四块砖中镶拼活泼的小花砖,或灵活运用多角砖拼出抽象的造形图案,艺术拼图瓷砖以其独出心裁的魅力尽现个性风采[3]。更重要的是,新时代的业主充满丰富的创造力,希望把握家装细节,创造属于自己的居室风格。通过自行设计瓷砖花色、创意花色组合以及与众不同的拼贴方式都可以创造出个人风格强烈的家居。而手机软件以其便携、便于操作等独特的优越性,成为解决上述问题的不二之选。市场需要一款直观清晰、易上手、好操作的手机软件,让用户可以实现自由选择素材、自主设计瓷砖花式及拼贴方式,最后预览整体拼贴效果。现存的类似软件大多存在功能不完整、用户交互程度低,没有给用户留出足够的创作空间等问题。因此亟需针对这些问题给出有效解决策略。

2系统设计

Android 是由 Google主导开发的基于 Linux 的开源手机开发平台,由操作系统、中间件、用户界面和应用程序组成,是一套真正意义上的开放性移动设备综合平台,并且其开放性保证了该平台不存在任何以往阻碍移动产业创新的专有权障碍[4]。开发人员在该平台上开发的应用程序需要使用 Java 语言来编写,开放的体系架构形成了优良的开发和调试环境,支持各种可扩展的用户体验,具有非常丰富的图形系统及对多媒体的强大支持功能[5]。因此本次研究选择基于 Android来展开瓷砖拼接设计与展示系统的开发。本系统的详细功能划分如图1所示。

3重点模块

[BT5]3.1获取素材模块

在主界面上定义可选功能复合组件,包括从云端获取图片、通过拍照获取图片、通过相册获取三个部分。以通过相册获取为例,用户选择后首先向安卓系统请求权限,得到允许后打开系统图库的活动,进行图片选取。选取后返回图片地址到主活动中,为获取从图库选择的图片路径进行设置。本模块设计流程如图2所示,实例如图3所示。

本模块通过图像的二维几何变换,旋转单個瓷砖块,从而改变整体拼贴效果,并展示。人工输入行列值可改变铺设效果。实例如图4所示。endprint

此模块开发过程如下:

1)定义瓷砖类,为最小单元,包括索引值、当前角度、位图等属性。

2)取屏宽作为整个铺设区域的高度和宽度,通过输入框获取行列数(或默认值),确认单个瓷砖块区域的宽度,载入数据。

3)在画布上建立坐标系,利用索引值以及单个瓷砖项的宽度,给每个瓷砖项赋坐标值,放置每个瓷砖项。

4)设置瓷砖项的点击事件监听器,当某个项监听到点击事件时,调用旋转单个项的方法。其中旋转方法是通过opencv提供的矩阵类库,将位图转化成opencv提供的矩阵类实例化对象,对该矩阵进行矩阵变换,再将变换结束后的矩阵转化成位图,载入每个单元项。使用安卓自带的matrix同样可实现类似功能,但是opencv提供了十分强大的图像处理工具库,具有优越性。同时制作旋转动画效果。为了便于用户直观地观测到旋转过程,符合使用习惯,添加旋转动画到旋转方法内。

3.3存储与预览模块

本系统主界面提供了保存及预览所有曾经完成的设计的功能,点击后可以从上次制作停止位置开始继续制作。同时,在保存时可以自定义设计的名字。自定义的偏好助手类封装了读取和存储单条数据的方法,数据和唯一标识通过键值对一一对应。其中,行列数、图片素材地址、标题、角度等都是键。同时,在全局类中将要保存的变量全局化。实例如图5所示。

测试系统的步骤如下:

1)运行系统,主界面如图6所示。

2)点击选取素材按钮,选择从相册选取,打开本地相册,选取素材,如图7所示。

3)点击瓷砖单元,实现旋转功能,根据自己的实际需要进行设计,如图8所示。

4)在输入框中更改行列数,实现不同的拼接效果,如图9所示。

5)完成设计,选择保存,自定义标题,确认后返回主界面,主界面出现已完成设计的条目,点击该条目后可从刚才结束的地方继续设计,如图10所示。

5结束语

针对家装市场瓷砖铺设领域存在的展示难、花样少、业主难以参与自行设计等问题,研发完成了基于 Android 手机的、高用户交互程度的矩形瓷砖拼接设计與展示系统,提供了从

[LL]用户自由选择素材、自主设计瓷砖花式及拼贴方式到预览整体拼贴效果的完整功能。本系统未来将添加联网模块和手绘模块。联网模块分为到网络获取素材以及将最终设计效果图分享到社交软件两个部分,手绘模块允许用户自行绘制瓷砖图样,满足用户多方面的要求。

参考文献

王怀忠. 居室设计中瓷砖的艺术形式研究[D]. 景德镇:景德镇陶瓷学院,2011.

[2] 石蕴玉,曹登宇,陈洁,等. 基于Android的矩形瓷砖拼接展示系统设计与开发[J]. 福建电脑,2016(6):35-36.

[3] 佚名. 家装瓷砖风格与个性[J]. 大众标准化,2004(11):36.

[4] 詹成国,朱伟,徐敏. 基于 Android 的测控装置人机界面的设计与开发[J]. 电力自动化设备,2012,32(1):119-122.

[5] 李杨,冯刚,李亮,等. 基于 Android 的多媒体应用开发与研究[J]. 计算机与现代化,2011 (4):149-152.

[6] 张建源. Android开发技术的学习及应用[J]. 现代工业经济和信息化,2014(6):62-64.[ZK)][FL)]endprint

猜你喜欢
Android平台图像处理
视觉系统在发动机涂胶的应用
“课程思政”视域下职业学校《图像处理》课程教学改革实践
构建《Photoshop图像处理》课程思政实践教学路径的探索
基于图像处理与卷积神经网络的零件识别
基于新一代信息技术的Photoshop图像处理课程开发与建设
基于Android平台软件开发技术研究
基于Android平台的人脸识别系统设计与实现
基于Android平台的健康医疗APP设计与开发
Android手机主题设计 
基于Android的Python语言英汉维电子词典设计与实现