![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
yrcxx
这个作者很懒,什么都没留下…
展开
-
Ogre 13.x+Qt5-例子整理
下面的demo是创建了个QWindow然后作为Ogre的ApplicationContextQt的渲染窗口,调setup中的创建sceneManager,light,camera,然后设置为QMainWindow的centerWidget的,然后主要是创建了一个Ortho的camera,在resize时候调整,用ManualObject绘制点线或者三角形。原创 2023-07-20 00:02:01 · 345 阅读 · 0 评论 -
试用蓝奏云盘分享代码笔记及demo效果
这里就把以前用QPainter绘制螺线的Qt代码编译成apk放在蓝奏盘上。蓝奏盘的下载速度很快,而且可以在浏览器下载,这点很不错。提取码 : 4iir, 你可以不限速下载哦!原创 2023-07-08 23:01:43 · 1198 阅读 · 0 评论 -
过平面三点求圆的圆心和半径
设平面三点v0,v1,v2 求过三点的圆的圆心c?采用克莱姆法可以计算出(xc, yc),当分母。知道圆心,则代入(1)可以求出半径r。则AB构成一个二元一次方程组。原创 2023-07-08 13:33:10 · 502 阅读 · 0 评论 -
QOpenGLWidget下使用glad库
下面是opengl vertex array的api使用,这个特性opengl 4.x都不推荐了,但是由于简单,还有兼容老旧代码,调试方便等特性。gl 下拉列表选择opengl4.x, 选择compatibility,则可以支持1.x 2.x 3.x的API。勾选 generate a loader , 这个glad.h 就会有 gladLoadGL() 这个API;2.将glad.h glad.c k hr xxx.h添加到工程;1.glad网址 https://glad.dav1d.de/原创 2023-07-06 20:04:21 · 183 阅读 · 0 评论 -
交互式图形对象编辑原理-CAD中夹点-实体编辑例子
对于EDA中,实体主要是各种平面元器件和连线,主要的编辑是对元器件的脚点连线,拖动元件,这些脚点也是grip point的概念,当然CAD CAM EDA 领域包括行业CAD例如BIM GIS SWAT 船舶 航空航天等等业务区别和软件操作习惯及逻辑还是非常大的,还有一大块在行业数值模型或者电路网络的不同业务层面的仿真分析物理上的计算,属于更大的CAE概念,一般我们看到的交互编辑工作,俗话叫画图,属于CAE的前处理和后处理工作,侠义的CAD叫计算机辅助绘图。当单击三角形,显示夹点,夹点将会被扑捉。原创 2023-07-02 14:13:58 · 160 阅读 · 0 评论 -
两个平面圆有交点的分析思考-关于平面几何
在看小学数学平面几何题,自然要提到欧几里得的几何原本,通过5条公设,可以推出几千条命题,就像看国内三国演义,没遇到孔明之前三国你都不能叫打仗只能叫打架群殴,直到孔明出场以后,西方科学公理演绎法的强大,可惜国人从清朝康熙那会都没有搞明白欧几里得那套东西是咋回事,以为殴的心里的几何就是空间想象力,其实殴的几何其实是基于一些基本的几何事实上的持续推导,只要公设正确,推导过程正确,结论精密的正确,当然推导不是一条线的往往是复杂的,几何原本也没写推导方法,这构成了复杂多变的经验和技能。所以C0和C1至少有一个交点。原创 2023-05-14 18:48:50 · 139 阅读 · 0 评论 -
简单多边形三角剖分
则离vi-vk线距离更远的点c(注意不能以距离vj距离来判断),该线段vj-c一定在多边形内,即vj-c将多边形分割成两个小多边形,递归的,最终将分割出一个三角形,是原多边形顶点上连续的三个点,这个递归过程本身也是一种实现。则会存在相邻的三个点 vi,vj,vk构成的三角形,其它顶点都在这个三角形的外面。那就把这个三角形分离出来,原来的多边形就少了一个顶点,继续发现耳朵三角形和分离。点vj是凸点,也就是 vi-vj-vk逆时针旋转。假设有其它顶点在三角形内部。这个三角形就是一个耳朵,vj是一个耳尖。原创 2023-05-12 23:08:43 · 200 阅读 · 0 评论 -
计算几何-断言( predicate) -点在直线上
计算几何算法一类函数是叫断言,又叫谓词,英语叫predicate,例如 3 小于 2,three little two,点 在直线上 point on line,小红 喜欢 小明,不喜欢 小黑, x like y,这里 little on like就是predicate。基于该距离计算,可以写出断言函数,点在直线上,浮点断言程序是在指定公差(tolerance)范围内判断是否为真,例如指定1e-5则距离小于0.00001都认为点在直线上。计算点到直线的距离是基于三维向量运算。原创 2023-05-11 23:25:47 · 153 阅读 · 0 评论 -
计算机图形学-图形边界表示下的正则集合运算原理注释
已知多边形面片MM: abcdef由点集拓扑,M将分为外部Me 边界Mb 内部Mif---------------e| || || || || d----------------c| || ||原创 2022-11-14 00:23:49 · 263 阅读 · 0 评论 -
修改tinyrender为部分opengl函数及和glut绘制程序对照
修改了tinyrender的一些地方,tinyrender貌似说的也不清楚,把tinyrender的一些过程和opengl函数对照起来,主要用于光栅器原理阐述,下面粘贴修改的地方。main.cpp 很类似glut程序,先构造vbo,这里就是用model读取head.obj模型,也可以自己创建 test_createtriangle就是,调glutInit,传进去colorImage和depthImage两个图片,缺省的Gouraud光照shader。tgaimage.h tgaimage.cpp没有改动。原创 2022-09-12 19:41:51 · 339 阅读 · 0 评论 -
空间两直线间最短距离计算公式
空间直线L0, L1的参数方程为L0: P = a+u*s;L1: Q = b+v*t;其中a为L0的原点,u为单位方向向量, 参数s从-inf到+inf则 L0上的点P和L1的点Q的距离的平方为J = (P-Q)*(P-Q) = (P-Q)^2展开步骤为=> (a+u * s - b - v * t)^2=> u^2 * s^2 + v^2 * t^2 - 2*u*v *s*t + 2*(a-b)*u*s - 2*(a-b)*v*t + (a-b)^2J...原创 2022-02-19 01:06:20 · 4777 阅读 · 0 评论 -
用python的matplotlib绘制圆柱双贯线
当圆柱面上打个圆孔,边沿就是下面绘制的曲线。图片如下# -*- coding: UTF-8 -*-import matplotlib as mplfrom mpl_toolkits.mplot3d import Axes3Dimport numpy as npimport matplotlib.pyplot as pltmpl.rcParams['legend.fontsize'] = 10fig = plt.figure()ax = fig.gca(projection='3d'原创 2022-01-13 22:52:53 · 574 阅读 · 0 评论 -
使用Qt的QPainter绘制阿基米德螺旋线
把笔记 c++绘制极坐标曲线 的代码中的allegro换成Qt的了。 因为自定义的QWidget写在源文件中所以Q_OBJECT注释掉了。#include <QApplication>#include <QWidget>#include <QPainter>#define _USE_MATH_DEFINES#include <math.h>int w=640;int h=480;struct vec2d{ double x; do原创 2022-01-11 00:24:03 · 441 阅读 · 1 评论 -
用python的numpy和matplotlib绘制函数曲线sin(x)/x
微积分的极限一章上 y=sin(x)/x 在x趋近为0的极限为1,而且还有几何很直观的证明,这里就用pydroid画一下它的函数图像,曲线还是挺好看的import matplotlib.pyplot as pltimport numpy as npx = np.linspace(-16, 16, 10000)y= np.sin(x) /xplt.plot(x, y, label='sin(x)/x')plt.xlabel('x label')plt.ylabel('y label')原创 2022-01-08 11:10:10 · 2310 阅读 · 0 评论 -
stl的list容器-用模板双链表部分模仿
这是整理的STL库的list容器的双向链表的实现,内部是用了好多指针,实现了push(pop)_back(front)方法,代码备份到博客。#include<iostream>namespace nst{ template<class S> class list_node { public: S val; list_node<S>* next; list_node<S>* pre; list_node(S&原创 2022-01-07 13:03:52 · 372 阅读 · 0 评论 -
程序for while if
int main(){ int a = 1; int b = 2; int c = 0; int n = 100; double f = 0.0 for (int i=0; i<n; i++) { f += i; } while (f>0.0) { f -= 1.0; } if (a>b) { c=a; } else原创 2022-01-01 23:21:15 · 229 阅读 · 0 评论 -
试试printf函数
下面是main函数#include<studio.h>int main(){ printf("This is main function.\n"); return 0;}原创 2021-04-07 02:21:34 · 69 阅读 · 0 评论