• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 18
    • 下载费用:30 金币  

    重庆时时彩97期为什么不开: 针对面向对象程序设计语言源代码的软件可视化方法.pdf

    关 键 词:
    针对 面向 对象 程序设计语言 源代码 软件 可视化 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201010266831.5

    申请日:

    2010.08.30

    公开号:

    CN102385505A

    公开日:

    2012.03.21

    当前法律状态:

    终止

    有效性:

    无权

    法律详情: 未缴年费专利权终止IPC(主分类):G06F 9/44申请日:20100830授权公告日:20130320终止日期:20140830|||授权|||实质审查的生效IPC(主分类):G06F 9/44申请日:20100830|||公开
    IPC分类号: G06F9/44 主分类号: G06F9/44
    申请人: 北京理工大学
    发明人: 胡昌振; 王国强; 王崑声; 王志刚; 胡鹤; 洪孝金
    地址: 100081 北京市海淀区中关村南大街5号
    优先权:
    专利代理机构: 北京理工大学专利中心 11120 代理人: 付雷杰
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201010266831.5

    授权公告号:

    |||102385505B||||||

    法律状态公告日:

    2015.10.28|||2013.03.20|||2012.05.02|||2012.03.21

    法律状态类型:

    专利权的终止|||授权|||实质审查的生效|||公开

    摘要

    本发明涉及一种针对面向对象程序设计语言源代码的软件可视化方法,属于软件可视化技术领域。本发明包括如下步骤:①从源代码中提取关键信息;②获取原始图数据信息;③获取有向图数据信息;④设计图形布局;⑤进行可视化映射。本文提出了一种新的针对面向对象程序设计语言源代码的软件可视化方法,弥补了类图用于软件可视化中的不足,能够更准确直观的反应软件的内部结构和软件内类的地位和作用,便于使用者快速获得软件设计层次上的理解。

    权利要求书

    1.一种针对面向对象程序设计语言源代码的软件可视化方法,其特征在于:
    其具体操作步骤为:
    步骤一、从源代码中提取关键信息;
    从待处理的面向对象程序设计语言源代码中提取关键信息;所述关键信息
    包括:类所在的包、类名、父类、继承方式、类的类型、类的修饰符、类所包
    含的嵌套类、类属性的类型、类属性的修饰符、类构造函数参数、类方法的名
    字、类方法的参数、类方法的返回值类型以及类方法的修饰符;
    所述继承方式包括一般继承和接口实现两种继承方式;
    所述类的类型包括抽象类型、接口类型、普通类型和不确定类型;
    步骤二、获取原始图数据信息;
    将步骤一得到的关键信息按照表2所示的图的属性、表3所示的边的属性、
    表4所示的节点的属性的数据结构进行存储,即可到一个仅包含节点名称和边名
    称的原始图数据信息;
    表2存储关键信息的数据结构设计表1-图的属性
    ??属性名称
    ??数据类型
    ??包含的节点的名称
    ??文本
    ??包含的边名称
    ??文本
    表3存储关键信息的数据结构设计表2-边的属性
    ??属性名称
    ??数据类型
    ??与其邻接的节点的名称
    ??文本
    ??优先级
    ??正整数
    表4存储关键信息的数据结构设计表3-节点的属性
    ??属性名称
    ??数据类型
    ??节点类型
    ??正整数
    ??节点名称
    ??文本
    ??节点上文本的内容
    ??文本
    ??节点所在文件的创建时间
    ??正实数
    步骤三、获取有向图数据信息;
    对步骤二得到原始图数据信息,依次使用冗余边的消减原则和存在环路时
    的消减原则进行处理,即可得到有向图数据信息;具体为:
    步骤3.1:对原始图数据信息使用冗余边的消减原则进行处理:
    设定V为原始图中节点的集合,节点A,B∈V,如果节点A和B之间有多
    于1条的连线时,按照以下3种情况处理:
    情况1:节点A和B之间的连线为同向时,则按照或的属性信息中“优
    先级”的值,保留一条优先级最高的边;删除其它边;
    情况2:节点A和B之间的连线为非同向时,且在其中一个方向上存在的最
    高优先级高于另一个方向上存在的最高优先级,则保留一条优先级最高的边;
    删除其它边;
    情况3:节点A和B之间的连线为非同向时,且在其中一个方向上存在的最
    高优先级与另一个方向上存在的最高优先级相等,则删除节点A和B之间的所
    有边;
    原始图数据信息经过冗余边的消减原则处理后,即可去除多重边和只有一
    跳的环路;
    步骤3.2:对经过步骤3.1处理后得到的图数据信息使用存在环路时的消减
    原则,分为4种情况进行处理:
    情况1:若该环路上只存在一条优先级最低的边,则删除此边,解除环路;
    情况2:若环路上存在2个或2个以上优先级最低的关系,且这些关系中的
    有一个节点的出度最大,则将指向该节点的边全部删除;这是因为该节点的出
    度最大说明它为其它节点提供了更多服务,其偏向于基础类;
    情况3:如不属于情况1和情况2,则从步骤二所述原始图数据信息中查找
    优先级最低的边所涉及节点所在的文件的创建时间,如果能够找到一个创建时
    间最早的那个节点,将指向该节点的边全部删除;否则,将优先级最低的边全
    部删除;
    经过步骤三的处理,即可获得有向图数据信息;
    步骤四、设计图形布局;
    在步骤三的基础上,根据图形布局算法设计图形布局;
    所述图像布局算法具体为:
    步骤五、进行可视化映射;
    在步骤四的基础上,根据预先定义的图形表示规则完成可视化数据的映射;
    图形表示规则包括定义节点颜色、节点形状、节点样式、边的颜色、边的形状、
    边的样式。
    2.如权利要求1所述的一种针对面向对象程序设计语言源代码的软件可视
    化方法,其特征在于:步骤四中所述图像布局算法包括但不限于:开源工具VCG
    中使用的深度优先布局算法。
    3.如权利要求1或2所述的一种针对面向对象程序设计语言源代码的软件可
    视化方法,其特征在于:
    优选的,步骤四中所述图像布局算法,具体为:
    步骤4.1:设定画布的左上角为坐标原点,设定原点垂直向下方向为Y轴的
    正方向;原点水平向右方向为X轴的正方向;
    步骤4.2:对步骤三得到的有向图进行深度搜索,得到其最大深度d、层序
    号i,每层所包含的节点集合Vi、集合Vi所包含的节点的个数numi以及所有节点的
    各自所在层数deep;其中,d,i均为正整数且1≤i≤d;
    步骤4.3:根据步骤4.2得到的结果,获得每个节点边框的左上角的坐标;
    ①每个节点边框的左上角的纵坐标y的计算方法:
    设定H为画布的高度,根据公式1可得到有向图中每一层的高度差h:
    h=(H-h1-h2)/(d-1)????????????????????(1)
    其中,h2和h1分别为画布的上、下留白高度;
    根据公式2可得到该节点的左上角的纵坐标y:
    y=h1+(i-1)×h????????????????????????(2)
    ②每个节点边框的左上角的横坐标x的计算方法:
    第a步:将各层中的节点按照字母表升序排序;
    第b步:通过公式3得到同一层中两个相邻节点的距离w,通过公式4得到第s
    层,第t个节点的横坐标值x,其中,3≤s≤d,1≤t≤nums且s、t均为正整数;
    w=(W-x1-x2)/(nums-1+2)?????????????(3)
    x=x1+t×w??????????????????????????(4)
    其中,W为画布的宽度,x1,x2分别为第s层左右两边的留白;
    步骤4.4:对步骤三得到的有向图中的所有节点,根据每个节点上的文本的
    内容和样式,得到节点的边框长宽信息;
    步骤4.5:根据步骤4.3得到的每个节点边框的左上角的坐标及步骤4.4得到
    的节点边框长宽信息得到与边框相关的线的开始点和结束点坐标。

    说明书

    针对面向对象程序设计语言源代码的软件可视化方法

    技术领域

    本发明涉及一种针对面向对象程序设计语言(Object-Oriented?
    Programming?Language,OOPL)源代码的软件可视化方法,属于软件可视化技
    术领域。

    背景技术

    基于程序源代码获得软件的高级设计抽象的方法,最原始和直接的解决方
    案就是程序员通过阅读源代码,经过一系列脑力分析,最终用一些高度抽象的
    图形或者文字表达来阐述一个软件的内部结构和实现逻辑。

    软件可视化通常采用软件自动化方式将软件系统的各种属性(包括关键字、
    类间关系等)或者各种属性的相关统计信息,通过静态或者动态的2D或3D的图
    形加以概括表示,从而展示软件系统的内部结构,软件的演化信息,和软件的
    行为特性,实现对源码的自动分析和抽象,产生能反映软件内部结构或者其他
    度量信息的高度概括的图形表示。通过对软件系统进行可视化可以获得软件的
    高级抽象,便于快速获得软件设计层次上的理解。

    软件可视化的意义在于:①通过对软件进行可视化获得对软件系统设计层
    次上的抽象,便于系统的维护、巩固、移植和改进,为软件系统尤其是遗产系
    统的重构、再工程以及设计的恢复提供有力的帮助;②随着开源社区的发展和
    完善,开源系统尤其是基于Java代码的开源系统种类日臻完善和丰富,且代码
    量也在飞速增加,但其文档化往往又严重滞后甚至缺乏,所以软件可视化的作
    用也变的尤为重要。

    类图是一种展现软件系统结构的可视化方式。

    类图所表示的类间的关系包括:泛化,依赖,关联,聚合,组合,实现。
    其对应的代码特征如表1所示:

    表1类图关系对应的代码特征


    由表可以看出:关联关系、聚合关系和组合关系在语法上是没办法区分的,
    只有从语义上才能区分,除此以外,将类图用作软件源码逆向可视化,其缺点
    有:

    ①因为类图主要应用于正向开发中,当其应用于软件源码可视化这样的逆
    向过程中时,类图中的一些语义相关的关系很难得到正确的表达;

    ②在现有的一些自动化测试软件中或者某些IDE集成开发工具中提供了由
    源码到类图的实现,但是由其得到的类图往往由多个连通子图构成,且类图的
    布局方式有很大的随意性,所以表达不够简洁,清晰,不具有统一性,不利于
    用户快速了解软件的结构体系。

    ③类图只能表示软件系统中各个类之间的某些特定关系,对软件系统结构
    的表示也是通过这些关系体现的,所以在表示系统结构时也局限在了类及类关
    系层面,对某个具体类在系统中所扮演的角色、所起的作用的表述也具有同样
    的局限性。

    因此类图不适用于软件可视化。

    发明内容

    本发明的目的是为了克服已有技术中存在的不足,提出一种针对面向对象
    程序设计语言源代码的软件可视化方法。

    本发明的目的是通过以下技术方案实现的。

    一种针对面向对象程序设计语言源代码的软件可视化方法,具体为:

    步骤一、从源代码中提取关键信息。

    从待处理的面向对象程序设计语言源代码中提取关键信息。所述关键信息
    包括:类所在的包、类名、父类、继承方式、类的类型、类的修饰符、类所包
    含的嵌套类、类属性的类型、类属性的修饰符、类构造函数参数、类方法的名
    字、类方法的参数、类方法的返回值类型以及类方法的修饰符。

    所述继承方式包括一般继承(extends)和接口实现(implements)两种继
    承方式;

    所述类的类型包括抽象类型、接口类型、普通类型和不确定类型。

    步骤二、获取原始图数据信息。

    将步骤一得到的关键信息按照表2所示的图的属性、表3所示的边的属性、
    表4所示的节点的属性的数据结构进行存储,即可到一个仅包含节点名称和边名
    称的原始图数据信息。

    表2存储关键信息的数据结构设计表1-图的属性

    ??属性名称
    ??数据类型
    ??包含的节点的名称
    ??文本
    ??包含的边名称
    ??文本

    表3存储关键信息的数据结构设计表2-边的属性

    ??属性名称
    ??数据类型
    ??与其邻接的节点的名称
    ??文本
    ??优先级
    ??正整数

    表4存储关键信息的数据结构设计表3-节点的属性

    ??属性名称
    ??数据类型
    ??节点类型
    ??正整数
    ??节点名称
    ??文本
    ??节点上文本的内容
    ??文本
    ??节点所在文件的创建时间
    ??正实数

    步骤三、获取有向图数据信息。

    对步骤二得到原始图数据信息,依次使用冗余边的消减原则和存在环路时
    的消减原则进行处理,即可得到有向图数据信息;具体为:

    步骤3.1:对原始图数据信息使用冗余边的消减原则进行处理:

    设定V为原始图中节点的集合,如果节点A和B(A,B∈V)之间有多于1
    条的连线时,按照以下3种情况处理:

    情况1:节点A和B之间的连线为同向时,则按照或的属性信息中“优
    先级”的值,保留一条优先级最高的边;删除其它边。

    情况2:节点A和B之间的连线为非同向时,且在其中一个方向上存在的最
    高优先级高于另一个方向上存在的最高优先级,则保留一条优先级最高的边;
    删除其它边。

    情况3:节点A和B之间的连线为非同向时,且在其中一个方向上存在的最
    高优先级与另一个方向上存在的最高优先级相等,则删除节点A和B之间的所
    有边。

    原始图数据信息经过冗余边的消减原则处理后,即可去除多重边和只有一
    跳的环路。

    步骤3.2:对经过步骤3.1处理后得到的图数据信息使用存在环路时的消减
    原则,分为4种情况进行处理:

    情况1:若该环路上只存在一条优先级最低的边,则删除此边,解除环路。

    情况2:若环路上存在2个或2个以上优先级最低的关系,且这些关系中的
    有一个节点的出度最大,则将指向该节点的边全部删除。这是因为该节点的出
    度最大说明它为其它节点提供了更多服务,其偏向于基础类。

    情况3:如不属于情况1和情况2,则从步骤二所述原始图数据信息中查找
    优先级最低的边所涉及节点所在的文件的创建时间,如果能够找到一个创建时
    间最早的那个节点,将指向该节点的边全部删除;否则,将优先级最低的边全
    部删除。

    经过步骤三的处理,即可获得有向图数据信息。

    步骤四、设计图形布局。

    在步骤三的基础上,根据图形布局算法设计图形布局。

    所述图像布局算法包括但不限于:开源工具VCG(Visualization?of?
    Compiler?Graphs)中使用的深度优先布局算法。

    优选的,所述图像布局算法具体为:

    步骤4.1:设定画布的左上角为坐标原点,设定原点垂直向下方向为Y轴(纵
    轴)的正方向;原点水平向右方向为X轴(横轴)的正方向。

    步骤4.2:对步骤三得到的有向图进行深度搜索,得到其最大深度d、层序
    号i,每层所包含的节点集合Vi、集合Vi所包含的节点的个数numi以及所有节点的
    各自所在层数deep;其中,d,i均为正整数且1≤i≤d。

    步骤4.3:根据步骤4.2得到的结果,获得每个节点边框的左上角的坐标。

    ①每个节点边框的左上角的纵坐标y的计算方法:

    设定H为画布的高度,根据公式1可得到有向图中每一层的高度差h:

    h=(H-h1-h2)/(d-1)????????????????(1)

    其中,h2和h1分别为画布的上、下留白高度;

    根据公式2可得到该节点的左上角的纵坐标y:

    y=h1+(i-1)×h????????????????????(2)

    ②每个节点边框的左上角的横坐标x的计算方法:

    第a步:将各层中的节点按照字母表升序排序;

    第b步:通过公式3得到同一层中两个相邻节点的距离w,通过公式4得到第s
    层,第t个节点的横坐标值x,其中,3≤s≤d,1≤t≤nums且s、t均为正整数。

    w=(W-x1-x2)/(nums-1+2)?????????????(3)

    x=x1+t×w??????????????????????????(4)

    其中,W为画布的宽度,x1,x2分别为第s层左右两边的留白。

    步骤4.4:对步骤三得到的有向图中的所有节点,根据每个节点上的文本的
    内容和样式,得到节点的边框长宽信息。

    步骤4.5:根据步骤4.3得到的每个节点边框的左上角的坐标及步骤4.4得到
    的节点边框长宽信息得到与边框相关的线的开始点和结束点坐标。

    步骤五、进行可视化映射。

    在步骤四的基础上,根据预先定义的图形表示规则完成可视化数据的映射。
    图形表示规则包括定义节点颜色、节点形状、节点样式、边的颜色、边的形状、
    边的样式。

    有益效果

    本文提出了一种新的针对面向对象程序设计语言源代码的软件可视化方
    法,弥补了类图用于软件可视化中的不足,能够更准确直观的反应软件的内部
    结构和软件内类的地位和作用,便于使用者快速获得软件设计层次上的理解。

    附图说明

    图1为本发明关于针对面向对象程序设计语言源代码的软件可视化方法的
    实施例1中的流程示意图;

    图2为本发明关于针对面向对象程序设计语言源代码的软件可视化方法的
    实施例1中的原始数据对应的原始图结构;

    图3为本发明关于针对面向对象程序设计语言源代码的软件可视化方法的
    实施例1中的得到的有向图;

    图4为本发明关于针对面向对象程序设计语言源代码的软件可视化方法的
    实施例1中的得到的布局效果图;

    图5为本发明关于针对面向对象程序设计语言源代码的软件可视化方法的
    实施例1中得到的可视化效果图。

    具体实施方式

    下面结合附图和实施例对本发明技术方案进行详细描述。

    实施例1:

    源代码如下所示:

    源码文件1:carlib.java:

    import?java.io.*;

    interface?CAR

    {

    ??public?void?start(?);

    ??public?void?stop(?);

    }

    class?SmallCar?implements?CAR

    {

    ???public?void?start(?)

    ???{

    ??????System.out.println(″smallcar?start...″);

    ???}

    ???public?void?stop(?)

    ???{

    ??????System.out.println(″smallcar?stop!″);

    ???}

    }

    class?BigCar?implements?CAR

    {

    ???public?void?start(?)

    ???{

    ??????System.out.println(″bigcar?start...″);

    ???}

    ???public?void?stop(?)

    ???{

    ??????System.out.println(″bigcar?stop!″);

    ???}

    }

    源码文件2:Linklist.java:

    public?class?Linklist?{

    public?Link?first;

    //链表中数据项的个数

    public?int?size;

    public?Linklist(?){

    ???first=null;

    ???size=0;

    }

    //在表头插入新的数据

    public?void?insertFirst(CAR?value){

    ???Link?link=new?Link(value);

    ???link.next=first;

    ???first=link;

    ???size++;

    }

    //判断链表是否为空

    public?boolean?isEmpty(?){

    ???return?size==0;

    }

    //删除表头

    public?Link?deleteFirst(?){

    ???Link?temp=first;

    ???first=first.next;

    ???size--;

    ???temp.data.stop(?);

    ???return?temp;

    }

    //输出链表中的所有数据

    public?void?display(?){

    ???Link?curr=first;

    ???while(curr?。絥ull){

    ??????curr.data.start(?);

    ??????curr=curr.next;

    ???}

    ???System.out.println(?);

    }

    //返回链表中数据项的个数

    public?int?size(?){

    ???return?size;

    }

    //获取从头至尾的第i个数据项

    public?Link?get(int?i){

    ???if?(i>size(?)-1||i<0)

    ??????try?{

    ??????????throw?new?IndexOutOfBoundsException(?);

    ??????}catch(Exception?e){

    ??????????????e.printStackTrace(?);

    ???????????}

    ????????Link?curr=first;

    ????????for?(int?n=0;n<size(?);n++){

    ???????????if?(n==i)

    ??????????????return?curr;

    ???????????else

    ??????????????curr=curr.next;

    ????????}

    ????????return?null?;

    ????}

    ????//输出从头至尾的第i个数据项

    ????public?void?remove(int?i){

    ???????if?(i==0)

    ??????????deleteFirst(?);

    ???????else?if?(i==size(?)-1)

    ??????????get(i-1).next=null;

    ???????else?{

    ??????????get(i-1).next=get(i+1);

    ???????}

    ???????size--;

    ????}

    ????public?class?Link?{

    ???????public?CAR?data;

    ???????public?Link?next;

    ???????public?Link(CAR?data){

    ??????????this.data=data;

    ???????}

    ????}

    }

    源码文件3:Link_list.java

    public?class?Link_list?{

    ???public?static?void?main(String[?]args)?{

    ??????Linklist?ll=new?Linklist(?);

    ??????//插入汽车

    ??????SmallCar?sc=new?SmallCar(?);

    ??????ll.insertFirst(sc);

    ??????BigCar?bc=new?BigCar(?);

    ??????ll.insertFirst(bc);

    ??????ll.display(?);

    ??????while?(!ll.isEmpty(?)){

    ???????????ll.deleteFirst();

    ????????}

    ????????System.out.println(″Ok″);

    ????}

    }

    针对上述3个Java的源码文件,使用本发明提出的方法进行可视化,其流程
    示意图如图1所示,具体操作步骤如下:

    步骤一、从源代码中提取关键信息。

    从源码文件1、2、3的源代码中提取关键信息,以Linklist类为例,提取的
    信息如下:

    类所在的包、类名、父类、继承方式、类的类型、类的修饰符、类所包含
    的嵌套类等信息,如表5所示。

    表5类相关信息


    类构造函数参数、类方法的名字、类方法的参数、类方法的返回值类型以
    及类方法的修饰符等的信息,如表6所示。

    表6方法相关信息



    类属性的类型、类属性的修饰符等信息,如表7所示。

    表7类属性

    ??类属性
    ??类属性的类型
    ??类属性的修饰符
    ??first
    ??Link
    ??public
    ??size
    ??int
    ??public

    步骤二、获取原始图数据信息。

    将步骤一得到的关键信息存储到图以及与其相关的边和节点数据结构的相
    应位置,即可到一个仅包含节点名称和边名称的原始图数据信息,即得到一个
    图结构,如图2所示。其中,方框代表节点,方框内的文字为节点的名称,节点
    之间的有向边表示节点之间的服务关系,有向边上面的数字表示服务关系的优
    先级;其节点类型和节点所在类文件创建时间,如表8所示。

    表8节点的其它相关属件

    ??节点
    ??节点类型
    ??节点所在类文件创建时间
    ??Linklist
    ??3
    ??1273422602
    ??Link
    ??3
    ??1273422602
    ??CAR
    ??2
    ??1273420800
    ??void
    ??4
    ??0
    ??boolean
    ??4
    ??0
    ??int
    ??4
    ??0
    ??Link_list
    ??3
    ??1273423212
    ??String
    ??4
    ??0
    ??SmallCar
    ??3
    ??1273420800
    ??BigCar
    ??3
    ??1273420800

    注:1表示抽象类,2表示接口类,3表示普通类,4表示未定类型。

    步骤三、获取有向图数据信息。

    对步骤二得到原始图数据信息,依次使用冗余边的消减原则和存在环路时
    的消减原则进行处理,即可得到有向图数据信息;具体为:

    以节点Linklist与节点Link之间的冗余边为例,因为存在最高优先级的
    边所以将仅保留优先级为1的边,其它删除。其它节点间的冗余边按照前文所
    提方法均可消减掉。

    因为此图中不存在环路所以删除所有冗余边后即可得到两点间仅含有一个
    边的有向无环图,如图3所示。

    步骤四、设计图形布局。

    经图形布局算法处理后,按照各个节点的位置坐标重新绘制得到图4:

    步骤五、进行可视化映射。

    在步骤四的基础上,根据预先定义的图形表示规则完成可视化数据的映射。
    图形表示规则中边的颜色、边的形状、边的样式,如表9所示。

    表9边的颜色、形状和样式


    节点颜色、节点形状、节点样式如表10所示。

    表10节点颜色、节点形状、节点样式



    实施例1的可视化效果图如图5所示。

    以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通
    技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,或者对
    其中部分技术特征进行等同替换,这些改进和替换也应视为本发明的?;し段?。

    关于本文
    本文标题:针对面向对象程序设计语言源代码的软件可视化方法.pdf
    链接地址://www.4mum.com.cn/p-5817374.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 黑龙江十一选五开奖图 江苏11选5走势图 彩票投注 重庆幸运农场开到几点 辽宁11选5走势图表 真实能提现的棋牌游戏 体育彩票彩票开奖 快乐飞艇55五十五秒是官方开蒋吗 甘肃11选5走势图任选基本走势 澳洲幸运10技巧 福彩3d和值走势图彩吧 山西11选5推荐号 中国竟彩 竞彩足球单关历史记录 辽宁11选5中奖规则 彩票投注机