青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

eryar

PipeCAD - Plant Piping Design Software.
PlantAssistant - Translate AVEVA RVM/SP3D VUE to glTF, STEP, etc.
posts - 606, comments - 590, trackbacks - 0, articles - 0

A Simple OpenCASCADE Qt Demo-occQt

Posted on 2014-12-29 23:52 eryar 閱讀(8288) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

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. OpenCASCADE6.8.0, Qt5.4

1. Introduction

OpenCASCADE is a software development platform providing services for 3D surface and solid modeling, CAD data exchange, and visualization. Most of OCCT functionality is avaiable in the form of C++ libraries. OCCT can be best applied in development of software dealing with 3D modeling(CAD), manufacturing/measuring(CAM) or numerical simulation(CAE). 

OpenCASCADE Technology is free software; you can redistribute it and or modify it under the terms of the GNU Lesser General Public License(LGPL) version 2.1, with additional exception. You can get the OpenCASCADE from here: http://www.opencascade.org/

wps_clip_image-20312

Figure 1.1 OpenCASCADE6.8.0 Release Notes

Qt is a cross-platform application framework that is widely used for developing application software with graphical user interface(GUI). Qt is free and open source software distributed under the terms of the GNU Lesser General Public License. 

Qt Services

Qt is a powerful framework that lets you create stunning user interfaces with amazing performance. We want to help you to achieve optimal results by using Qt building blocks in the best possible way, which is why we offer an extensive range of Qt advisory services. 

Code Less, Create More. Easily create connected devices, UIs and applications that run anywhere on any device. 

wps_clip_image-25919

Figure 1.2 Qt Ads

You can develop your program in the following manner:

wps_clip_image-19414

Figure 1.3 A application based on Qt and OpenCASCADE

You can use Qt for the GUI development, and for data management such as restore data from file or undo/redo support, you can choose OCAF, and for modeling algorithms, you can use OpenCASCADE. 

You can also use the Model/View/Controller of Qt to manage the data and undo/redo mechnism, to accelarate the developing.

OpenCASCADE have provided many samples to show its functions, but there are a lots codes, it is a little complicated for the beginner. I write a simple program to try OpenCASCADE in a straightforward way. I hope the demo can help you to understand the usage of OpenCASCADE.

The demo is based on OpenCASCADE6.8.0 and Qt5.4. Because of there are many bug fixes in OpenCASCADE new version6.8.0, especially the visualization module. So I update the code for the previous demo Qt with OpenCASCADE and add something new: 

http://m.shnenglu.com/eryar/archive/2013/08/18/202617.aspx

2.View Operations

In occQt there are three operations to manipulate the view: pan, zoom and rotate, the following picture is the main window of occQt:

wps_clip_image-12250

Figure 2.1 occQt GUI

The options is for the middle button of the mouse, you can dragged the middle button of the mouse to pan, zoom and rotate the view. And the mouse left button is used for the pick and multi-select operation, single click you can pick a shape; drag left button will select all the shapes in the rectangle.

wps_clip_image-19038

Figure 2.2 Click mouse left button to pick

wps_clip_image-15699

Figure 2.3 Drag mouse left button to multi-select

The selected shapes will be hilighted, but now do not provide any operations for the selected shapes.

And also provide the Reset and Fit All function for the view:

wps_clip_image-6756

Figure 2.4 Reset and Fit all for the view

3.Make Primitives

OpenCASCADE provides simple API for the construction of primitives, such as box, cone, sphere, cylinder, and torus, .etc. You can make a primitive by a simple class in OpenCASCADE, the sample code as follows:

TopoDS_Shape aTopoBox = BRepPrimAPI_MakeBox(3.04.05.0);
TopoDS_Shape aTopoCone 
= BRepPrimAPI_MakeCone(3.00.05.0);
TopoDS_Shape aTopoSphere 
= BRepPrimAPI_MakeSphere(3.0);
TopoDS_Shape aTopoCylinder 
= BRepPrimAPI_MakeCylinder(3.05.0);
TopoDS_Shape aTopoTorus 
= BRepPrimAPI_MakeTorus(3.01.0);

