自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (1)
  • 收藏
  • 关注

原创 Unpopping: Solving the Image-Space Blend Problem for Smooth Discrete LOD Transitions. CGF 2007

介绍LOD的选择:距离像素大小LOD切换的时候容易出现突变(popping)LOD切换概述1. Hard switching简单,快速人类容易感知突变2. Late switching在足够远的距离切换,问题:使用lod的目的是提高帧率,需要尽可能的切换早,违背lod的目的object随着距离增大平方增长人类的感知系统对于很小的变化也能感知到3. LOD blending image space线性插值不可取,因为会出现半透明物体。4. Geomorphing(

2022-05-14 15:15:03 177

原创 Fast Ray Tracing of Arbitrary Implicit Surfaces with Interval and Affine Arithmetic.CGF 2009

介绍隐式曲面渲染的方法:间接渲染:离散为网格,体素或者点云。一般使用光栅化,放大时会出现不光滑的情况。直接渲染:光线追踪。速度慢。区间算术(Interval Arithmetic)和仿射算术(Affine Arithmetic)主要使用在数值计算中。是自验证(self-validated)的算术方法。隐式曲面光线追踪隐式曲面公式:f(x,y,z)=0f(x, y, z) = 0f(x,y,z)=0光线:p(t)=o+tdp(t) = o + tdp(t)=o+td光线追踪主要是求曲面

2022-04-29 22:07:41 433

原创 曲面求交概况

曲面求交的经典方法:解析法分割法跟踪法一般求交使用多种方法的混合。类别对于代数曲面和代数曲面求交,可以转化为方程求解。参数曲面求交由于次数过高则无法转化。参数曲面求交难点:处理奇异情况确定所有的分支经常使用分割法和跟踪法结合,使用分割法得到初始跟踪点,使用跟踪法跟踪得到曲线点。分割法:离散法网格法等参数线基本原则具体的曲面尽可能使用特殊的求交方法。针对一般的情况,使用一般方法:分割->追踪...

2021-12-08 13:21:26 1108

原创 c++常量引用

#include <iostream>using namespace std;void A( int& a) { printf("%d", a);}int main() { A(1);}上面这段程序会报错,加上const’就对了#include <iostream>using namespace std;void A(const int& a) { printf("%d", a);}int main() { A(1);}

2021-11-18 15:28:18 424

原创 xmake管理项目

xmake安装教程:xmake使用管理员模式启动powershell输入[Invoke-Expression (Invoke-Webrequest ‘https://xmake.io/psget.text’ -UseBasicParsing).Conten]下载并安装将xmake的安装目录加入环境变量输入命令[xmake create -l c++ -P 项目名称]创建项目使用命令[xmake]进行编译使用命令[xmake run]运行项目...

2021-11-18 14:43:26 491

原创 shared_ptr实现

// 智能指针template<class T>class SharedPtr {private: T* _ptr; int* _count;public: SharedPtr(T* ptr = nullptr) : _ptr(ptr), _count(new int(1)) {} SharedPtr(const SharedPtr& s) : _ptr(s._ptr), _count(s._count) { *count++; } ~SharedPtr()

2021-06-09 22:48:24 106

原创 关于c++友元类的思考

如果A想要访问B的函数或者成员变量,那么不能在A中声明B为友元类,如果这个可以成立的话,岂不是随便写一个类就可以访问类的私有成员?所以A要访问B的私有成员,只能在B中声明A为友元类。...

2021-05-28 19:29:45 88

原创 三维模型检索

目的:为了从海量数据中快速地提取所需模型一个完整的模型检索系统:1.三维模型的特征提取理想的特征描述符SD(Shape Descripter):易于表达和计算存储小适合相似性匹配几何不变性:对模型的平移、旋转、缩放具有不变性拓扑不变性:相同的模型有多个拓扑描述,SD应该是稳定的鲁棒性:对模型的处理(子分、简化、去噪、变形等)是鲁棒的唯一性:不同的模型特征不同2.相似性度量:对提取的特征进行相似性匹配3.模型分类:使用高级语义描述4.快速地查找模型[1]崔晨旸,石教英.三维模型

2021-03-08 07:09:10 754

原创 GPU测时

写cuda程序的时候,不能使用cpu的方法来测gpu程序的时间,运行代码记录如下:#define START_GPU { \cudaEvent_t start, stop;\float elapsedTime;\checkCudaErrors(cudaEventCreate(&start));\checkCudaErrors(cudaEventCreate(&stop));\checkCudaErrors(cudaEventRecord(start, 0));\#define

2021-02-21 20:59:09 259

原创 第一次用简单的智能指针

c++项目写多了,特别是各种类里面的指针各种指向,才意识到智能指针的好处,可以不需要自己焦头烂额写析构的部分。今天终于小试了一下,用shared_ptr写了一个小链表~#include <memory>#include <iostream>#include <string>using namespace std;struct Node{ int num; shared_ptr<Node> next; Node(int _num =

2021-02-21 20:51:21 91

原创 c++ vector debug遍历方式效率对比

#include <vector>#include <iostream>#include <time.h>using namespace std;int main(){ vector<int> v(100000000); time_t begin, end; begin = clock(); for (int i = 0; i < v.size(); ++i) { v[i] = 10; } end =

2020-10-04 16:32:49 224

原创 Cuda the launch timed out and was terminated

运行cuda程序的时候提示the launch timed out and was terminated。因为windows有一个TDRhttps://docs.microsoft.com/en-us/windows-hardware/drivers/display/tdr-registry-keys 机制。当gpu的kernel运行时间太长时强制退出。所以要修改TdrDelay。参考:windows修改TDR...

2020-09-27 20:05:41 1306

原创 SpringBoot + NUXT +MySQL 实现登录

SpringBoot是流行的后端开发框架,NUXT时基于Vue的一个通用框架,MySQL是流行的关系型数据库。个人开发博客或者小型网站可以采用这种技术,这篇文章从头到尾实现一个简单的登录界面,目的是记录近些阶段的一些所学,只要打通了前后端,开发就变得简单起来。1. 界面原型设计1.1 NUXT介绍官网:https://www.nuxtjs.cn/NUXT是基于Vue的一个框架,可以实现服务器端渲染(SSR)。浏览器得到的文件一般是HTML文件和JS文件,但是经过服务器端渲染,得到的就是一个运行过JS

2020-06-15 23:38:34 807

原创 pat甲级常用函数和简单经验分享

1. 求最大公因数int gcd(int a, int b){ return b == 0 ? a : gcd(b, a%b);}2. 判断素数bool isprime(int n){ if(n == 1) return false; int sqr = (int)sqrt(n); for(int i = 2; i <= sqr; i++){ ...

2019-12-25 09:29:59 317

原创 第一、二、三范式

范式(Normal Form)是范式是符合某一种级别的关系模式的集合。通俗一点就是对数据库中表的属性的约束条件。第一范式 1NF第一范式的条件:元组中的每一个分量都必须是不可分割的数据项。反例:应该修改为:第二范式 2NF第二范式的条件:在第一范式的基础上,所有的非主属性完全依赖于主键。完全依赖意味着不能依赖于主键的一部分属性。反例:对于该表,学号和课程号组合在一起是主键,但...

2019-05-30 21:52:33 12633 7

原创 E-R模型

E-R模型现实世界是由一组称作实体的基本对象和这些对象间的联系构成的。E-R模型是标识数据及数据之间相互关系的一种概念模型。实体:观念世界中描述客观事物的概念属性:实体具有的某种属性或联系的附加属性联系:事务间的相互关联,一种是实体内部的联系,一种是实体之间的联系实体之间的联系:一对一 1 :1一对多 1 :N多对多 M : NE-R图E-R模型经常使用E-R来描述。矩形:实...

2019-05-30 21:44:45 4273

原创 甘特图(Gantt chart)

甘特图的概念甘特图石油亨利*甘特开发的管理图表。横轴表示时间,纵轴表示活动,线条表示整个项目期间计划和实际的活动完成情况。管理者可以清楚地了解一项任务还剩下哪些任务需要做,并可以评估工作是提前还是滞后,亦或正常进行。是一种理想的控制工具。实例优缺点优点:直观性强,表明了各个任务的计划进度和当前进度缺点:一旦改变进度安排,图形就会发生变化,就需要重新绘制不能反映任务之间复杂的...

2019-05-23 16:39:25 4901

原创 二叉查找树 c

目录递归定义 头文件实现文件1. 结构体定义2. 查找函数3. 查找关键值最小的结点4. 查找关键值最大的结点5. 插入函数6. 删除函数7. 其他函数(MakeEmpty,Retrive)二叉查找树的递归定义二叉查找树(Binary Search Tree, BST),在不同的书上我发现也可以叫二叉搜索树,二叉排序树。二叉树的一个重要应用就是在查找中的应用,现在我们...

2019-05-23 16:32:18 325

原创 利用栈实现中缀表达式转换为后缀表达式

相关概念中缀表达式就是我们平时最熟悉的算式表达式,操作符在两个数中间。那么可以想到后缀表达式就是操作符在两个数后面。例子:中缀表达式:1 + 2 * 3后缀表达式:1 2 3 * +算法过程栈中存储的是操作符和括号。从左到右遍历中缀表达式。遇到括号遇到左括号,进栈遇到右括号,一直出栈,直到出栈的元素是右括号遇到数字直接输出遇到操作符遇到比除‘’('外栈顶运算符...

2019-05-06 20:41:39 3345

原创 利用栈计算后缀表达式

后缀表达式的概念后缀表达式又称作逆波兰式,操作符在运算数的后面,所以叫做后缀表达式。例如 1 + 2 * 3的后缀表达式是 1 2 3 * + 。可以 2 3 *看作一个运算数a, 1 a * 也符合运算数 运算数 操作符的格式。怎么利用栈计算当遇到运算数,进栈遇到操作符 $,从栈中弹出两个运算数a 、b, 计算 b $ a 的结果,结果进栈读取玩后缀表达式后,栈中只有一个元...

2019-05-06 19:57:29 1014

原创 利用栈实现括号匹配 c++

对于一个括号的序列,例如 {[()]} ,当我们从左向右遍历时,如果要确定右括号所对应的左括号是否存在,就需要将左括号记录下来,并且要做到最先记录的符号的最后被匹配,那么最合适的数据结构就是栈了。算法过程遇到一个左括号,进栈遇到一个右括号,判断其与栈顶元素是否匹配,如果不匹配,则返回0标识失败当遇到’ \0’ 时遍历完括号串,这个时候判断栈是否为空,非空返回0,空返回1标识成功代码...

2019-05-06 19:38:04 3946 2

原创 队列的链表实现 C

参考:数据结构与算法分析 --C语言描述使用链表来实现队列的时候,就不存在队满的情况了,入队就是在一端加入一个节点,出队就是在另一端删除一个节点。当然队首在链表的首或者尾都无所谓,但是最好在队首,那么入队就是使用的头插法建立链表。特别注意,当队列中只有一个元素时出队,rear指针要修改为指向头节点。代码队首在链表首,建立头节点。queue.h#ifndef QUEUE_H_INCLUD...

2019-05-02 12:03:41 719 2

原创 队列的数组实现 C

参考:数据结构与算法分析 --C语言描述队列的实现有很多种,但是只要我们保证函数调用的效果相同那么怎么实现都无所谓。front和rear指针指向的问题队列有两个指针,头指针front和尾指针rear。使用数组实现队列的时候可以让front指向队列的第一个元素,rear指向队列的最后一个元素的下一个位置;也可以让front指向第一个位置的前一个位置,rear指向最后一个位置;也可以...

2019-05-02 11:46:28 1136

原创 同义词--基于Oracle scott用户

概念同义词是表、索引、视图和其他模式对象的一个别名。oracle在数据字典中保存同义词的定义描述,所以同义词不占用实际的存储空间。作用避免应用程序直接引用模式对象。当数据库的模式对象发生改变后,就必须重新编译。使用同义词后可以只需要修改同义词即可。安全方面的考虑:隐藏模式对象的实际名称。为复杂的名称创建同义词,简化语句。类别公有同义词:由用户组PUBLIC所拥有私有同义词:由...

2019-04-30 15:48:30 252

原创 索引--基于Oracle scott用户

只对索引做一个简单的介绍概念索引是数据库中用于存放表中每一条记录的位置的一种对象,主要用于加快对于表的查询操作。在创建索引时,oracle首先对要建立索引的字段进行排序。然后将排序好的字段值和对应记录的ROWID存储在索引中,此时程索引字段和ROWID的组合为索引条目。索引创建之后,先在索引中对字段进行快速搜索(因为字段经过排序,所以速度很快)。找到符合条件的字段的ROWID,再根据ROW...

2019-04-30 15:37:29 183

原创 error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token| 记录贴

学会C语言也挺长时间了,当时写的时候就记得经常出现这个错误。在网络上查找感觉原因也林林总总。有时候也挺头疼的,就想着在这里记录一下原因:从字面上看是语法上的错误,缺少一些必要的符号。2019-4-26在文件中找了很久,没有找到语法错误,后来才发现是头文件一个函数的声明没有以 ; 结尾。此外struct 的结尾也要记得加 ;...

2019-04-26 10:32:51 29929 6

原创 序列 -- oracle

概念序列也称为序列生成器,能够以串行方式生成一系列整数。序列可以在多个用户并发环境中为各个用户生成不会重复的顺序整数,而且不需要额外的I/O开销或者事务锁资源。序列和视图一样,并不占用实际的存储空间,只是在数据字典中保存它的定义信息。创建序列完整语法: CREATE SEQUENCE [ SCHEMA. ] sequence_name --schema,序列所属的模式 [...

2019-04-25 11:41:53 158

原创 视图--基于oracle scott用户

视图的概念SQL允许通过查询来定义“虚关系”, 它在概念上包含查询的结果。序关系并不预先计算并存储,而是在使用虚关系的时候才通过执行查询被计算出来,这种虚关系称为“视图”。视图的作用简化查询所使用的语句起到安全和保密的作用创建视图基于单个表:create view e_viewas select empno, ename from emp;基于多个表:create...

2019-04-20 17:14:35 217

原创 栈的链表实现

通过带有头节点的单链表来实现栈。我们通过在链表的表头插入来实现push,删除表顶端元素实现pop,top操作只是返回表顶端元素,空栈时只有一个头节点。stack.h#ifndef STACK_H_INCLUDED#define STACK_H_INCLUDEDtypedef int ElementType;struct Node;typedef struct Node *PtrTo...

2019-04-20 15:57:01 1246

原创 栈的数组实现

最好不要将数组和栈顶位置声明为全局变量,因为可能潜在地存在很多栈,这对于所有的ADT都适用。用一个数组实现栈是十分简单的,每一个栈有一个栈顶位置(实际上是数组的下标)TopOfStack,栈空时TopOfStack == -1。要将一个元素入栈,我们只需要TopOfStack + +, 然后S->Arrar[TopOfStack] = X即可。出栈时只需要使TopOfStack –对于数...

2019-04-20 15:49:54 2120

原创

栈的概念栈(stack)是限制插入和删除只能在一端的线性表,该位置叫做栈的顶(top)。对栈的基本操作有个进栈(push)和出栈(pop)。最后插入的元素可以通过top()函数来访问。栈也被叫做后进先出(LIFO,last in first out)表。下图展示了一个栈的抽象模型。一般的模型是,存在某个元素在栈顶,而该元素是唯一的可见元素。栈的实现栈的应用平衡符号以括号匹配为...

2019-04-20 15:29:22 121

原创 连接--基于Oracle scott账户

连接的条件连接可以使用join … using…子句,也可以使用join…on…子句查询员工的名字和所属部门的名字1.using记得加上()select ename,dnamefrom emp join deptusing (deptno);2.onselect ename,dnamefrom emp join depton emp.deptno = dept.deptn...

2019-04-11 12:19:54 264

原创 数据库的修改--基于oracle scott用户

删除删除语句结构:delete from 关系[where 谓词];我们只能删除整个元组,delete命令只能作用于一个关系。如果省略where子句,那么将删除关系中的所有元组。注意:delete是逻辑删除,不是物理删除。删除之后还可以使用ROLLBACK命令回滚。如果想要永久删除,可以使用truncate命令。truncate table_name 只能删除表中所有行。1.删除工号...

2019-04-08 09:48:36 181

原创 嵌套子查询--基于Orace scott用户

SQL提供嵌套子查询,子查询是嵌套在另一个查询中的select-from-where 表达式。集合成员资格连接词 in 测试元组是否是集合中的成员,not in 相反查询部门号为10和20的员工信息:select *from empwhere deptno in (10, 20);where子句中的子查询子查询在where子句中,通常对于集合的成员资格、集合的比较以及集合的基数进...

2019-04-05 12:37:54 447

原创 链表---C实现(带头节点)

代码来自 数据结构与算法分析(C语言描述), 非原创头节点的作用是为了使每个节点的操作都相同,不必单独为第一个节点写特殊的操作。fatal.h#ifndef FATAL_H_INCLUDED#define FATAL_H_INCLUDED#include<stdio.h>#include<stdlib.h>#define Error(Str) F...

2019-04-04 20:25:59 141

原创 聚集函数--基于Oracle scott用户

聚集函数是以值的一个集合为输入,返回单个值的函数,SQL提供了五种聚集函数:平均值 avg最小值 min最大值 max总和 sum计数 count基本聚集基本聚集查询的结果只有一行查询工资的均值:select avg(sal)from emp;查询职位为“MANAGER"的工资均值:select avg(sal) as avg_salfrom ...

2019-04-04 10:55:45 168

原创 集合运算--基于Oracle scott用户

集合运算SQL作用在关系上的union, intersect, minus 运算对应于数学集合论中的∪,∩, - 运算并运算查询部门号为20工资小于1000与部门号为10工资大于2000的员工信息:select *from empwhere deptno = 20 and sal < 1000unionselect *from empwhere deptno = 10 a...

2019-04-04 10:44:27 97

原创 js实现注册验证

为什么需要表单验证(前端)?首先我们要保证提交的数据是正确的,但是把信息都交给服务器去做服务器压力就太大了,所以要进行表单验证。思路分析通过getElementById()方法获得表单元素的值通过字符串方法(包括正则式)对数据进行判断判断失败,利用alert()方法进行提示,返回false;判断成功,返回true进行表单提交要点getElementById(‘str’).val...

2019-04-03 15:51:59 6464

原创 数据库附加的基本运算--基于oracle scott用户

更名运算select子句:select ENAME as employee_namefrom emp;from子句:select distinct S.ENAMEfrom EMP T, EMP Swhere T.MGR = S.EMPNO;字符串运算查找姓名中带有S的员工信息:select ENAMEfrom EMPwhere ENAME like '%S%';查找...

2019-03-28 20:50:58 135

原创 多关系查询与自然连接-基于oracle scott用户

一个多关系查询查询职工的名字,部门编号和部门名称select ENAME,DEPT.DEPTNO,DNAMEfrom EMP,DEPTwhere EMP.DEPTNo = DEPT.DEPTNO;因为DEPTNO出现在两个表中,所以在select子句中要指明是哪一个表中的DEPTNO如何理解多关系查询在关系模型中,一个表就是一个关系。关系模式由属性序列及各属性对应域组成。SQL...

2019-03-27 21:16:15 127

OpenGL编程基础-第三版 (带目录)Edward.Angel著 清晰版

用了一个小时加上了目录,是一本十分好的OpenGL入门书

2018-12-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除