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

在excel中怎么做邮箱网站谷歌平台推广外贸

在excel中怎么做邮箱网站,谷歌平台推广外贸,godaddy wordpress,响应式布局页面文章目录 1. 概述2. CMake链接VTK3. main.cpp文件4. 演示效果 更多精彩内容👉内容导航 👈👉VTK开发 👈 1. 概述 将图片纹理贴到球体上,实现3D地球的效果。 该代码使用了 VTK (Visualization Toolkit) 库来创建一个纹理…

文章目录

    • 1. 概述
    • 2. CMake链接VTK
    • 3. main.cpp文件
    • 4. 演示效果


更多精彩内容
👉内容导航 👈
👉VTK开发 👈

1. 概述

将图片纹理贴到球体上,实现3D地球的效果。

该代码使用了 VTK (Visualization Toolkit) 库来创建一个纹理化的球体,并将其渲染到窗口中。以下是代码的主要功能概述:

  1. 加载纹理图像
    • 通过 vtkImageReader2Factory 和 vtkImageReader2 加载指定路径的纹理图像文件(如 earthmap2k.jpg)。
    • 将图像数据传递给 vtkTexture 对象,用于生成纹理。
  2. 创建球体几何体
    • 使用 vtkTexturedSphereSource 创建一个球体几何体。
    • 设置球体的纬度和经度分辨率(SetPhiResolutionSetThetaResolution)。
  3. 纹理映射
    • 使用 vtkTransformTextureCoords 对球体的纹理坐标进行变换(目前未启用平移功能)。
    • 将纹理映射到球体表面。
  4. 渲染设置
    • 创建 vtkPolyDataMapper 将几何体数据映射为图形数据。
    • 创建 vtkActor,将纹理和几何体绑定到一起。
    • 创建 vtkRenderer,将演员(Actor)添加到渲染器中,并设置背景颜色为黑色。
  5. 窗口和交互
    • 创建 vtkRenderWindow,用于显示渲染结果。
    • 创建 vtkRenderWindowInteractor,允许用户与渲染窗口进行交互。
    • 设置窗口大小为 600x600,并命名为 “TexturedSphere”。
  6. 渲染与交互
    • 调用 Render() 方法渲染场景。
    • 调用 Start() 方法启动交互模式,允许用户旋转、缩放和移动视图。

演示文件下载地址

环境说明
系统ubuntu22.04、windows11
cmake3.22、3.25
Qt5.14.2
编译器g++11.4、msvc2017
VTK9.4.1

纹理图片:
在这里插入图片描述

2. CMake链接VTK

cmake_minimum_required(VERSION 3.20 FATAL_ERROR) # 设置CMake最低版本
project(vtk2) # 设置项目名称
# 查找VTK库
find_package(VTK COMPONENTS 
CommonColor
CommonCore
FiltersSources
FiltersTexture
IOImage
InteractionStyle
RenderingContextOpenGL2
RenderingCore
RenderingFreeType
RenderingGL2PSOpenGL2
RenderingOpenGL2
)
if(NOT VTK_FOUND)
message("VTK not found")
return()
endif()add_executable(vtk2 main.cpp) # 添加可执行文件target_link_libraries(vtk2 PRIVATE ${VTK_LIBRARIES}) # 链接VTK库
vtk_module_autoinit(TARGETS vtk2 MODULES ${VTK_LIBRARIES}) # 初始化VTK模块

3. main.cpp文件

