介绍
定风波苏轼名篇,这首记事抒怀之词作于宋神宗元丰五年(公元1082年)春,当时是苏轼因“乌台诗案”被贬为黄州团练副使的第三个春天。 三月七日,沙湖道中遇雨,雨具先去,同行皆狼狈,余不觉。已而遂晴,故作此。 莫听穿林打叶声,何妨吟啸且徐行。竹杖芒鞋轻胜马。谁怕!一蓑烟雨任平生。 料峭春风吹酒醒,微冷,山头斜照却相迎。回首向来萧瑟处。归去,也无风雨也无晴。 1234567891011121314 《定风波》作曲:崔轼玄,刘卓 编曲:郎梓朔 放下千斤重 只剩无法承受之轻 得之我幸 纵有失去不怨命 酒先干为敬 是非留给后人评 喧嚣过后 心中风波为谁定 英雄皆寂寞 铮铮铁骨尚有柔情 时光无心 留不住奔波的身影 愿不负曾经 半生爱恨岂无凭 万籁俱寂 梦里长歌还未静 作词:崔轼玄 1234567891011 也 ...
网络实验目录和实验软件下载
网络实验相关目录: 网络实验(1)抓包实验 网络实验(2)网络模拟器熟悉环境(ip, arp) 网络实验(3)网络模拟器-基础知识 网络实验(4)网络模拟器-ftp模拟(没声音) 网络实验(5)思科模拟软件-vlan设置 网络实验(6)思科模拟软件-静态路由 软件下载 1、64位抓包软甲Wireshark3.2.2.zip 2、思科网络模拟软件 3、实验用pkt包
Vs Code终端激活Anconda环境问题
转载:https://blog.csdn.net/lgt3402788288/article/details/105265764 当我们使用vscode的终端操作时,一般默认选择是cmd.exe,或者是powershell.exe,这两个选择下我们在终端使用activate 命令激活自己的虚拟环境是不可以的,因为存在冲突,解决办法则需修改vscode配置文件。首先文件->首选项->设置 ,在右上角点打开json按钮在后面加上这个配置就行 123456789"terminal.integrated.profiles.windows": { "my-cmd": { "path": "C:\\Windows\\System32\\cmd.exe", "args": [] } }, "terminal.integrated.defaultProfile.windows": &q ...
notebook中conda环境切换问题
转载https://segmentfault.com/a/1190000023346483 如果notebook中的环境和base一样,不切换到你自己的环境中,造成python版本或其他版本不一致的情况那么可以再base环境中安装nb_conda_kernels。 1conda install nb_conda_kernels 如果还是找不到新环境,那么在新环境中安装ipykernel。 conda install -n 环境名称 ipykernel #直接指定环境安装ipykernelpython -m ipykernel install –user(非服务器可缺省) –name 环境名称 #写入jupyter notebook 的kernel 在notebook中新建文件的时候选择你这个环境名称的kernel就行了
pytorch函数学习(1)
希望把难理解的函数都用例子打一遍 1、 torch.gather 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849import torcha = torch.Tensor([[1,2], [3,4]]) # 列不变,行按值b = torch.gather(a,0,torch.LongTensor([[0,0], # 第一个0 取值 由于出现在第0列 行值是0 所以去取值(0,0)的值1 #第二个0 取值,由于出现在第1列 行值是0 所以去取值(0,1)的值2 [1,0]])) #第一个1 取值 由于出现在第0列 行值是1 所以去取值(1,0)的值3 ...
three.js(5) three.js中常见的数据类型
在Three.js中,有许多常见的数据类型和使用方法,以下是一些常见的数据类型和它们的使用方法: Vector3: Vector3是用来表示3D向量的数据类型,它包含x、y和z三个分量。它经常被用来表示位置、方向和速度等信息。使用方法如下: 12var position = new THREE.Vector3(1, 2, 3);set(x, y, z):设置向量的x、y、z分量。 主要的api: 123var vector = new THREE.Vector3();vector.set(1, 2, 3); add(v):将当前向量与另一个向量v相加。 123var vector1 = new THREE.Vector3(1, 2, 3);var vector2 = new THREE.Vector3(4, 5, 6);vector1.add(vector2); sub(v):将当前向量减去另一个向量v。 123var vector1 = new THREE.Vector3(4, 5, 6);var vector2 = new THREE.Vector3(1, 2, 3);vecto ...
three.js(4) Renderer介绍和使用
Three.js中的Renderer(渲染器)是用来将场景和相机渲染到屏幕上的组件。它可以将3D场景中的模型、光照和材质等元素转化成2D图像,并显示在浏览器中。 在Three.js中,有几种不同类型的渲染器可用,每种都有其自己的用途和特性。以下是一些常见的Three.js渲染器的种类: WebGLRenderer:这是Three.js中最常用的渲染器,它使用WebGL来绘制3D场景。它提供了强大的图形渲染功能,并且能够在大多数现代的Web浏览器中运行。 CSS3DRenderer:这个渲染器可以用来在3D空间中呈现DOM元素。它可以与WebGLRenderer结合使用,用于在3D场景中显示HTML元素。 SVGRenderer:这个渲染器可以用来在SVG格式中呈现3D场景。它通常用于在需要矢量图形的环境中使用,比如在打印或分辨率无关的应用中。 RaytracingRenderer:这个渲染器使用光线追踪技术来渲染3D场景,产生非常逼真的图像。它是一个相对较新的渲染器,通常用于需要高质量渲染的应用中。 这些是一些常见的Three.js渲染器的种类,每种都有其自己的特点和适用范围。根据应用 ...
three.js(3) Camera(相机)
前置知识: 1)在Three.js中,相机的坐标系有两种:世界坐标系和相机坐标系。 世界坐标系(World Coordinate System):世界坐标系是一个固定的坐标系,用来表示场景中所有物体的位置和方向。在世界坐标系中,原点通常位于场景的中心,坐标轴的方向是固定的。 相机坐标系(Camera Coordinate System):相机坐标系是相对于相机的坐标系,原点位于相机的位置,坐标轴的方向是相对于相机朝向定义的。 假设我们有一个在世界坐标系中的三维物体,现在我们需要将其坐标转换到相机坐标系中,并最终投影到屏幕坐标系上。 假设物体的世界坐标为 (x, y, z),相机的视图矩阵为 M,投影矩阵为 P。 将物体的世界坐标转换到相机坐标系中: 物体相对于相机的坐标 = M * (x, y, z, 1) 其中,M为相机的视图矩阵,(x, y, z, 1)为物体在齐次坐标系中的坐标。将相机坐标转换为屏幕坐标: 屏幕坐标 = P * (物体相对于相机的坐标) 其中,P为投影矩阵。通过这些矩阵相乘的操作,我们可以将物体的世界坐标转换为屏幕坐标,然后在屏幕上进行渲染显示 ...
three.js(2) Scene Api介绍
Three.js中的Scene(场景)是一个重要的组件,用于存放所有的3D对象、光源和相机等,并管理它们在3D空间中的关系和交互。下面对Scene的API进行详细介绍,并提供一个简单的使用实例。 Scene的API介绍add(object):将一个3D对象添加到场景中。remove(object):将一个3D对象从场景中移除。getObjectById(id):根据id获取场景中的对象。getObjectByName(name):根据名称获取场景中的对象。traverse(callback):遍历场景中的所有对象,并对每个对象执行回调函数。dispose():释放场景中的所有对象和资源。好的,让我分别为您提供每个函数的使用例子。 add(object)javascript 123456789101112// 创建一个新的场景var scene = new THREE.Scene();// 创建一个立方体对象var geometry = new THREE.BoxGeometry();var material = new THREE.MeshBasicMaterial({ co ...
three.js(1) api介绍和一个小栗子
Three.js是一个基于WebGL的JavaScript 3D库,它提供了丰富的API来简化在浏览器中创建和渲染3D图形的过程。下面我们将简单介绍一些Three.js的API,并提供一个有趣的例子来展示它的用法。 Three.js API介绍Scene(场景):表示整个3D场景的容器,用于存放所有的3D对象,光源和相机等。Camera(相机):决定了观察者的视角,包括透视相机(PerspectiveCamera)和正交相机(OrthographicCamera)两种类型。Renderer(渲染器):用于渲染3D场景,将3D场景绘制到2D画布上,提供了WebGLRenderer作为主要的渲染器。Geometry(几何体):描述3D对象的形状和结构,包括点(Point)、线(Line)、面(Face)等。Material(材质):决定了3D对象的外观,包括颜色、纹理、光照效果等。Mesh(网格):将几何体和材质结合起来,用于创建最终的3D对象。Light(光源):用于提供光照效果,包括环境光(AmbientLight)、平行光(DirectionalLight)、点光源(PointLig ...
webgl入门介绍
WebGL是一种基于Web的图形库,它允许开发者在浏览器中实现高性能的3D图形渲染。在本文中,我们将介绍WebGL的安装和基本使用入门。 安装WebGL要开始使用WebGL,你需要一个支持WebGL的浏览器,比如Google Chrome、Mozilla Firefox或者Safari。大多数现代浏览器都支持WebGL,但你可能需要确保浏览器已启用WebGL功能。你可以在浏览器的设置中搜索“WebGL”来确认是否已启用。 基本使用入门一旦你确认你的浏览器支持WebGL,并且已启用了相关功能,你就可以开始使用WebGL了。以下是一个简单的入门例子,演示如何在HTML页面中使用WebGL绘制一个简单的三角形。 创建HTML页面 首先,创建一个HTML页面,并在页面中引入WebGL的上下文。通常,你需要在页面的标签中添加以下代码: 1234567891011121314151617181920<!DOCTYPE html><html> <head> <title>WebGL入门</title> <script s ...
java-接口设计
初学接口,我们觉得它是java一个解决多继承的方式。学深了以后就会觉得接口是一个功能的标志,不关里面有没有函数声明。再加上多态的加持,可以解决一些特殊的结构性的问题。这次我以一个例子来构造一个组合型的操作。这是我做的netty-udp重传操作里的部分内容,来说明接口的声明和使用。并且通过这个例子,可以让我们透视下大牛们在构造包结构时的想法和高瞻远瞩。首先上个结构图: 这里先说明下,我想构造的操作结构有两种,一种是简单操作,三次超时返回失败,如果有响应返回正常结果。还有一种操作是复杂操作,复杂操作可以包含另外的操作比如简单操作和复杂操作。复杂操作的返回结果是所有里面操作的结果。复杂操作又分两种一种是里面所有的子操作并发的,还有一种是顺序的。 so,我的根的接口那么就是IOperation 12345public interface IOperation {} (adsbygoogle = window.adsbygoogle || []).push({}); 另外,为了使得我的复杂操作能够加入某个子操作(可能 ...
netty--模式入门
这篇算是总结,也算是大白话netty入门。 Bootstrap这个类 可以绑定ip和端口,可以配置bosseventloopgroup nioserverchannel(也就是用eventloop中的select 监听 客户端连接的 accept事件 )可以配置niochannel(也就是当连接建立之后,用worereventloopgroup 中的某个eventloop 中的select去监听某个channel中的读写等事件 eventloop 这个类最终会是一个EventExecutor 一个eventExecutor 有一个线程,一个taskqueue ,一个executor执行器。 这个异步队列是核心。 eventloop 许多个就是 nioEventloopgroup。那就是多个执行器和相关线程,当然还有多个taskqueue。 这就和nio对应起来了多个客户端的channel 可以注册到一个eventloop 会共享一个 taskqueue。也就是说这些channel里的任何事件都组织成一个task异步任务放到队列里去然后可以注册到一个eventloop ...
netty--超时重传2(定时器)
上篇用sleep 这篇用的是netty时间轮定时器达到类似效果只改了通用的EchoWrite 辅助类 这个类 换成时间片实现超时重传。 123456789101112131415161718192021222324252627282930313233343536373839404142434445public class EchoWrite { EventExecutor e; DefaultPromise t; int times1 = 0; final Timer timer = new HashedWheelTimer(); public EchoWrite2() { this.e = new DefaultEventExecutor(); t=new DefaultPromise(this.e); } public <T> DefaultPromise echoWrite(String msg, InetSocketAddress add ,Chann ...
netty--future and Promise and 超时重传
初学netty 简单理解 netty的 future 比 java 的future 多了监听器的功能,使的future.get()这个阻塞的形式不是必须。可以用非阻塞的形式。但是netty 的future 有两个问题 1、一般要和一个执行器executor关联,也就是要有个线程去异步执行task。 2、 一般只能等操作完成或者出现异常错误才会返回,不能在任务过程中去设置success或者fail,也不能设置返回值。。第一个问题,要和一个异步task队列相关联,所以netty给我实现了 就用把第二个问题so Promise解决了第二个问题。那么也就是说 Promise 可以在任务过程中 有条件的设置success 或者fail 或者cancel。 还有Promise是future的子接口 所以一般可以和futrue相等,而且设置值是线程安全的。 比较常用的Promise 是DefaultPromise。这里简单的做一个udp的需求 有一个操作是udp发一个操作报文,那么5秒中之内得到回应的话 就输出操作成功。如果不成功每 ...
Chinese-cuisine-Huai-Yang Cuisine(1)
Huaiyang cuisine has a long history. The cuisine began in the Spring and Autumn Period, flourished in the Sui and Tang Dynasties, and flourished in the Ming and Qing Dynasties.Whether it is the selection of ingredients, knife work, and seasoning, they are all meticulously crafted, focusing on flavor. The production of Huaiyang cuisine is like writing poetry and painting, with a strong traditional Chinese cultural heritage. State banquets are usually based on Huaiyang cuisine, and Huaiya ...