此源码是C++语言开发,VS++2015以上版本,包含服务端全套+客户端DLL,注意,是64位系统软件
2024/12/30 7:44:39 36.78MB 奇迹MU 奇迹MU源代码
1
GJK计算碰撞代码的应用//-----------------------------------------------------------------------------//Torque3D//Copyright(C)GarageGames.com,Inc.////Thecorealgorithmsinthisfilearebasedoncodewritten//byG.vandenBergenforhisinterferencedetectionlibrary,//"SOLID2.0"//-----------------------------------------------------------------------------#include"core/dataChunker.h"#include"collision/collision.h"#include"sceneGraph/sceneObject.h"#include"collision/convex.h"#include"collision/gjk.h"//----------------------------------------------------------------------------staticF32rel_error=1E-5f;//relativeerrorinthecomputeddistancestaticF32sTolerance=1E-3f;//DistancetolerancestaticF32sEpsilon2=1E-20f;//ZerolengthvectorstaticU32sIteration=15;//Stuckinaloop?S32num_iterations=0;S32num_irregularities=0;//----------------------------------------------------------------------------GjkCollisionState::GjkCollisionState(){a=b=0;}GjkCollisionState::~GjkCollisionState(){}//----------------------------------------------------------------------------voidGjkCollisionState::swap(){Convex*t=a;a=b;b=t;CollisionStateList*l=mLista;mLista=mListb;mListb=l;v.neg();}//----------------------------------------------------------------------------voidGjkCollisionState::compute_det(){//Dotnewpointwithcurrentsetfor(inti=0,bit=1;i0)returnfalse;}}returntrue;}//----------------------------------------------------------------------------inlineboolGjkCollisionState::closest(VectorF&v){compute_det();for(ints=bits;s;--s){if((s&bits)==s){if(valid(s|last_bit)){ bits=s|last_bit;if(bits!=15) compute_vector(bits,v); returntrue;}}}if(valid(last_bit)){bits=last_bit;v=y[last];returntrue;}returnfalse;}//----------------------------------------------------------------------------inlineboolGjkCollisionState::degenerate(constVectorF&w){for(inti=0,bit=1;imState=this;mListb=CollisionStateList::alloc();mListb->mState=this;}//----------------------------------------------------------------------------voidGjkCollisionState::reset(constMatrixF&a2w,constMatrixF&b2w){VectorFzero(0,0,0),sa,sb;a2w.mulP(a->support(zero),&sa);b2w.mulP(b->support(zero),&sb);v=sa-sb;dist=v.len();}//----------------------------------------------------------------------------voidGjkCollisionState::getCollisionInfo(constMatrixF&mat,Collision*info){AssertFatal(false,"GjkCollisionState::getCollisionInfo()-Thereremainscalingproblemshere.");//ThisassumesthattheshapesdonotintersectPoint3Fpa,pb;if(bits){getClosestPoints(pa,pb);mat.mulP(pa,&info->point);b->getTransform().mulP(pb,&pa);info->normal=info->point-pa;}else{mat.mulP(p[last],&info->point);info->normal=v;}info->normal.normalize();info->object=b->getObject();}voidGjkCollisionState::getClosestPoints(Point3F&p1,Point3F&p2){F32sum=0;p1.set(0,0,0);p2.set(0,0,0);for(inti=0,bit=1;isupport(va);a2w.mulP(p[last],&sa);VectorFvb,sb;w2b.mulV(v,&vb);q[last]=b->support(vb);b2w.mulP(q[last],&sb);VectorFw=sa-sb;if(mDot(v,w)>0)returnfalse;if(degenerate(w)){++num_irregularities;returnfalse;}y[last]=w;all_bits=bits|last_bit;++num_iterations;if(!closest(v)||num_iterations>sIteration){++num_irregularities;returnfalse;}}while(bitssEpsilon2);returntrue;}F32GjkCollisionState::distance(constMatrixF&a2w,constMatrixF&b2w,constF32dontCareDist,constMatrixF*_w2a,constMatrixF*_w2b){num_iterations=0;MatrixFw2a,w2b;if(_w2a==NULL||_w2b==NULL){w2a=a2w;w2b=b2w;w2a.inverse();w2b.inverse();}else{w2a=*_w2a;w2b=*_w2b;}reset(a2w,b2w);bits=0;all_bits=0;F32mu=0;do{nextBit();VectorFva,sa;w2a.mulV(-v,&va);p[last]=a->support(va);a2w.mulP(p[last],&sa);VectorFvb,sb;w2b.mulV(v,&vb);q[last]=b->support(vb);b2w.mulP(q[last],&sb);VectorFw=sa-sb;F32nm=mDot(v,w)/dist;if(nm>mu)mu=nm;if(mu>dontCareDist)returnmu;if(mFabs(dist-mu)sIteration){++num_irregularities;returndist;}y[last]=w;all_bits=bits|last_bit;if(!closest(v)){++num_irregularities;returndist;}dist=v.len();}while(bitssTolerance);if(bits==15&&mu<=0)dist=0;returndist;}
2024/11/12 17:21:22 50KB GJK 碰撞
1
顺序拟合动机如果我们有一个只能采样的未知函数f(x),我们可以选择一个以参数向量p特征的已知函数g(x,p)。
用最小二乘法,我们可以找到p最小化的总和-的平方误差\sum_{x\inX}(g(x,p)-f(x))^2以设定的采样点的X。
如果评估f昂贵,那么仔细选择采样点符合我们的利益。
假设我们的模型已经很不错了,我们可以使用它来找出下一步要采样的地方。
猜测要采样的点是x^*,其中g(x^*,p)的p梯度尽可能大(这是我们最有可能从采样中学到的东西)的地方。
我们还希望避免在同一位置多次采样。
该程序包实现了这种顺序采样方法。
使用范例usingSequentialFit,Plotsgaussian(x,mu,sigma)=exp(-((x-mu)/sigma)^2)functionexpensiveFunction(x
2024/9/13 15:18:32 143KB Julia
1
MUEDITOR是用来编写MicroPython的一个工具,可以简单的使用,使用Python来给STM32和树莓派写软件
2024/5/1 20:48:30 200B 树莓派 STM
1
奇迹MU多版本服务端与客户端文件编辑工具,bmd文件编辑工具,套装编辑器,支持MUS5--S12版本,作者Abcddcba
2024/3/12 10:42:44 60KB bmd文件编辑工具
1
Reconstructionofabsorptioncoefficient\mu_{a}andscatteringcoefficient\mu_{s}isveryimportantforapplicationsofdiffuseopticaltomographyandnearinfraredspectroscopy.Aimingattheearlycancerdetectionofcervixandstomach,wepresentafastinverseMonte-Carloschemeforextracting\mu_{a}and\mu_{s}ofatubulartissuefromthemeasurementonfrequencydomain.Resultsshowthatthecomputationtimeforreconstructingonesetof\mu_{a}and\mu_{s}islessthan1minandther
2024/2/26 19:07:13 887KB 混浊介质 漫射 医学光学 吸收
1
套装编辑工具很不错的,有了这款工具我们在编辑套装的时候就不用那笔记了
2024/2/24 21:53:47 678KB 奇迹 MU
1
并发加权mu-演算(concurrentweightedmu-calculus,CWC)是对Kim.G.Larsen所提出的并发加权逻辑的强有力的扩充,通过加入不动点算子,增强表达能力,实现对复杂模块化系统的有效建模。
本文对CWC进行了研究,给出了CWC的语法并阐述了CWC的标记加权转移语义。
μ-演算与自动机理论密不可分,引入了轮替树自动机用于处理CWC,阐述了轮替树自动机与CWC之间的联系,构建了一种特定的用于CWC的轮替树自动机模型。
一致性内插定理是Craig内插定理的加强和扩展,为了探究CWC上的一致性内插定理,根据AndrewM.Pitts提出的方法,利用互模拟量词寻找一致性插值。
给出了互模拟量词在标记加权转移系统上的语义,并研究了互模拟量词和CWC上一致性内插定理之间的关系。
在此过程中利用ω展开(unravelling),由ω展开树的一系列特性,结合轮替树自动机,证明了一致性内插定理在CWC上成立。
1
大规模天线仿真,matlab,Large-ScaleMulti-User(MU)MIMO-OFDM系统仿真
2023/9/8 8:23:17 1.46MB Masive-MIMO
1
奇迹免网站系统就可以注册账号和管理账号的工具,个人感觉这个工具还可以
2023/7/6 3:53:17 69KB MU
1
共 18 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