当前位置: 首页 > news >正文

常州网站建设公司服务seo百度首页排名业务

常州网站建设公司服务,seo百度首页排名业务,珠海网站建设易搜互联,vultr做网站抛物线轨迹计算不同输入情况下的抛物线有不同计算方式。为了保证飞行时间的一致,水平初速度和起点两个参数是任何情况下都需要的。三、示例代码void UParabolicMovementComponent::InitComputeParams(){//无目标时if (!bHasTarget){//指定出射角度时计算方法// FQua…

抛物线轨迹计算

不同输入情况下的抛物线有不同计算方式。为了保证飞行时间的一致,水平初速度和起点两个参数是任何情况下都需要的。

159ab5b76060148d2c26c9e0d7c69b88.png

三、示例代码

void UParabolicMovementComponent::InitComputeParams()

{

//无目标时

if (!bHasTarget)

{

//指定出射角度时计算方法

// FQuat quat = UpdatedComponent->GetComponentQuat() * FQuat(Rotation);

// DirHorz = quat.Rotator().Vector();

// float Theta = DirHorz.Z / DirHorz.Size2D();

// VerticalSpeed = HorzSpeed * tan(Theta);

// DirHorz.Z = 0;

//指定最大高度时计算方法

DirHorz = UpdatedComponent->GetComponentRotation().Vector();

DirHorz.Z = 0;

DirHorz.Normalize();

//若无目标则默认G=980.0f

VerticalSpeed = FMath::Sqrt(2 * Gravity * MaxHeight);

}

//有目标时

else

{

DirHorz = GetTargetPosition() - GetHostPosition();

float HeightDist = DirHorz.Z;

DirHorz.Z = 0;

float Dist = DirHorz.Size();

DirHorz.Normalize();

TotalTime = Dist / HorzSpeed;

VerticalSpeed = (2.0f * (MaxHeight + FMath::Sqrt(MaxHeight*MaxHeight - MaxHeight*HeightDist))) / TotalTime;

Gravity = VerticalSpeed * VerticalSpeed / (2.0f * MaxHeight);

//VerticalSpeed = HeightDist / TotalTime + .5f * Gravity * TotalTime;

}

CurrentTime = 0;

StartPos = GetHostPosition();

Velocity = DirHorz * HorzSpeed + FVector::UpVector * VerticalSpeed;

UpdateComponentVelocity();

}

//计算当前时刻所在位置

void UParabolicMovementComponent::ComputeMovement(float DeltaTime, FVector& OutMoveDelta)

{

CurrentTime += DeltaTime;

if(bHasTarget)

{

if (CurrentTime >= TotalTime)

{

CurrentTime = TotalTime;

bStop = true;

}

}

float CurrentVertSpeed = VerticalSpeed - Gravity * CurrentTime;

float fVertDist = .5f * (VerticalSpeed + CurrentVertSpeed) * CurrentTime;

OutMoveDelta = StartPos + CurrentTime * HorzSpeed * DirHorz + fVertDist * FVector::UpVector - GetHostPosition();

Velocity = DirHorz * HorzSpeed + FVector::UpVector * CurrentVertSpeed;

//OutNewRotation = Velocity.Rotation().Quaternion();

}

导弹线轨迹计算

物体以某个初速度方向出发后,先保持稳定线性速度,以一定角速度向目标点旋转,当速度方向和自身-目标方向的夹角小于一定角度后,速度方向立刻改为自身-目标方向,进行直线加速。

da3a0f8104b83c1d04d3516fa4dfafec.png

示例代码

void UMissleMovementComponent::InitComputeParams()

{

Dir = (UpdatedComponent->GetComponentQuat() * Rotation.Quaternion()).Rotator().Vector();

Dir.Normalize();

Velocity = Dir * StartSpeed;

CurrentSpeed = StartSpeed;

UpdateComponentVelocity();

}

void UMissleMovementComponent::ComputeMovement(float DeltaTime, FVector& OutMoveDelta)

{

float MinDist = GetMinimalDistance();

static const float fLimit = (float)cos(FMath::DegreesToRadians(LimitDegree));

FVector vDir;

vDir = GetTargetPosition() - GetHostPosition();

float fLeft = vDir.Size();

vDir.Normalize();

float fDist = CurrentSpeed * DeltaTime;

if (fDist >= fLeft)

{

fDist = fLeft;

bStop = true;

}

float fAngle = Velocity.GetSafeNormal() | vDir;

//如果小于最小距离;或者角度相近,使用直线

if (fLeft < MinDist || fAngle > fLimit)

{

CurrentSpeed += LinearAcc * DeltaTime;

OutMoveDelta = vDir * fDist;

Velocity = vDir * CurrentSpeed;

}

else

{

OutMoveDelta = Velocity * DeltaTime;

FVector vUp = Velocity ^ vDir;

vUp.Normalize();

FQuat q(vUp, RotationSpeed * DeltaTime);

Velocity = q.RotateVector(Velocity);

}

//OutNewRotation = Velocity.ToOrientationQuat();

//OutNewRotation = Velocity.Rotation().Quaternion();

}

float UMissleMovementComponent::GetMinimalDistance()

{

float d = 2.0f * StartSpeed / RotationSpeed;

return d;

}

http://www.lbrq.cn/news/2422675.html

相关文章:

  • wordpress图片一排seo技术学院
  • 网站外链建设与维护品牌运营中心
  • 沈阳网站建设 网络服务水果网络营销策划方案
  • 大学网站建设公司网站建设山东聚搜网络
  • 苏州做网站公司乛 苏州聚尚网络网址大全2345
  • 温州手机网站制作联系电话网站开发的流程
  • 个人怎么建设图书网站推广引流渠道有哪些
  • 旅游网站建设注册网游推广
  • 网站域名备案与不备案的区别软文广告是什么意思
  • 网站设计与管理的软件怎么做网络宣传推广
  • wordpress上传大小限制东莞网络推广优化排名
  • wordpress会员计时重庆黄埔seo整站优化
  • wordpress调整侧边栏的高度百度seo和sem
  • 网站做电话线用二十四个关键词
  • 网站建设教程 冰美人视频网络推广费计入什么科目
  • 做包皮医院网站百度手机版下载
  • 陕西 网站建设sem优化师是做什么的
  • 新手做网站做什么样的竞价被恶意点击怎么办
  • 做网站用什么系统好竞价广告
  • 郑州的做网站公司天津seo技术教程
  • 厦门网站建设哪家公司好关键词seo排名怎么样
  • 商洛网站制作seo合作
  • 免费企业建站系统排名360搜索优化
  • 驾校一点通网站怎么做电商网站排名
  • 网站建设和编程的区别丽水百度seo
  • 做网站建设的公司有哪些内容品牌营销成功案例
  • 网站备案后 如何建设长沙百家号seo
  • 湖北网站建设 鄂 icp长春seo顾问
  • 长春建设集团网站百度搜索引擎收录
  • 微信对接网站可以做301跳转吗今日百度小说排行榜风云榜
  • uniapp请求封装上传
  • 关于java8里边Collectors.toMap()的空限制
  • G1垃圾回收器
  • 【Elasticsearch】BM25的discount_overlaps参数
  • C#/.NET/.NET Core技术前沿周刊 | 第 47 期(2025年7.14-7.20)
  • 在 Angular 应用程序中使用 Genkit 的完整指南