跨交换机不同VLAN间的通信

实验原理

利用三层交换机的路由功能,通过识别数据包的 IP 地址,查找路由表进行转发。三层交换机利用直连路由可以实现不同的 VLAN 间的访问。三层交换机给接口配置 IP 地址采用 SVI(交换虚拟接口)的方式实现 VLAN 间互连。SVI是指为交换机中的VLAN 创建虚拟接口,并且配置IP地址。

阅读更多

单臂路由实现不同VLAN间通信

实验原理

单臂路由(router-on-a-stick)是指在路由器的一个接口上通过配置子接口(或“逻辑接口”,并不存在真正物理接口)的方式,实现原来相互隔离的不同 VLAN(虚拟局域网)之间的互联互通。PC1 到 PC2 发送的数据包是经过路由器,从路由器 f0/0 入,再从 f0/0 出,所以称之为单臂路由。

阅读更多

ZOJ 3785 What day is that day?

Time Limit: 2 Seconds Memory Limit: 65536 KB
It’s Saturday today, what day is it after $1^1 + 2^2 + 3^3 + … + N^N$ days?
Input
There are multiple test cases. The first line of input contains an integer T indicating the number of test cases. For each test case:
There is only one line containing one integer N (1 <= N <= 1000000000).
Output
For each test case, output one string indicating the day of week.
Sample Input
2
1
2
Sample Output
Sunday
Thursday
Hint
A week consists of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday.

阅读更多

Canvas——图片像素化

基础知识:

  • drawImage(image, x, y, [width], [height])——绘制图像,参数image可以是HTML img元素、HTML5 canvas元素或video元素。
  • getImageData(x, y, width, height)——画布中访问像素数据,返回一个2D渲染上下文ImageData对象,它包含3个属性:width、height、data(存储全部像素信息CanvasPixelArray)。
  • FileReader——FileReader对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File Blob 对象指定要读取的文件或数据。

阅读更多

Canvas动画---反弹

判断一个形状是否超过画布的右边界——即检查形状的x位置是否超过了画布的宽度。

如何让形状在画布的边界处弹回?

1、首先需要在Shape类中添加新属性,它们将用于定义形状是否碰到边界及反弹的路径方向:

1
2
this.reverseX = false;
this.reverseY = false;

阅读更多

Canvas动画---圆周运动

基础知识

动画循环的三要素:

  • 清除画布
  • 更新需要绘制的对象
  • 在画布中重新绘制对象

阅读更多

Canvas——马赛克效果

基础知识:

  • getImageData(x, y, width, height)——画布中访问像素数据,返回一个2D渲染上下文ImageData对象,它包含3个属性:width、height、data(存储全部像素信息CanvasPixelArray)。

阅读更多

Canvas——复杂路径

将多个路径连接在一起

  • 开始路径
  • 原点移到当前路径
  • 从原点绘制一条线到指定点

阅读更多

Canvas——阴影、渐变

阴影

创建阴影效果的唯一方法是将shadowColor修改为不透明值,同时将shadowBlurshadowOffsetXshadowOffsetY都设置为非0值。其中shadowBlur控制模糊度,后两者控制阴影的偏离距离。

阅读更多

Canvas——合成

在画布中绘制的所有东西都是已经合成的,这意味着绘制的所有的东西都会与已经绘制的现有元素合并在一起。这些都是基本合成,只是将一些内容叠加到另一些内容之上。

1. 全局不透明度——globalAlpha属性

globalAlpha属性会影响将要绘制的对象的透明度,它的值必须在0.0(全透明)1.0(不透明)之间,默认值是1.0。通过给fillStyle设置一个小于1的alpha值的rgba值,也可以得到相同的效果。不同之处是,globalAlpha设置的是全局,它会在后续应用rgba颜色值等alpha值时被参照,即充当了计算其它alpha值的基数。(例子中设置了globalAlpha为0.5,然后又应用了一次fillStyle(带有alpha值为0.5的rgba),所以实际Alpha值为0.25)

阅读更多