And the shapes in the viewer is in the following picture:

wps_clip_image-10519

Figure 3.1 Primitives in occQt

4.Modeling Algorithms

Modeling algorithms is the outstanding advantage of OpenCASCADE. But in occQt just give a example for the usage, you can check the documents and OpenCASCADE reference manual to have a look. The modeling algorithms in the occQt are:

v Fillet;

v Chamfer; 

v Extrude;

v Revol;

v loft.

wps_clip_image-29758

Figure 4.1 Modeling Algorithms in occQt

5.Boolean Operations

Boolean operations are used to create new shapes from the combinations of two shapes,

wps_clip_image-12858

The class to perform this is simple to use, they are:

TopoDS_Shape aFusedShape = BRepAlgoAPI_Fuse(S1, S2);
TopoDS_Shape aCommonShape 
= BRepAlgoAPI_Common(S1, S2);
TopoDS_Shape aCuttedShape 
= BRepAlgoAPI_Cut(S1, S2);

You can try this in occQt:

wps_clip_image-19041

Figure 5.1 Boolean operations in occQt

6. Conclusion

From the simple code demo, I hope it will help you to understand OpenCASCADE easily. Thanks for OpenCASCADE and Qt the amazing work. 

I put the code to GitHub: https://github.com/eryar/occQt/. You can download and have a try, then you can feedback or track the modification of occQt.

