我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C++VTK实例之高斯随机数的生成

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C++VTK实例之高斯随机数的生成

VTK实例高斯随机数的生成

这个例子演示了从一个平均数是0.0和标准偏差是2.2的高斯分布中随机生成3个随机数。先创建两个文件:GaussianRandomNumber.cpp和CMakeLists.txt。

代码如下:

GaussianRandomNumber.cxx


#include <vtkBoxMuellerRandomSequence.h>
#include <vtkNew.h>

int main(int, char*[])
{
  // The number of random numbers we wish to produce
  unsigned int numRand = 3;

  vtkNew<vtkBoxMuellerRandomSequence> randomSequence;

  // Generate numRand random numbers from a Gaussian distribution with mean 0.0
  // and standard deviation 2.2
  auto mean = 0.0;
  auto standardDeviation = 2.2;
  for (unsigned int i = 0; i < numRand; i++)
  {
    auto a = randomSequence->GetScaledValue(mean, standardDeviation);
    randomSequence->Next();
    std::cout << a << std::endl;
  }

  return EXIT_SUCCESS;
}

CMakeLists.txt


cmake_minimum_required(VERSION 3.3 FATAL_ERROR)

project(GaussianRandomNumber)

find_package(VTK COMPONENTS 
  vtkCommonCore
  QUIET
)

if (NOT VTK_FOUND)
  message("Skipping GaussianRandomNumber: ${VTK_NOT_FOUND_MESSAGE}")
  return ()
endif()
message (STATUS "VTK_VERSION: ${VTK_VERSION}")
if (VTK_VERSION VERSION_LESS "8.90.0")
  # old system
  include(${VTK_USE_FILE})
  add_executable(GaussianRandomNumber MACOSX_BUNDLE GaussianRandomNumber.cxx )
  target_link_libraries(GaussianRandomNumber PRIVATE ${VTK_LIBRARIES})
else ()
  # include all components
  add_executable(GaussianRandomNumber MACOSX_BUNDLE GaussianRandomNumber.cxx )
  target_link_libraries(GaussianRandomNumber PRIVATE ${VTK_LIBRARIES})
  # vtk_module_autoinit is needed
  vtk_module_autoinit(
    TARGETS GaussianRandomNumber
    MODULES ${VTK_LIBRARIES}
    )
endif ()

编译

将以上两个文件放在自定义文件夹里,再新建一个build目录,用于存放编译后生成的文件。打开CMake程序,编译设置界面如下:

调试

在刚刚生成的build目录下,以管理员身份打开vs2019,再打开.sln文件,点击build生成解决方案,如下图:

并将GaussianRandomNumber设为启动项,

进行本地调试,生成三个随机数:

//注:确保将VTK bin目录添加到路径中,这将在运行时解析VTK 的dll文件。

到此这篇关于C++ VTK实例之高斯随机数的生成的文章就介绍到这了,更多相关C++ 的内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C++VTK实例之高斯随机数的生成

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python生成随机数实例分析

这篇文章主要讲解了“Python生成随机数实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python生成随机数实例分析”吧!一、随机数种子为什么要提出随机数种子呢?咱们前面提到过了,
2023-06-29

Java 生成随机字符串数组的实例详解

Java 生成随机字符串数组的实例详解利用Collections.sort()方法对泛型为String的List 进行排序。具体要求:1.创建完List之后,往其中添加十条随机字符串2.每条字符串的长度为10以内的随机整数3
2023-05-31

Linux Shell 生成随机数和随机字符串的方法示例

日常生活中,会经常用到随机数,使用场景非常广泛,例如买彩票、丢骰子、抽签、年会抽奖等。 Shell 下如何生成随机数呢,米扑博客特意写了本文,总结 linux Shell 产生随机数的多种方法。 计算机产生的的只是“伪随机数”,不会产生绝对
2022-06-04

nodejs密码加密中生成随机数的实例代码

之前关于写了一个 nodejs密码加密中生成随机数,最近需要回顾,就顺便发到随笔上了 方法一: Math.random().toString(36).substr(2)运行后的结果就是11位数的随机数方法二: 1、定义函数function
2022-06-04

前端开发之JS生成32位随机数的方法举例

最近有个需求,是需要生成32位长度的随机数,下面这篇文章主要给大家介绍了关于前端开发之JS生成32位随机数的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-01-31

c语言怎么实现随机数生成1到100

在C语言中,可以使用rand()函数生成随机数。该函数返回一个0到RAND_MAX(通常是32767)之间的整数。可以使用取余运算符将生成的随机数缩放到1到100之间。下面是一个实现的示例代码:```c#include #include #
2023-10-10

PHP随机数生成代码与使用实例分析

在PHP程序设计中,随机数的生成尤为重要。我们需要用随机数在我们的页面中展示随机记录(比如图片、用户记录、文章ID等)。
2022-11-21

matlab怎么生成0到1之间的随机数

在Matlab中,可以使用`rand`函数生成0到1之间的随机数。具体方法如下:```matlabrandom_number = rand;```以上代码将生成一个0到1之间的随机数并赋值给`random_number`变量。如果需要生成一
2023-08-14

用Java生成N个不重复的随机数,3种实例

1、Random类和Set集合来完成 Java实现生成n个不重复的随机数可以使用Java中的Random类和Set集合来完成 具体代码如下: import java.util.HashSet;import java.util.Rand
2023-08-19

c语言如何生成不重复的随机数

在C语言中,可以使用以下步骤生成不重复的随机数:1. 引入头文件 `stdlib.h` 和 `time.h`。```c#include #include ```2. 在程序的开始处使用 `srand` 函数初始化随机数种子,以确保每次运行程
2023-08-11

JAVA 生成随机数并根据后台概率灵活生成的实例代码

最近碰到一个大转盘的业务,奖品可根据数据后台灵活设置中奖概率,看起来挺简单的业务功能,但实现起来对我这个毫无经验的人来说并不容易,后面又碰到一个根据后台概率随机获取不同概率的档位积分,前面是两个实际中业务要用到的话不多说吧,直接上我写概率工
2023-05-31

JavaScript怎么生成1到100之间的随机数

JavaScript求100个数在JavaScript中,我们可以使用随机数函数来生成一组随机数,以实现求出100个数的功能。随机数可以通过Math对象的random()方法来获取,在这个任务中我们需要将随机数乘以一个指定的数字范围,例如要求生成1到100之间的随机数,我们需要生成随机数后乘以100,并向下取整以确保随机数在指定范围内。以下是实现这个任务的代码示例:```jav
2023-05-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录