首页 > 其他分享 >生成在圆中均匀分布的随机点

生成在圆中均匀分布的随机点

时间:2024-03-27 10:22:40浏览次数:19  
标签:float random 均匀分布 生成 随机 new var theta Math

/// <summary>
/// 生成在圆中均匀分布的随机点
/// </summary>
/// <param name="radius">圆的半径</param>
/// <param name="random">种子</param>
/// <returns></returns>
public static PointF GenerateCircleRandomPoint(float radius, Random random)
{
    // 角度 theta
    var theta = random.NextDouble() * Math.PI * 2;
    // 生成距离圆心的长度
    var len = Math.Sqrt(random.NextDouble()) * radius;
    var x = Math.Cos(theta) * len;
    var y = Math.Sin(theta) * len;
    return new PointF((float)x, (float)y);
}
int sumCount = 100_000_000;
Random random = new Random();
WSCommFunc.PrintThreadId("Create data...........");
List<DemoItem> testLis = new List<DemoItem>(sumCount);
for (int i = 0; i < sumCount; i++)
{
    var pt = WSCommFunc.GenerateCircleRandomPoint(130, random);
    testLis.Add(new DemoItem()
    {
        X = pt.X,
        Y = pt.Y,
    });
}

标签:float,random,均匀分布,生成,随机,new,var,theta,Math
From: https://www.cnblogs.com/wesson2019-blog/p/18098342

相关文章

  • 一个可一键生成短视频的AI大模型,亲测可用
    大家好,我是Java陈序员。自从OpenAI发布Sora文本生成视频模型后,文本生成视频的AI技术引起了无数圈内圈外人士的关注和实验。今天,给大家介绍一个大模型,可一键生成短视频。关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。项......
  • Cadence——生成Gerber制板文件
    软件版本:CadenceSPBOrCADAllegro16.6打开AllegroPCBDesigner选择如下选项......
  • 使用ffmpeg命令把单张或多张图片生成固定时长的视频
    1,官网下载FFmpeg.exe      参见:https://blog.csdn.net/m0_46278037/article/details/1137905402,FFmpegHelper代码如下1publicclassFFmpegHelper2{3publicvoidConvertVideo()4{56stringinputDi......
  • AI绘画自动生成器有哪些?
    AI绘画自动生成器是近年来技术进步的产物,它们利用人工智能技术,特别是深度学习的方法,来自动生成图像和绘画。这些工具不仅为艺术家和设计师提供了新的创作手段,也为普通用户提供了探索艺术和创意的新途径。以下是一些著名的AI绘画自动生成器:DALL·E3:OpenAI开发的这个模型......
  • VS2022软件打包 生成和事后事件处理
    VS2022软件打包生成和事后事件处理 示例目标:将编译后的文件拷贝到新的文件,并重命名方便软件打包 生成前:删除目标目录:rd/s/q"$(SolutionDir)..\setup\$(ConfigurationName)\"生成后-拷贝重命名:copy"$(TargetPath)"$(TargetDir)JCZX-2024.exe"copy"$(TargetPat......
  • 【浅学】星火知识库文档检索生成问答Demo实测
    前置准备用讯飞大模型3.5搭建好应用,具体操作可以看我的这篇:讯飞星火大模型API,实名认证免费领一年有效期的200万Token,在控制台的左侧有星火知识库,实名认证过就可以开通免费的部分。用这个纯粹是因为免费,关于这个大模型的使用体验啥的不做评价,大家可以也选择自己喜欢的其他模......
  • 训练人形机器人时如何收集人类行为数据 —— 通过人来训练机器人(真人实际演示动作)or
    特斯拉的老马,搞的optimus人形机器人就是通过人来训练机器人(真人实际演示动作),但是未来使用仿真环境自动生成数据是否可行呢,NVIDIA的老黄在2024GTC上是大力推出自家的GROOT平台,该平台的主要数据则是使用仿真器生成的,到底哪种方式更优呢?......
  • P8819 [CSP-S 2022] 星战 (很厉害的随机化想法)
    简化下题意有n个点m条单向边每条边有激活和失活两种状态,一共有4中操作1.失活一条u->v的边2.失活终点是v的边3.激活u->v的边4.激活终点是v的边问你每次修改后每个点的出度是否都为1.50分的做法就是暴力修改,对于1操作和3操作都是可以o(1)解决,对于2操作和4......
  • .NET Emit 入门教程:第五部分:动态生成方法(MethodBuilder 与 DynamicMethod)
    前言:当我们涉及到在运行时生成和定义方法时,便需要使用到C#中的两个关键类之一:MethodBuilder 或 DynamicMethod。这两者都属于反射(Reflection.Emit)的一部分,允许我们以动态的方式创建方法。两者各有侧重,使用方式大体相同,本篇文章我们先介绍MethodBuilder,再介绍DynamicMethod,......
  • 结对编程--自动生成小学四则运算
    小学四则运算题目生成这个作业属于哪个课程软件工程2024这个作业要求在哪里结对项目这个作业的目标完成结对项目,共同合作实现自动生成小学四则运算题目参与人员温泽坤3122004582、黄浩3122004571作业github地址PSP2.1表格PSP2.1PersonalSoftwareP......