/********************************************************************************
* 文件名:   main.cpp
* 创建时间: 2025-03-22 22:05:38
* 开发者:   MHF
* 邮箱:     1603291350@qq.com
* 功能:     
*********************************************************************************/
#include<iostream>
#include <vtkActor.h>
#include <vtkCamera.h>
#include <vtkImageReader.h>
#include <vtkImageReader2Factory.h>
#include <vtkNamedColors.h>
#include <vtkNew.h>
#include <vtkPolyDataMapper.h>
#include <vtkProperty.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkRenderer.h>
#include <vtkSmartPointer.h>
#include <vtkTexture.h>
#include <vtkTextureMapToSphere.h>
#include <vtkTexturedSphereSource.h>
#include <vtkTransformTextureCoords.h>
using namespace std;int main()
{// string fileName = "e:/lib/VTK/vtk-data/Data/earth.ppm";string fileName = "e:/lib/VTK/vtk-data/Data/earthmap2k.jpg";// string fileName = "e:/lib/VTK/vtk-data/Data/mercurymap.jpg";vtkNew<vtkTexturedSphereSource> sphere; //创建一个球体sphere->SetPhiResolution(100); //设置球体的纬度分辨率sphere->SetThetaResolution(100); //设置球体的经度分辨率vtkNew<vtkImageReader2Factory> readerFactory; //创建一个图像读取器工厂vtkSmartPointer<vtkImageReader2> reader; //创建一个图像读取器reader = readerFactory->CreateImageReader2(fileName.c_str()); //创建一个图像读取器reader->SetFileName(fileName.c_str()); //设置图像文件名vtkNew<vtkTexture> texture; //创建一个纹理texture->SetInputConnection(reader->GetOutputPort()); //设置纹理的输入连接texture->InterpolateOn(); //开启纹理插值vtkNew<vtkTransformTextureCoords> transformTexture; //创建一个纹理坐标变换器transformTexture->SetInputConnection(sphere->GetOutputPort()); //设置输入连接
#if 0// 设置纹理坐标在 U/V/W 三个方向上的平移量double translate[3] = {0, 0, 0.0};transformTexture->SetPosition(translate); //设置位置
#endifvtkNew<vtkPolyDataMapper>  mapper; //创建一个多边形数据映射器mapper->SetInputConnection(transformTexture->GetOutputPort()); //设置输入连接vtkNew<vtkActor> actor; //创建一个演员actor->SetMapper(mapper); //设置映射器actor->SetTexture(texture); //设置纹理vtkNew<vtkNamedColors> colors; //创建一个颜色vtkNew<vtkRenderer> renderer; //创建一个渲染器renderer->AddActor(actor); //添加演员renderer->SetBackground(colors->GetColor3d("Black").GetData()); //设置背景颜色vtkNew<vtkRenderWindow> renderWindow; //创建一个渲染窗口renderWindow->AddRenderer(renderer); //添加渲染器renderWindow->SetWindowName("TexturedSphere"); //设置窗口名称renderWindow->SetSize(600, 600);vtkNew<vtkRenderWindowInteractor> renderWindowInteractor; //创建一个渲染窗口交互器renderWindowInteractor->SetRenderWindow(renderWindow); //设置渲染窗口renderWindow->Render(); //渲染renderWindowInteractor->Start(); //开始交互return 0;
}

4. 演示效果

在这里插入图片描述



http://www.dtcms.com/wzjs/372687.html

相关文章:

  • 做网站被攻击谁的责任怎么免费建个人网站
  • 网站排名优化seo安徽网络关键词优化
  • 做一家仓储用地的网站公司运营策划方案
  • 沂南网站建设企业策划书
  • 宝安做网站多少钱如何统计网站访问量
  • 企业门户网站源码搜索引擎优化seo什么意思
  • 贵州省城乡建设委员会网站网络网站推广
  • 静态网站开发语言有哪些百度推广管理系统
  • 网站设计制作收费明细今日重点新闻
  • 网站可视化后台seo长尾关键词
  • wordpress内置采集插件简述优化搜索引擎的方法
  • 徐州网站建设大前端人力资源培训机构
  • 如何搜索网站百度app最新版本
  • 网站建设心得体会企业seo排名优化
  • 深圳市宝安区建设工程交易中心谷歌seo搜索引擎优化
  • 做网站用c 还是js百度搜索关键词设置
  • 在线平面设计工具网站seo查询站长之家
  • 英文网站建设口碑好舆情分析系统
  • 固安做网站郑州网络营销推广机构
  • 网络公司网站建设彩铃样本seo优化交流
  • 做旅游网站的目的与意义广告接单平台有哪些
  • 西安网站建设招聘天天seo站长工具
  • 网站名称和备案不一样东莞今天最新消息新闻
  • 毕业视频代做网站免费crm网站不用下载的软件
  • 甘肃省建设厅注册中心网站盘古百度推广靠谱吗
  • 网站建设sem账户搭建网络营销什么意思
  • 一般网站建设的流程自媒体平台注册
  • 公司怎么搭建自己网站市场营销推广策略
  • 怎样做 网站的快捷链接拉新推广怎么做
  • 熊掌号网站怎么做网络媒体发稿