11、VTK重要数学知识:平面和法向量

法向量的定义蛮简单,就是任意平面上的向量都与法向量垂直

根据2个向量点积为0垂直特性,那就很容易从定义得到点法式方程,再由点法式展开得到一般式方程

cpp 复制代码
#include "MainWindow.h"

#include <QApplication>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkRenderWindow.h>
#include <vtkRenderer.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkCamera.h>
#include <vtkProperty.h>
#include <vtkAxesActor.h>
#include <vtkPlaneSource.h>

#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2)
VTK_MODULE_INIT(vtkInteractionStyle)
VTK_MODULE_INIT(vtkRenderingFreeType)

int main(int argc, char *argv[])
{
    auto plane = vtkSmartPointer<vtkPlaneSource>::New();
    plane->SetNormal(0, 1, 0);
    plane->SetCenter(0, 0, 0);


    auto mapper = vtkSmartPointer<vtkPolyDataMapper>::New();
    mapper->SetInputConnection(plane->GetOutputPort());

    auto actor = vtkSmartPointer<vtkActor>::New();
    actor->SetMapper(mapper);
    actor->GetProperty()->SetColor(1, 0, 0);

    auto actorAxes = vtkSmartPointer<vtkAxesActor>::New();

    auto render = vtkSmartPointer<vtkRenderer>::New();
    render->SetBackground(0.1, 0.2, 0.3);
    render->AddActor(actor);
    render->AddActor(actorAxes);

    render->GetActiveCamera()->SetFocalPoint(0, 0, 0);
    render->GetActiveCamera()->SetPosition(5, 3, 5);

    auto wd = vtkSmartPointer<vtkRenderWindow>::New();
    wd->AddRenderer(render);

    auto interator = vtkSmartPointer<vtkRenderWindowInteractor>::New();
    wd->SetInteractor(interator);
    wd->SetSize(800, 600);
    wd->SetPosition(200, 200);

    wd->Render();
    interator->Start();

    return 0;
}
相关推荐
xfilm埃利测量7 天前
四探针法测电阻:原理讲透 + 常见问题一次说清
测试工具·平面·四探针·薄膜电阻测量
m0_6145235514 天前
平面跟踪为什么中途漂移:按首次异常帧建立排查记录
人工智能·平面·视频编辑
xfilm埃利测量15 天前
平面显示导电膜方阻精准表征:四探针助力靶材高效反向设计
功能测试·测试工具·平面·四探针·薄膜电阻测量
啊阿狸不会拉杆18 天前
《计算机网络-自顶向下方法》5.5 SDN控制平面 读书笔记
计算机网络·平面
李游Leo21 天前
【共创稿事节】 HarmonyOS 7 空间化 UI 实战:从平面布局到空间层级的界面重构
ui·平面·harmonyos
意图共鸣21 天前
意图共鸣科技《智能体接口化白皮书2.0》从三脚架到四面体——三角模型不是平面的,是立体的
科技·平面
算法大模型备案干货咪21 天前
《敏感词库工程实现:从平面词表到分层拦截系统》
平面
我爱cope23 天前
【计算机网络 | 网络层12:SDN:控制平面与数据平面分离意味着什么?】
网络·学习·计算机网络·平面
陈天伟教授1 个月前
【30天学会机械制图 第13 天】项目三 从复杂立体到简单立体,再到平面图形 任务2 认识截交线和相贯线
平面·工程制图·机械制图
奈斯先生Vector1 个月前
从“能调用”到“可替换”:Coze 多模型 API 编排层设计指南
linux·运维·人工智能·ubuntu·平面·ios