注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

星期五

明天不上班

 
 
 

日志

 
 
关于我

一个特立独行的Java程序员,比较宅,上上网,写博客,听音乐,看电影。

网易考拉推荐

Twaver Flex版的拓扑Demo  

2011-04-27 21:15:14|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

最近一直在调研Twaver 的Flex版,闲着没事写了一个小Demo

发现对使用Twaver完成拓扑的放大,缩小,拖拽,多个拖拽,自动布局 等功能是相当的容易。

对拓扑的添加,修改等我想这些应该也可以,只是我的Demo还没有实现。

直接看我的Code

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:twaver="http://www.servasoftware.com/2009/twaver/flex"
paddingLeft="0" paddingRight="0" paddingTop="0" paddingBottom="0"
creationComplete="init();">

<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Image;
import mx.controls.TextInput;
import mx.core.DragSource;
import mx.core.UIComponent;
import mx.events.DragEvent;
import mx.managers.DragManager;
import mx.collections.ArrayCollection;

import twaver.*;
import twaver.network.layout.*;

[Embed(source="/images/zoomIn.png")]
public static const zoomIn:Class;
[Embed(source="/images/zoomOut.png")]
public static const zoomOut:Class;
[Embed(source="/images/zoomOverview.png")]
public static const zoomOverview:Class;
[Embed(source="/images/zoomReset.png")]
public static const zoomReset:Class;


public function init():void{
initBox();
}

public function initBox():void{
var box:ElementBox = network.elementBox;
var array:Array = new Array();
for(var i:int = 0; i<100; i++){
var node:Node = new Node();
node.name = i.toString();
box.add(node);
array.push(node);
}

for(var j:int = 1; j<30; j++){
var link:Link = new Link( array[0] as Node,array[j] as Node);
box.add(link);
}



for(var j:int = 30; j<60; j++){
var link:Link = new Link( array[10] as Node,array[j] as Node);
box.add(link);
}

for(var j:int = 60; j<80; j++){
var link:Link = new Link( array[42] as Node,array[j] as Node);
box.add(link);
}

for(var j:int = 80; j<100; j++){
var link:Link = new Link( array[77] as Node,array[j] as Node);
box.add(link);
}

}

public function auto():void{
var autoLayouter:AutoLayouter = new AutoLayouter(network);
autoLayouter.animate = true;
autoLayouter.doLayout(Consts.LAYOUT_ROUND);
}

public function spring():void{
var springLaouter:SpringLayouter = new SpringLayouter(network);
springLaouter.start();
}
]]>
</mx:Script>

<mx:VBox width="100%" height="100%" verticalGap="0" horizontalGap="0">
<mx:HBox id="toolbar">
<mx:HBox id="normal" horizontalGap="0">
<mx:Button icon="{zoomIn}" width="28" height="20" click="network.zoomIn()"/>
<mx:Button icon="{zoomOut}" width="28" height="20" click="network.zoomOut()"/>
<mx:Button icon="{zoomReset}" width="28" height="20" click="network.zoomReset()"/>
<mx:Button icon="{zoomOverview}" width="28" height="20" click="network.zoomOverview()"/>
<mx:Button label="autoLayout" click="auto()"/>
<mx:Button label="springLayout" click="spring()"/>
</mx:HBox>
</mx:HBox>
<twaver:Network id="network" width="100%" height="100%"/>
</mx:VBox>
</mx:Application>

截个图吧!!!(对了代码中并没有设定坐标,使用了springLayout)

  Twaver Flex版的拓扑Demo - zhenghaoju700 - zhenghaoju700 的博客

 

Demo下载地址 http://u.115.com/file/f11c84171

再也不上传CSDN了,现在改为115网盘

 

  评论这张
 
阅读(1752)| 评论(1)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017