Qt with OpenCascade】的更多相关文章

Qt with OpenCascade 摘要Abstract:详细介绍了如何在Qt中使用OpenCascade. 关键字Key Words:Qt.OpenCascade 一.引言 Introduction 1.1 Overview of Qt Qt是1991年奇趣科技开发的一个跨平台的C++图形用户界面应用程序框架.它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能.Qt很容易扩展,并且允许真正地组件编程.基本上,Qt同X Window上的Motif,Openwin,GTK等图形界面库…
A Simple OpenCASCADE Qt Demo-occQt eryar@163.com Abstract. OpenCASCADE have provided the Qt samples in the samples directory, but they are a little complicated. So I decide write a simple OpenCASCADE Qt demo for the OpenCASCADE beginners. Key Words.…
Use Qt in Debian for OpenCASCADE eryar@163.com Recently several OpenCASCADE enthusiasts want to build my simple Qt demo about OpenCASCADE on ubuntu system, but could not compile it successfully. Because I only compiled the occQt in Windows system, do…
现在网上关于OpenCascade(OCCT)的环境搭建几乎都是下载源码,然后实时MinGW来编译生成源码.但是,官方有提供Windows平台下的可执行文件,如果想快速了解OpenCascade(OCCT)不想去搭建环境,那么下载可执行文件的方式是非常快速可行的. 开发环境 Qt5.9.7(如果非QT开发环境非必须) Visual Studio 2017 社区版 Qt的Visual Studio插件 OpenCascade二进制文件 步骤 下载&&安装相对应的文件 上面关于开发环境的部分,…
OpenGL Shader in OpenCASCADE eryar@163.com Abstract. As implementation of one of the strategic steps in OpenCASCADE visualization component development road-map, support for GLSL shader programs has been added in OpenCASCADE Technology 6.7.0. Key Wor…
Undo/Redo for Qt Tree Model eryar@163.com Abstract. Qt contains a set of item view classes that use a model/view architecture to manage the relationship between data and the way it is presented to the user. The separation of functionality introduced…
Qt Undo Framework Demo eryar@163.com Abstract. Qt’s Undo Framework is an implementation of the Command Pattern, for implementing undo/redo functionality in applications. The Command pattern is based on the idea that all editing in an application is d…
OpenCASCADE JT Assistant eryar@163.com Abstract. Siemens’ JT data format accepted as the world’s first ISO international standard for viewing and sharing lightweight 3D product information. OpenCASCADE JT Assistant is a viewer for files in JT format.…
Hello World of OpenCascade eryar@163.com 摘要Abstract:以一个经典的Hello World程序为例开始对开源几何造型内核OpenCascade的学习. 关键字Key Words:OpenCascade.Qt.Hello World 一.引言 Introduction OpenCascade编译成功后,看着大量的代码,无从下手.本文以Hello World程序为例,详细说明使用OpenCascade进行编程需要注意的事项,以便对OpenCascade…
Building third-party products of OpenCascade eryar@163.com Available distributives of third-party products OpenCascade中用到了几个第三方库,其中tcl/tk和freetype是必须的,gl2ps, freeimage, tbb是可选的,可以通过配置custom.bat来进行选择.并不是第三方库需要重新编译. 当OpenCascade编译时报了缺少第三方库的头文件时,这是因为第三方…
OpenCASCADE的编译 The Installation and Compilation of OpenCASCADE eryar@163.com 一. 安装OpenCASCADE 可以从OpenCASCADE的官网上下载其安装包,可以选择最新的版本,下载网址为: http://www.opencascade.org/getocc/download/loadocc/ .如果只用其库来编程已经够了,安装好下载的安装包即可.若想对其进行调试,必须先把它编译成功.想编译通过,必须下载第三方库,因…
Hello World of OpenCascade   Hello World of OpenCascade eryar@163.com 摘要Abstract:以一个经典的Hello World程序为例开始对开源几何造型内核OpenCascade的学习. 关键字Key Words:OpenCascade.Qt.Hello World 一.引言 Introduction OpenCascade编译成功后,看着大量的代码,无从下手.本文以Hello World程序为例,详细说明使用OpenCasc…
FreeType in OpenCASCADE eryar@163.com Abstract. FreeType is required for text display in the 3D viewer. FreeType is a software font engine that is designed to be small, efficient, highly customizable, and portable while capable of producing high-qual…
OpenCASCADE AIS Manipulator eryar@163.com Abstract. OpenCASCADE7.1.0 introduces new built-in interactive object AIS_Manipulator providing interface for moving objects within 3D viewer. The class features three kinds of transformation modes for attach…
Convert BSpline Curve to Arc Spline in OpenCASCADE eryar@163.com Abstract. The paper based on OpenCASCADE algorithms to approximate the NURBS curve to arc spline. The method is most useful in numerical control to drive the cutter along straight line…
OpenCASCADE Shape Location eryar@163.com Abstract. The TopLoc package of OpenCASCADE gives resources to handle 3D local coordinate systems called Locations. A Location is a composition of elementary coordinate systems, each one is called a Datum. The…
OpenCASCADE BRep Projection eryar@163.com 一网友发邮件问我下图所示的效果如何在OpenCASCADE中实现,我的想法是先构造出螺旋线,再将螺旋线投影到面上. 为了验证我的想法,结合原来螺旋线的造型算法,来测试下这种效果的实现.依然采用Tcl脚本在Draw Test Harness中试验.个人觉得高效使用OpenCASCADE的方法应该也是先用Tcl脚本来验证一些想法后,再根据使用到的命令找到OpenCASCADE中DRAW的命令实现,最后再可以根据DRA…
OpenCASCADE Expression Interpreter by Flex & Bison eryar@163.com Abstract. OpenCASCADE provide data structure of any expression, relation or function used in mathematics. Flex and Bison are tools for building programs that handle structured input. Th…
本文将介绍自定义Model过程中数据库数据源的获取方法,我使用过以下三种方式获取数据库数据源: 创建 存储对应数据库所有字段的 结构体,将结构体置于容器中返回,然后根据索引值(QModelIndex)取出最终的字段值: 创建 存储对应数据库所有字段的 类,将类对象置于容器中返回,然后利用内省机制获取对象相应字段(属性)值. 不用自己造轮子,直接使用QVariantList类,将QVariantList 对象置于容器中,如QVector<QVariantList >,然后根据索引值(QModel…
OpenCASCADE Data Exchange - 3D PDF eryar@163.com Abstract. Today most 3D engineering model data are save to 3D PDF files. Universal 3D(U3D) along side Product Representation Compact(PRC), U3D is the historical foundation used to embed 3D interactive…
OpenCASCADE Interpolations and Approximations eryar@163.com Abstract. In modeling, it is often required to approximate or interpolate points to curves and surfaces. In interpolation, the process is complete when the curve or surface passes through al…
OpenCASCADE Ring Type Spring Modeling eryar@163.com Abstract. The general method to directly create an edge is to give a 3D curve as the support(geometric domain) of the edge. The curve maybe defined as a 2D curve in the parametric space of a surface…
Ubuntu 下安装QT 本文使用的环境 QT Library: qt-everywhere-opensource-src-4.7.4.tar.gz QT Creator: qt-creator-linux-x86-opensource-2.4.1.bin Ubuntu: Ubuntu 16.04 LTS/或者其他10.4版本以上都可以 安装注意事项 因为安装需要 g++ 所以确保 g++ 已经安装,如果未安装.直接 sudo apt-get g++ libx11-dev. libxext-de…
Qt Creator: 下载: Qt 5.5.1 for Windows 32-bit(MinGW 4.9.2, 1.0 GB):http://download.qt.io/official_releases/qt/5.5/5.5.0/qt-opensource-windows-x86-mingw492-5.5.0.exe 安装: 一直"下一步"安装下去. Qt Creator运行: 用Qt Creator创建项目: Visual Studio: 下载: Visual Studio A…
参考链接1:http://blog.csdn.net/skyhawk452/article/details/6121407 参考链接2:http://blog.csdn.net/memory_exception/article/details/50953005 信号与槽可以通过使用手写代码显式的实现关联 ,也可以运用 QMetaObject 类规定的槽 函数命名范式来实现自动关联. 显示关联 class MyWidget : public QWidget { Q_OBJECT public: M…
最开始使用Qt时就遇到过QT Gui失去响应的问题,我是用多线程的方式解决的,然而通常来说,多线程是会降低程序的运行速度. 之后,在使用QSqlQuery::execBatch()函数时,Qt Gui 又失去响应,虽然多线程可以解决,但是如果能用单线程很好解决的,最好不要用到多线程,因为多线程不仅容易拖慢程序的速度,编程及维护的难度也更大,能用简单方法解决的,就不要用复杂的方法. 于是我再次搜索资料,期望在解决方案的选择与解决步骤上,能够得到一个全面而又细致的总结. Witold Wysota…
在qt中,使用Singleton模式时一定要小心.因为Singleton模式中使用的是静态对象,静态对象是直到程序结束才被释放的,然而,一旦把该静态对象纳入了Qt的父子对象体系,就会导致不明确的行为.并且,就算我们小心谨慎的不把父对象指针传入构造函数(即不给该静态对象制定父对象),根据Qt的某些机制,还是有可能重定义父对象的,而这恰恰是最致命的,最容易疏忽的. 所以说,在QT中使用Singleton模式,确切说是"静态对象",一定要小心,特别是那些继承于QWidget的嵌套窗口类,就算…
当我们用Qt Designer设计界面时,有时会面临这样一个问题:需要在窗口指定位置放置组件,并且当窗口位置大小改变时,该组件相对其父对象的位置是不变的,如下面两幅图所示 ,首先看上面这幅图,注意button的位置,我们想让button一直停留在该位置,我们刚开始做的可能是在designer中将button直接拖到该位置,编译运行后正是我们想要的结果,但是当我们拖动窗口,使窗口尺寸变化后,发现button位置改变了,如下面那副图所示.发生这种情况的原因很简单,直接拖放button到界面中,不加任…
由于Qt本身实现的机制所限,我们在使用Qt制作某些软件程序的时候,会遇到各种各样这样那样的问题,而且很多是很难,或者根本找不到原因的,即使解决了问题,如果有人问你为什么,你只能回答--不知道. 今天我在这里列举的问题也是再编写Qt程序时,总是遇到的问题,问题普遍,而答案却不唯一,解释这一个问题的说法很多,往往只适合某一种情况,因为这个错误太笼统了,它就是-- “undefined reference to `vtable for”可能你看着很熟悉,似乎在c++程序中也遇到过这个问题,你说对了,有…
1.什么是ui?ui通常是用Qt 设计师设计出来的界面文件的后缀.通常情况下ui是一个指向这个界面类的指针.ui-> 一般就是用来访问这个界面类里面的控件.例如你的ui文件里有一个叫okButton的QPushButton.你就可以这样来访问这个按钮ui->okButton. setupUi(this)是由.ui文件生成的类的构造函数,这个函数的作用是对界面进行初始化, 它按照我们在Qt设计器里设计的样子把窗体画出来,把我们在Qt设计器里面定义的信号和槽建立起来. 也可以说,setupUi 是…