Enjoy!

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品h在线观看| 91久久久亚洲精品| 国产精品久久久久久久久久三级| 欧美福利一区| 国产一区二区在线观看免费播放 | 一区二区三区黄色| 欧美体内she精视频在线观看| 99国产一区| 一区二区久久久久| 一本综合久久| 亚洲制服少妇| 亚洲免费伊人电影在线观看av| 亚洲一级黄色| 性感少妇一区| 久久中文字幕一区| 欧美在线日韩在线| 欧美一区在线直播| 久久在线免费观看视频| 欧美高清在线| 亚洲美女免费精品视频在线观看| 在线亚洲电影| 香蕉视频成人在线观看| 久久不射网站| 国产精品永久入口久久久| 国产一区二区三区久久精品| 国产日韩精品一区二区三区在线| 国产一区二区三区av电影| 在线精品国产成人综合| 亚洲啪啪91| 亚洲一级二级在线| 久久久久久999| 亚洲国产福利在线| 亚洲国产乱码最新视频| 中文国产成人精品| 欧美伊人精品成人久久综合97 | 亚洲日本欧美天堂| 91久久久亚洲精品| 亚洲无线视频| 久久精品论坛| 91久久精品国产91性色tv| 亚洲一区在线播放| 毛片一区二区三区| 国产精品久久二区| 激情成人av| 亚洲婷婷综合色高清在线| 久久久久99| 亚洲人成网站999久久久综合| 亚洲一区免费在线观看| 在线观看视频一区二区| 亚洲午夜在线| 欧美一区二区视频97| 蜜臀91精品一区二区三区| 99在线视频精品| 久久精品一区二区三区不卡牛牛| 欧美精品www在线观看| 国产午夜亚洲精品不卡| 一级成人国产| 欧美a一区二区| 亚洲一区二区三区在线| 欧美成年视频| 国产视频久久久久| 中文日韩欧美| 免费在线欧美黄色| 午夜影视日本亚洲欧洲精品| 欧美极品欧美精品欧美视频| 国产亚洲激情| 亚洲欧美国产高清| 亚洲国内欧美| 久热re这里精品视频在线6| 国产精品久久久久久户外露出| 亚洲第一福利视频| 久久aⅴ国产欧美74aaa| 在线一区二区三区四区| 欧美国产另类| 亚洲黄色尤物视频| 久久免费午夜影院| 午夜精品久久| 亚洲精品日韩在线| 欧美自拍偷拍| 亚洲一区免费看| 欧美91视频| 一区在线免费观看| 久久久久久久精| 亚洲一区久久久| 国产精品theporn88| 99国产一区| 亚洲激情综合| 欧美一区二区在线| 亚洲精品视频在线播放| 久久精品国产久精国产爱| 亚洲视频中文字幕| 国产精品国产三级国产普通话三级 | 国产精品videosex极品| 亚洲免费成人av| 亚洲国产精品ⅴa在线观看| 久久乐国产精品| 影音先锋日韩精品| 久久综合999| 欧美自拍偷拍午夜视频| 国产老肥熟一区二区三区| 欧美一区二区黄色| 午夜精品久久久久久久99樱桃| 国产精品欧美日韩一区二区| 亚洲欧美一区二区原创| 亚洲淫性视频| 国产欧美日韩综合一区在线观看| 欧美中文在线视频| 午夜视频久久久| 好吊色欧美一区二区三区视频| 久久国产精品一区二区| 欧美一级久久| 一区二区三区在线看| 免费在线一区二区| 欧美1区2区视频| 一本久久综合亚洲鲁鲁| 一二三区精品| 国产亚洲一区二区在线观看 | 99香蕉国产精品偷在线观看| 欧美特黄一区| 亚洲午夜久久久久久久久电影院| 制服丝袜亚洲播放| 国产拍揄自揄精品视频麻豆| 久久婷婷国产综合尤物精品 | 黄色日韩精品| 亚洲成人直播| 欧美三级午夜理伦三级中文幕| 亚洲欧美国产日韩中文字幕| 西西裸体人体做爰大胆久久久| 尤物99国产成人精品视频| 亚洲国产经典视频| 欧美三级在线| 久久网站热最新地址| 久久婷婷久久| 亚洲视频一二区| 亚洲一区二区欧美日韩| 激情欧美一区| 亚洲美女免费精品视频在线观看| 国产日韩欧美| 亚洲国产成人在线播放| 国产精品亚洲美女av网站| 欧美日本精品在线| 国产日韩欧美一区在线| 欧美国产免费| 国产精品女主播一区二区三区| 久久在线91| 欧美午夜影院| 久久综合图片| 国产精品成人一区二区三区吃奶| 久久嫩草精品久久久精品一| 欧美久色视频| 久久蜜桃香蕉精品一区二区三区| 欧美激情女人20p| 久久精品国产亚洲一区二区三区| 欧美大片在线影院| 久久九九免费| 欧美三级在线视频| 欧美成人激情视频免费观看| 国产精品国产三级国产专播精品人 | 欧美亚洲一区二区三区| 日韩视频一区二区三区在线播放免费观看 | 在线观看日韩av先锋影音电影院| 日韩一级免费| 亚洲电影在线播放| 亚洲综合国产| 一区二区三区精品国产| 久久久久久久性| 欧美一激情一区二区三区| 久久久久久久久久久久久女国产乱| 亚洲午夜久久久久久久久电影院| 蘑菇福利视频一区播放| 久久精品国产成人| 国产精品xvideos88| 亚洲国产欧美日韩精品| 国内一区二区在线视频观看| 亚洲午夜视频在线| 99国产精品国产精品久久| 久久久久国产精品www| 欧美一区二区三区视频免费播放 | 久久久久久亚洲综合影院红桃| 亚洲无限av看| 欧美日韩成人在线观看| 你懂的亚洲视频| 国内久久视频| 亚洲欧美久久久久一区二区三区| 99riav1国产精品视频| 久久久久久久精| 久久久亚洲国产天美传媒修理工| 国产精品午夜国产小视频| 艳女tv在线观看国产一区| 亚洲精品中文字幕在线观看| 麻豆精品精华液| 久久综合狠狠综合久久综合88| 国产午夜亚洲精品羞羞网站| 亚洲一区在线看| 亚洲免费在线播放| 欧美午夜一区二区三区免费大片 | 日韩手机在线导航| 欧美在线视频二区| 亚洲日产国产精品| 日韩天堂av|