- 博客(72)
- 资源 (5)
- 收藏
- 关注
原创 搭建python虚拟环境,并在VSCode中使用
③运行随便一个python文件,如果如下图调用的是虚拟环境的解释器,则说明成功。②选择之前创建的虚拟环境的解释器。
2024-06-08 22:50:08
616
原创 数据库mysql
一、mysql常用语句登录MySQLmysql -u root -p列出所有数据库SHOW DATABASES;创建一个新数据库CREATE DATABASE test;删除一个数据库DROP DATABASE test;对一个数据库进行操作时USE test;列出当前数据库的所有表SHOW TABLES;要查看一个表的结构DESC students;创建表CREATE TABLE删除表DROP TABLE退出MySQL
2024-05-28 21:54:58
386
原创 c#---集合
集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hash table)的支持。大多数集合类实现了相同的接口。和ArrayList的区别在于在声明泛型集合(List)的时候需要制定里面成员的类型,而ArrayList不需要,可以添加任何类型,这会有啥好处?① 数据安全了,你添加string等非int类型的成员添加不进去(编译都过不去),这样数据就安全唯一了。② 节省性能,不需要每一操作成员的时候都要拆箱和装箱了。
2024-05-10 23:15:18
331
原创 c#---多态
抽象类到接口,当抽象类中所有的方法都是抽象方法的时候,这个时候可以把这个抽象类用另外,一种形式来表现,这种形式叫接口。接口使用 interface 关键字定义,没有 class 关键字,接口名一般使用 “IXxxx”接口中定义的方法不能有方法体,全是抽象方法,但又不需要用 abstract 修饰;一个类可以实现多个接口,被实现的多个接口之间用逗号分隔开。: 如果转换成功, 返回对应的对象, 失败返回 null。一个接口可以继承多个接口, 接口之间也要用逗号分隔。修饰的类就是抽象类。子类继承抽象类,使用。
2024-05-10 20:49:08
442
1
原创 c#---枚举与结构体
当将类实例传递给方法或赋值给另一个变量时,实际上是传递引用(内存地址)而不是整个对象的副本。: 结构是值类型,它们在栈上分配内存,而不是在堆上。当将结构实例传递给方法或赋值给另一个变量时,将复制整个结构的内容。类可以有无参数的构造函数: 类可以包含无参数的构造函数,如果没有提供构造函数,系统会提供默认的无参数构造函数。结构不能有无参数的构造函数: 结构不能包含无参数的构造函数。每个结构都必须有至少一个有参数的构造函数。结构不能继承: 结构不能继承其他结构或类,也不能作为其他结构或类的基类。
2024-05-10 13:46:38
277
原创 unity---常用API
结构体代表一个四元数,包含一个标量和一个三维向量,用于描述物体的旋转。:结构体由x、y、z这3个数值组成,表示一个向量。:Unity 场景中所有实体的基类。
2024-05-09 20:00:59
1100
原创 Unity 修复Sentinel key not found (h0007)错误
但是这里会遇到一个问题就是windows操作系统的权限管理问题,没有操作权限,解决起来也得浪费点时间,费时费力,最后找到了一个免费工具,下载下来后,直接把exe文件放在Unity的Editor目录下双击执行即可,真是真是省时省力,下次再也不想在这个小问题上浪费一分钟的时间了,最后把文章链接放上。这个问题是第二次遇到了,上次稀里糊涂的解决了,也没当回事,这次又跑出来了,网上找的教程大部分都是出自一个人。2.在Windows 的Cmd 界面,前往Unity.exe的路径。dir显示当前目录下所有文件;
2024-05-06 20:16:24
5876
原创 Unity初级---初识生命周期
当脚本启用和禁用时触发,可执行多次,触发的前提是脚本挂载的对象在激活的状态下,也就是。:开始函数,执行一次,一般用于初始化,当脚本挂载的对象被激活,同时脚本被启用时执行。:唤醒函数,最先执行的函数,只执行一次,当脚本文件挂载的对象被激活时调用。
2024-05-05 11:25:09
692
原创 crontab定时任务
通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。–一、 命令参数1.crontab -l显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。2.crontab -e编辑某个用户的...
2019-05-17 16:49:54
461
转载 图
一、基本定义图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。1. 图的分类图是按照无方向和有方向分为无向图和有向图。左图为无向图是由顶点和边构成,右图为有向图是由顶点和弧(有向边构成)。弧有弧头和弧尾区别。这种边带权值的图叫网。2. 图的顶点和边间的关系顶点的度:顶点关联边的数目...
2019-01-30 18:53:21
348
转载 树与二叉树
一、基本概念1. 树的定义树是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。具有以下的特点:(01) 每个节点有零个或多个子节点;(02) 没有父节点的节点称为根节点;(03) 每一个非根节点有且只有一个父节点;(04) 除了根节点外,每个子节点可以分为多个不相交的子树。2. 二叉树的定义二叉树是每个节点最多有两个子树的树结构。它有五种基本形态:...
2019-01-25 16:18:30
617
转载 栈和队列
一、栈栈,是一种特殊的线性表,其插入及删除的操作都在线性表的同一端进行。这一端称为栈顶,另一端称为栈底。就类似于餐厅里的一摞盘子,后放的盘子在上方,也会先被人拿走。栈具有“后进先出”的逻辑特性。栈在计算机科学中有着广泛的应用,递归函数的实现就利用了栈这种数据结构,在递归时,计算机会维护一个递归工作栈,当一个递归函数被调用时,被调函数的局部变量、形参的值以及一个返回地址就会储存在递归工作栈中。运行...
2019-01-15 12:18:31
483
转载 其他链表
一、双向链表他和普通链表的区别,在双向链表中,链接是双向的,一个链向下一个元素一个链向上一个元素。在操作双向链表的时候既要像普通链表一样考虑next,也要考虑prev。双向列表提供了两种迭代列表的方法:从头到尾迭代,或者反过来。function DoublyLinkedList(){ var head = null; var len = 0; var tail = null...
2019-01-10 19:48:48
235
原创 线性表
一、简介数据结构分为物理结构和逻辑结构,逻辑结构分为线性结构、几何结构、树形结构和图形结构四大结构。其中,线性表就属于线性结构。线性表:一种逻辑结构,相同数据类型的n个数据元素的有限序列,除第一个元素外,每个元素有且仅有一个直接前驱,除最后一个元素外,每个元素有且仅有一个直接后继。线性表的特点:元素个数有限逻辑上元素有先后次序数据类型相同仅讨论元素间的逻辑关系二、线性表的基本...
2019-01-08 23:46:28
458
转载 时间复杂度
时间复杂度是衡量算法好坏的一个重要指标。衡量代码的好坏,包括两个非常重要的指标:运行时间和占用空间如果代码没有运行起来,怎么预知代码运行所花的时间呢?代码的绝对时间是无法估计的,但我们却可以预估出来代码的基本操作执行次数。场景1:T(n) = 3n,执行次数是线性的。void eat1(int n){ for(int i=0; i<n; i++){; ...
2019-01-03 10:42:27
218
原创 unix下编译c++
一、gcc和g++编译的四个阶段:预处理:编译处理宏定义等宏命令(eg:#define)编译:将预处理后的文件转换成汇编语言汇编:由汇编生成的文件翻译为二进制目标文件链接:多个目标文件(二进制)结合库函数等综合成的能直接独立执行的执行文件GNU项目包括,EMACS编辑器、GCC编译器、GDB调试器、汇编器、链接器、处理二进制文件的工具等。就本质而言,gcc和g++并不是编译器,...
2019-01-02 14:16:26
1511
原创 creator+express实现http通信
1.服务端代码var express = require('express')var app = express()var bodyParser = require('body-parser');// 建立一个需要在同步作用域中执行的函数var fibers = require('fibers');// 创建 application/x-www-form-urlencoded 编码...
2018-12-21 15:02:18
301
原创 express---1.入门
var express = require('express')var app = express()var bodyParser = require('body-parser');// 创建 application/x-www-form-urlencoded 编码解析var urlencodedParser = bodyParser.urlencoded({ extended: fa...
2018-12-19 22:59:42
159
原创 creator入门
一、类的构造cc.Class == 类型声明 var Sprite = cc.Class({ name: &quot;sprite&quot; });实例化,var obj = new Sprite();判断实例,obj instanceof Sprite判断两个类的继承关系,cc.isChildClassOf(child, parent)构造函数, var S...
2018-12-14 12:03:08
425
原创 CentOS下的安装
方法一安装Node.js的一个有效且简单的方法就是从官方库下载安装,首先确保您可以访问到EPEL库,您可以通过运行以下命令来安装。sudo yum install epel-release现在可以使用yum命令安装Node.js了sudo yum install nodejs因为在开发过程中我需要管理节点包,我还要安装新公共管理的软件包管理器,使用以下命令。(注意:由于新版的nodej...
2018-12-05 12:00:09
136
原创 mysql基本操作
1.登陆账号mysql -u root -p2.选择要操作的数据库USE 数据库名 :3.列出数据库列表SHOW DATABASES4.显示指定数据库的所有表(使用该命令前需要使用 use 命令来选择要操作的数据库)SHOW TABLES5.显示数据表的属性(属性类型,主键信息 ,是否为 NULL,默认值等其他信息)SHOW COLUMNS FROM 数据表6.创建数据库cr...
2018-12-04 10:24:04
256
原创 cocos-js,过滤无用资源
一、制作背景公司项目最近在过滤一些无用的老资源,如果一个一个找太费时费力,于是乎想做一个工具,对资源目录下的资源名称在代码里遍历寻找,如果没有找到,就认为这是一个无用的老资源。这样能做一个大致的筛选,对于组合的资源名称无法做到筛选,还需要自己再次做出判断。二、实例代码#!/usr/bin/env python# -*- coding: utf-8 -*-import osimp...
2018-10-31 18:20:39
581
原创 WebGL---7.摄像机
一、概念介绍1.产生原理OpenGL本身没有摄像机(Camera)的概念,但我们可以通过把场景中的所有物体往相反方向移动的方式来模拟出摄像机,产生一种我们在移动的感觉,而不是场景在移动。2.制作摄像机1️⃣摄像机位置正z轴是从屏幕指向你的,如果我们希望摄像机向后移动,我们就沿着z轴的正方向移动。var camera_pos = [0,0,3]2️⃣摄像机方向var camera_...
2018-10-28 12:16:25
1816
原创 WebGL---6.3D纹理贴图
一、实例代码<html> <canvas id='c' width='640' height='480'></canvas> <script type="x-shader/x-vertex" id="vertex-shader"> attribute vec4 a_position; attribute vec2 aTextur...
2018-10-10 18:29:15
1999
2
原创 WebGL---5.初入3D
一、索引缓冲对象索引缓冲对象(Element Buffer Object,EBO,也叫Index Buffer Object,IBO)。假设我们不再绘制一个三角形而是绘制一个矩形。我们可以绘制两个三角形来组成一个矩形(OpenGL主要处理三角形)。这会生成下面的顶点的集合:float vertices[] = { // 第一个三角形 0.5f, 0.5f, 0.0f, /...
2018-10-10 09:47:02
465
原创 WebGL---4.矩阵的使用
一、坐标系统OpenGL希望在每次顶点着色器运行后,我们可见的所有顶点都为标准化设备坐标,也就是说,每个顶点的x,y,z坐标都应该在-1.0到1.0之间,超出这个坐标范围的顶点都将不可见。我们通常会自己设定一个坐标的范围,之后再在顶点着色器中将这些坐标变换为标准化设备坐标。将坐标变换为标准化设备坐标,接着再转化为屏幕坐标的过程通常是分步进行的,也就是类似于流水线那样子。为了将坐标从一个坐标系变...
2018-10-09 17:44:11
4209
原创 WebGL---3.绘制纹理
一、实例代码&amp;amp;amp;amp;lt;html&amp;amp;amp;amp;gt; &amp;amp;amp;amp;lt;canvas id='c' width='480' height='320'&amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;/canvas&amp;amp;amp;amp;gt; &amp;amp;amp;amp;lt;
2018-09-20 20:34:22
1077
转载 WebGL---2.初步封装
因为每一个WebGL程序都需要以下二个步骤:从canvas获取WebGL上下文创建vertex shader和fragment shader并链接成一个shader program所以这里,我们把这些操作封装成函数并放到webgl_utils.js里面:1. 从canvas里面获取WebGL上下文function createGLContext(canvas_id){ va...
2018-09-19 14:30:26
638
原创 WebGL---1.第一个三角形
最近无意中接触到WebGL,之前上半年学了一些opengl方面的知识,但知识这东西就是这样只有温故才能知新,打算正好借助学习WebGL来复习一下opengl方面的知识,顺便比较两者之间的区别。一、获取WebGL上下文一般都把WebGL上下文对象命名为gl。这样做也可以保证 JavaScript 代码与 OpenGL 程序更相近。取得了 WebGL 上下文之后,就可以开始 3D 绘图...
2018-09-17 17:15:34
647
原创 tiledmap入门---2.tmx文件解析
一、元素解析1. map地图信息 &lt;map version="1.0" tiledversion="1.1.6" orientation="orthogonal" renderorder="right-down" width="13" height=&q
2018-09-14 18:00:47
5449
原创 tiledmap入门---1.编辑器的使用
一、创建新文件地图方向: 有正常的平铺图也有45度2.5D视图,还有六边形交错图 图层保存格式: XML、Base64(无压缩、gzip、zlib)、CSV 地图坐标方向: 默认是Right Down(右 下)也就是说左上角为顶点,向右为X轴,向下为Y轴 基本地图参数 地图大小,也就是创建的地图中拥有 宽*高 个地图块 块大小,此处对应的是像素点,也就是每个图块所...
2018-09-10 23:18:37
7413
转载 cocos-shader---3.实例上手
一、使用内置shader使用内置 shader 非常简单,直接通过一个 key 值从 GLProgramCache 缓冲区取到一个 GLProgram,然后设置给 Node 即可; 默认 shader 的 key 值在 GLProgram 中定义 auto sprite = Sprite::create("colormap.jpg");sprite->setPosition(v...
2018-08-12 22:01:08
787
转载 cocos-shader---2.源码解析
一、shader相关源码cocos2d-x 与 shader 相关的代码在 renderer 目录下 |-cocos |-renderer |-CCGLProgram.h |-CCGLProgram.cpp |-CCGLProgramCache.h |-CCGLProgramCache.cpp |-C...
2018-08-12 17:07:33
646
转载 cocos-shader---1.了解
一、着色器语言先看一段代码:attribute vec4 a_position;attribute vec4 a_color;varying vec4 v_fragmentColor;void main(){ gl_Position = CC_MVPMatrix * a_position; v_fragmentColor = a_color;}再来解释这...
2018-08-12 00:05:09
1291
转载 cocos---图形渲染的过程
一、渲染概括这里先简单说一下大概流程,Cocos3.x版本的渲染是将所有需要渲染的node先通过各种RenderCommand封装起来,你先不用管RenderCommand是什么,只需要记住它把我们要渲染的node封装起来了就行,然后引擎把这些RenderCommand添加到了一个队列中存了起来,这个队列叫CommandQueue,添加的时候顺便对这些RenderCommand设置了一些参数,...
2018-08-09 23:58:13
1395
转载 opengl---7.混合
一、概念“混合”是指两种颜色的叠加方式。在新图片将要渲染画到屏幕上的时候,将用在新图片中的红、绿、蓝和透明度信息,与屏幕上已经存在的图片颜色信息相融合。 说的具体一点,就是把某一像素位置上原来的颜色和将要画上去的颜色,通过某种方式混在一起,从而实现特殊的效果。 新图片颜色被称作“源颜色”,而屏幕上已存在的图片颜色则被称作“目标颜色”。 OpenGL会把源颜色和目标颜色各自取出,并乘以一个...
2018-05-27 00:59:15
291
转载 碰撞检测
1.矩形与矩形碰撞一般规则的物体碰撞都可以处理成矩形碰撞,实现的原理就是检测两个矩形是否重叠。矩形1的参数是:左上角的坐标是(x1,y1),宽度是w1,高度是h1; 矩形2的参数是:左上角的坐标是(x2,y2),宽度是w2,高度是h2。在检测时,数学上可以处理成比较中心点的坐标在x和y方向上的距离和宽度的关系。即两个矩形中心点在x方向的距离的绝对值小于等于矩形宽度和的二分之一,同...
2018-05-06 17:26:19
16362
3
原创 opengl---6.初步封装
一、为何封装通过前面几节的介绍,大家已经知道要想实现一张图片的渲染,从载入到呈现到屏幕上,中间经历了很多过程,还是很繁琐的,这时候我们需要一个框架把这些细节封装起来,更利于我们的理解和使用。二、具体封装1.着色器,shader // 调用之前已经生成的着色器程序Shader &amp;amp;Shader::Use(){ glUseProgram(this-&amp;gt;I...
2018-04-22 23:39:40
1004
原创 opengl---5.向量
一.向量定义向量V是一个既有大小又有方向的量,在数学上,常用一条有方向的线段来表示向量。 二.向量大小|a⃗&amp;nbsp;a→\vec{a}| = x2+y2−−−−−−√x2+y2\sqrt{x^2+y^2}三.向量加减向量的加法可以被定义为是分量的(Component-wise)相加,即将一个向量中的每一个分量加上另一个向量的对应分量: 两个向量的相减会得到这...
2018-04-12 16:02:16
402
原创 CentOS搭建git服务器
1.安装 Git 服务器端:#yum install -y git安装完后,查看 Git 版本:git --version2.服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 [root@localhost home]# id gitid: git:无此用户[root@localhost home]# useradd git[root...
2018-04-11 21:01:06
218
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人