首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基于 HTML5 Canvas 绘制的电信网络拓扑图

常见的网络拓扑结构有星型结构、总线结构、环形结构、树形结构、网状结构、混合型拓扑以及蜂窝拓扑结构等,本文的例子主要描绘的是总线型拓扑,在显示上相对其他的结构类型来说更清晰明了,绘制起来也非常容易。...虽然题目起的名字是电信网络拓扑图,几乎所有的拓扑图都能涵盖,例如基本网络图,网络拓扑图,机架图,网络通信图,3D网络图等等。 效果图如下: ? 这个图看起来挺简单的,代码也少,但是内容不少。...首先,机柜01、机柜02、机柜03 都是 ht.Group “组”类型,ht.Group 类型用于作为父容器包含孩子图元,在 GraphView 拓扑图(http://www.hightopo.com)...那么,我们来看看如何绘制这个组以及组内部的节点吧,先创建“机柜02”的 Group 节点,因为整个例子我创建了三个 Group 节点,而且创建的方式都类似,因此把创建组的代码封装起来复用: function...position为中心绘制 dataModel.add(group);//将创建的组节点添加进数据容器中 return group; } 组是可以通过双击展开合并的,展开的时候显示的是一个有标题栏的框

1.7K30
您找到你想要的搜索结果了吗?
是的
没有找到

Fabric.js 自由绘制椭圆

这是我参与「掘金日新计划 · 6 月更文挑战」的第2天,点击查看活动详情 本文简介 点赞 + 关注 + 收藏 = 学会了 本文讲解在 Fabric.js 中如何自由绘制椭圆形,如果你还不了解 Fabric.js...,可以查阅 《Fabric.js从入门到精通》。...所以我们可以先把框选时的边框和背景色设置成透明,然后再框选时监听鼠标点击、移动、松开的事件,从而绘制出一个椭圆。...点击时的坐标在移动时的左上方 点击时的坐标在移动时的右上方 点击时的坐标在移动时的右下方 这4种情况我在 《Fabric.js 自由绘制矩形》 里逐一分析过,可以去看看(记得点个赞哦~) 编码 在理清思路后...代码仓库 ⭐Fabric.js 自由绘制椭圆

2.6K20

设备拓扑图

开发需求背景 今天领导派了一个小活,要求我将公司的物联网平台的网络拓扑图画出来。做一个数据展示的页面,集成到现有的iot平台上。 说到拓扑图,大家都也都比较清楚,能够清晰地表示网络链路的链接关系。...网络拓扑图是指由网络节点设备和通信介质构成的网络结构图。...一般的拓扑图都是这样子的 还有这一种 这些设计图都是架构师使用软件画出来的,数据都是固定的,不支持动态修改,没有动效,而我们需要支持动态添加网络节点。需要有动效。...先给大家看看,下面来详细讲解如何使用echarts一步一步完成这个拓扑图的。 技术调研 接到需求后我调研了几个物联网仪表盘后,我觉得使用echart来试试,因为d3太难了。...拓扑图中需要与几个实体,代表链路中的每一个设备,一个设备可能有进线,有出线,也有可能有多条线,线的条数都不能固定的。因为随着设备的增加,中央机器到达各个设备的线也是逐渐增加的。

3.9K10

网络拓扑图基础入门

[TOC] 0x00 快速入门 为什么要画拓扑图? 答:拓扑图可以向用户或者他人表达我们的设计思想与理念,以及展示设计的特点/目的/功能。...对于我们系统规划人员来说无论是做网络规划/系统设计/网络管理,画拓扑图是一个最基本能力; 对于我们网络管理员来说,画拓扑图/排列图可以记录企业网络连接/设计/规划等一系列重要资料,为管理和后期排错,故障解决...,例行维护以及交接(与继任者)减轻负担 画拓扑图常常采用工具: Microsoft Visio:具有专业外观图表,以便理解/记录和分析信息数据/系统和过程; PowerPoint 如何画拓扑图?...Step1.先看单位画好的拓扑图进行模拟照画 Step2.到机房看看具体的机器设备与走线连接情况,为后面画出机房图做准备 Step3.找到单位已经规划/部署好的网络(相关文档),记录设备的位置/连接关系画拓扑图...Steo4.在自己的空闲时间从零开始画拓扑图,先从最小/最简单的网络画起,然后再逐渐壮大成一个大型网络; 画拓扑图的注意事项: 需要简单明了/间接 合理的用不同字号/颜色/颜色标注; 多个机柜进行分类如

1.7K20

使用D3.JS进行坐标轴绘制和图绘制

前面已经说过D3的功能十分强大,但是往往实际使用时只需要用到一部分内容,在这里,就只用到了 比例尺 和 布局 两部分,外加 核心 的请求部分(请求数据),分别用来绘制Graph的显示坐标轴和图的顶点及边...绘制坐标轴 传统坐标轴 这里指的是 第一象限 的坐标轴,即两轴的坐标均为正数,坐标原点为(0,0) 具体可以看 这里,说的比较详细。...attr('class', 'axis') .attr("transform","translate("+0.5*svgWidth+",0)") // 平移到竖直中间 .call(yAxis); 绘制图...(circle+line) 关于图的绘制,本质上就是圆点和线的绘制,所以这也解释了为什么输入文件中的边数据也需要包含坐标的原因,因为在d3中绘制顶点和绘制边是互不相关的。...边的颜色 .attr('stroke-width', function() { return 0.2; // 边的宽度(粗细) }); 数据读入 在数据读取方面,d3.js

6.4K30

网络拓扑图是什么意思?网络拓扑图有哪些分类?

这个时候就需要使用到网络拓扑结构,使用不同拓扑结构的就会形成网络拓扑图,那么网络拓扑图是什么意思?网络拓扑图有哪些分类?下面小编就为大家来详细介绍一下。...image.png 一、网络拓扑图是什么意思?...所谓网络拓扑图就是网络节点和通信介质一起构成的网络结构图,其实通俗来说就是不同拓扑结构的展示效果图,网络拓扑图可以清晰地显示各种网络节点设备的位置,以及与其他设备连接在一起的通信介质,毕竟不同的网络拓扑结构连接方式都是一样的...,通过网络拓扑图可以清楚的看到不同结构的具体构成方式。...二、网络拓扑图有哪些分类?

4.2K30

网络拓扑图基础入门

[TOC] 0x00 快速入门 为什么要画拓扑图? 答:拓扑图可以向用户或者他人表达我们的设计思想与理念,以及展示设计的特点/目的/功能。...对于我们系统规划人员来说无论是做网络规划/系统设计/网络管理,画拓扑图是一个最基本能力; 对于我们网络管理员来说,画拓扑图/排列图可以记录企业网络连接/设计/规划等一系列重要资料,为管理和后期排错,故障解决...,例行维护以及交接(与继任者)减轻负担 画拓扑图常常采用工具: Microsoft Visio:具有专业外观图表,以便理解/记录和分析信息数据/系统和过程; PowerPoint 如何画拓扑图?...Step1.先看单位画好的拓扑图进行模拟照画 Step2.到机房看看具体的机器设备与走线连接情况,为后面画出机房图做准备 Step3.找到单位已经规划/部署好的网络(相关文档),记录设备的位置/连接关系画拓扑图...Steo4.在自己的空闲时间从零开始画拓扑图,先从最小/最简单的网络画起,然后再逐渐壮大成一个大型网络; 画拓扑图的注意事项: 需要简单明了/间接 合理的用不同字号/颜色/颜色标注; 多个机柜进行分类如

2.5K20

HT For Web 拓扑图背景设置

(function(g, rect){…})来绘制背景 Layer:通过设置graphView.setLayer(['…', '…', '…', …])来将graphView拆分为多个图层,并为各个图层命名...这两张图片展示的是通过graphView.addBottomPainter(function(g, rect){...})方法绘制拓扑图组件背景,通过graphView.addTopPainter(function...(f, rect){...})方法来绘制拓扑图组件的水印效果,左边的图片展示的是页面初始效果,右边展示的是拓扑图通过缩小和拖拽图元位置后的效果,从效果上可以看出,拓扑图的背景和水印的位置和大小均发生了改变...在代码中addBottomPainter画的就是灰白相间的背景图片,addTopPainter绘制的是系统当前时间,最后通过定时器setInterval设置1秒刷新一次graphView拓扑图组件。...,右边展示的是拓扑图通过缩小和拖拽图元位置后的效果,从效果上可以看出,拓扑图的背景和图元的位置和大小均发生了改变,都跟随拓扑图的缩放和移动而改变。

1.5K60

HT For Web 拓扑图背景设置

(function(g,      rect){…})来绘制背景 Layer:通过设置graphView.setLayer(['…',      '…', '…', …])来将graphView拆分为多个图层...这两张图片展示的是通过graphView.addBottomPainter(function(g, rect){...})方法绘制拓扑图组件背景,通过graphView.addTopPainter(function...(f, rect){...})方法来绘制拓扑图组件的水印效果,左边的图片展示的是页面初始效果,右边展示的是拓扑图通过缩小和拖拽图元位置后的效果,从效果上可以看出,拓扑图的背景和水印的位置和大小均发生了改变...在代码中addBottomPainter画的就是灰白相间的背景图片,addTopPainter绘制的是系统当前时间,最后通过定时器setInterval设置1秒刷新一次graphView拓扑图组件。...,右边展示的是拓扑图通过缩小和拖拽图元位置后的效果,从效果上可以看出,拓扑图的背景和图元的位置和大小均发生了改变,都跟随拓扑图的缩放和移动而改变。

96530

原 荐 基于 HTML5 Canvas 的交

,毕竟都是用矢量绘制的~ 界面生成 底层的 div 是通过 ht.graph.GraphView 组件生成的,然后就可以利用 HT for Web 提供好的方法,调用 canvas 画笔随便绘制就好,先来看看怎么生成底层...数组具体的声明自行看 subway.js。...最后绘制这些地铁线上的点,这个部分 subway.js 中也分离出来了,命名以“mark_Point”、“t_Point”以及“n_Point”开头,我在前面 js 的展示部分有对这些数组进行解释,大家动动中指划上去看看...你可能会看不见自己绘制的图,因为他们太小了,这个时候可以设置 graphView 拓扑组件上的 fitContent 函数,我们顺便将拓扑图上的所有东西不可移动也设置一下: gv.fitContent(...“站点”或者线路,则拓扑图会自适应到对应的部分,将被双击的部分展现到拓扑图的中央。

96140

Node.js 控制台动画,绘制跨年祝福

Node.js 里面可以通过 process.stdout.isTTY 来查看是否是 TTY 类型的标准输出流,然后提供了 readline 这个包来操作它。...能够移动光标位置,能够清除内容,也就能够刷新、能够做任意的绘制,这是控制台动画的基础。 绘制用 readline.wrtie(data) 来输出字符,可以指定字符的颜色(用 chalk 这个包)。...小结一下: TTY 类型的控制台可以设置颜色、可以在任意位置清除和修改内容,这是控制台动画能一帧帧刷新的基础,Node.js 提供了 readline 模块来做这些。...控制台只能显示字符,图片可以拿到像素信息然后用带颜色的字符来显示,艺术字是提前准备好字符数组来绘制,综合把这些内容绘制在不同的位置,然后定时一帧帧刷新就构成了控制台动画。...其中,控制台的光标位置修改和内容的清除使用 Node.js 的 readline 内置模块,其余的是第三方的包。

2.1K20
领券