Hello World of OpenCascade

eryar@163.com

摘要Abstract:以一个经典的Hello World程序为例开始对开源几何造型内核OpenCascade的学习。

关键字Key Words:OpenCascade、Qt、Hello World

一、引言 Introduction

OpenCascade编译成功后,看着大量的代码,无从下手。本文以Hello World程序为例,详细说明使用OpenCascade进行编程需要注意的事项,以便对OpenCascade做进一步学习。

选择的编程工具为Qt Creator,因为其也是开源的,其版本信息如下图所示:

Figure 1.1 About Qt Creator

二、Hello World of OpenCascade

1. 新建工程:在Qt Creator中创建一个新的工程,选择Non-Qt Project -> Plain C++ Project,如下图所示:

Figure 2.1 Create a Plain C++ project in Qt Creator

2. 在工程文件中添加头文件路径及所需要用到的库文件,如下图所示:

Figure 2.2 Set header file path and library

3. 程序的源代码如下所示:

/*

*    Copyright (c) 2013 eryar All Rights Reserved.

*

*        File    : Main.cpp

*        Author  : eryar@163.com

*        Date    : 2013-08-22 18:52

*        Version : 1.0v

*

*    Description : Hello World program of OpenCascade.

*

*/

#include <iostream>

// OpenCascade library.

#define WNT

#include <Standard_CString.hxx>

int main(void)

{

Standard_CString strHelloWorld("Hello World!");

Standard_CString strHelloOcct("Hello OpenCascade!");

std::cout << strHelloWorld << std::endl;

std::cout << strHelloOcct << std::endl;

return 0;

}

4. 程序输出结果如下图所示:

Figure 2.3 Program output

5. 程序代码说明:

l #include <iostream>:使用了C++的标准输入输出,如:std::cout;

l #define WNT:告知OpenCascade程序运行在Windows平台上。若不设置,当编译器为MSVC时,会出现如下编译错误:

// check if WNT macro is not defined but compiler is MSVC

#if defined(_MSC_VER) && !defined(WNT)

#error "Wrong compiler options has been detected. Add /DWNT option for proper compilation!!!!!"

#endif

l #include <Standard_CString.hxx>:使用OpenCascade中的字符串;

l 使用了两个字符串变量分别输出“Hello World!”和“Hello OpenCascade!”;

三、结论 Conclusion

在Qt Creator中以一个简单的示例程序,详细说明了在Windows平台使用OpenCascade开发需要注意的事项,为进一步研究、学习、使用OpenCascade奠定基础。

PDF Version: Hello World of OpenCascade

转载于:https://www.cnblogs.com/opencascade/p/3275755.html

Hello World of OpenCascade相关推荐

  1. 基于OpenCasCade的程序发布问题

    基于OpenCasCade二次开发了一个程序,想采用简单的copy的发布(部署)方式. 但在发布时遇到了很多问题.总结一下. 首先将所有所需的dll拷贝到了执行目录下,然后将程序copy到一台未安装O ...

  2. OpenCASCADE Make Primitives-Sphere

    为什么80%的码农都做不了架构师?>>>    OpenCASCADE Make Primitives-Sphere eryar@163.com Abstract. The sphe ...

  3. OpenCascade Primitives BRep-Cylinder

    为什么80%的码农都做不了架构师?>>>    OpenCascade Primitives BRep-Cylinder eryar@163.com Abstract. BRep i ...

  4. OpenCASCADE:Inspector的TInspectorEXE 示例

    OpenCASCADE:Inspector的TInspectorEXE 示例 TInspectorEXE 示例 TInspectorEXE 首选项 如何在 DRAW Test Harness 中启动 ...

  5. OpenCASCADE:常用Inspector控件之3D 视图

    OpenCASCADE:常用Inspector控件之3D 视图 概述 元素 3D 视图首选项 首选项上下文菜单 概述 OCCT 3D 查看器的此控件创建可视化视图组件并允许在视图中执行一些用户操作. ...

  6. OpenCASCADE:常用Inspector控件之树视图

    OpenCASCADE:常用Inspector控件之树视图 树视图首选项 此控件显示所调查 OCCT 元素的表示层次结构,例如DFBrowser的 TDocStd_Application,请参阅概述. ...

  7. OpenCASCADE:Inspector简介

    OpenCASCADE:Inspector简介 概述 入门 本博文介绍了如何使用 Inspector. 概述 Inspector 是一个基于 Qt 的库,提供交互式检查 OCAF 数据模型.OCCT ...

  8. OpenCASCADE绘制测试线束:使用自定义命令扩展测试工具

    OpenCASCADE: 使用自定义命令扩展测试工具 自定义命令实现 在测试工具中注册命令 创建工具包(库)作为插件 创建插件资源文件 动态加载和激活 使用自定义命令扩展测试工具 以下章节解释了如何使 ...

  9. OpenCASCADE绘制测试线束:检查器命令之Inspector

    OpenCASCADE绘制测试线束:检查器命令之Inspector Inspector 本节介绍可以使用 Inspector 的命令. Inspector 句法: tinspector [-plugi ...

最新文章

  1. 【Python】向函数传递任意数量的实参
  2. 《水泥公司信息管理系统》Access学习心得
  3. matlab绘图大全
  4. 2020 云原生技术 7 大领域趋势全预测
  5. 使用SAP OData offline库实现Android应用的离线(offline)模式
  6. 什么是覆盖索引?如何利用覆盖索引进行SQL语句优化?
  7. Java运行时的数据区域
  8. android 粒子编辑器,libgdx游戏引擎开发笔记(五)粒子编辑器的使用
  9. 医疗机构做直播前的预告应该怎么做?
  10. 实验01 使用网络协议分析仪Wireshark
  11. amd显卡用黑苹果输出黑屏_黑苹果AMD NVIDIA Intel显卡咋驱动?速戳这里
  12. 计算机视觉:图片的马赛克、毛玻璃效果和图片的融合
  13. Windows Shell编程-第十章.Winows辅助库
  14. PostMan接口测试(很全面的接口测试教程)
  15. PTA 6-6 使用函数计算两个复数之积
  16. 图像语义分割网络FCN(32s、16s、8s)原理及MindSpore实现
  17. 关于新书《修炼之道:.NET开发要点精讲》的各种说明
  18. BigGAN-论文阅读笔记
  19. 美拍直播首屏耗时减少50%以上的优化实践
  20. PPT分享 | 中国移动十大领域5G应用案例

热门文章

  1. 为什么说 SQL 是最成功的第四代语言?
  2. 前端每日实战:143# 视频演示如何用 CSS 的 Grid 布局创作一枚小松鼠邮票
  3. 基于 HTML5 的工业互联网云平台监控机房 U 位
  4. js模块化编程之CommonJS和AMD/CMD
  5. 一个伪黑客的成功的秘密1:tomcat入侵
  6. Unity3D手机斗地主游戏开发实战(03)_地主牌显示和出牌逻辑
  7. ReplaceForm.cs
  8. 一个Java方法能有多少个参数类型?这个好奇coder做了个实验
  9. Linux系统状态查看命令2
  10. Struts07---访问servlet的API