GithubHelp home page GithubHelp logo

occt-hello's Introduction

About this page

Kirill Gavrilov Tartynskih is the Russian programmer. He's a native of Kirishi, and is currently employed as Principal Engineer.

Stereo-visualization has been a long time passion for him, but he was frustrated to find no Stereoscopic video players that met his needs. As a result he started to develop his own stereo-viewing software and sView is the result.

Open CASCADE Technology sView

Extra links

occt-hello's People

Contributors

gkv311 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

zenyuan

occt-hello's Issues

occt-ais-hello fails to compile in linux

I am trying to compile the occt-ais-hello example under ArchLinux. I don't know C++ (just very basic knowledge).

In order to compile it, I am doing:

$ mkdir build
$ cd build
$ cmake ../.
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Warning (dev) at /usr/share/cmake/Modules/FindOpenGL.cmake:315 (message):
  Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
  available.  Run "cmake --help-policy CMP0072" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  FindOpenGL found both a legacy GL library:

    OPENGL_gl_LIBRARY: /usr/lib/libGL.so

  and GLVND libraries for OpenGL and GLX:

    OPENGL_opengl_LIBRARY: /usr/lib/libOpenGL.so
    OPENGL_glx_LIBRARY: /usr/lib/libGLX.so

  OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
  compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
  CMakeLists.txt:12 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Using OpenCASCADE from "/usr"
-- OpenCASCADE_INCLUDE_DIR=/usr/include/opencascade
-- OpenCASCADE_LIBRARY_DIR=/usr/lib
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/build
$ LANG=C make
Consolidate compiler generated dependencies of target occt-ais-hello
[ 50%] Building CXX object CMakeFiles/occt-ais-hello.dir/OcctAisHello.cpp.o
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp:93:16: error: 'virtual void OcctAisHello::ProcessExpose()' marked 'override', but does not override
   93 |   virtual void ProcessExpose() override
      |                ^~~~~~~~~~~~~
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp:102:16: error: 'virtual void OcctAisHello::ProcessConfigure(bool)' marked 'override', but does not override
  102 |   virtual void ProcessConfigure (bool theIsResized) override
      |                ^~~~~~~~~~~~~~~~
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp:114:16: error: 'virtual void OcctAisHello::ProcessInput()' marked 'override', but does not override
  114 |   virtual void ProcessInput() override
      |                ^~~~~~~~~~~~
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp: In constructor 'OcctAisHello::OcctAisHello()':
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp:61:48: error: 'class Aspect_DisplayConnection' has no member named 'GetDisplayAspect'; did you mean 'GetDisplayName'?
   61 |     Display* anXDisplay = (Display* )aDisplay->GetDisplayAspect();
      |                                                ^~~~~~~~~~~~~~~~
      |                                                GetDisplayName
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp: In function 'int main()':
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp:171:47: error: 'class Aspect_DisplayConnection' has no member named 'GetDisplayAspect'; did you mean 'GetDisplayName'?
  171 |   Display* anXDisplay = (Display* )aDispConn->GetDisplayAspect();
      |                                               ^~~~~~~~~~~~~~~~
      |                                               GetDisplayName
/home/jose/Descargas/occt/occt-hello-master/occt-ais-hello/OcctAisHello.cpp:176:14: error: 'class Xw_Window' has no member named 'ProcessMessage'
  176 |     aWindow->ProcessMessage (aViewer, anXEvent);
      |              ^~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/occt-ais-hello.dir/build.make:76: CMakeFiles/occt-ais-hello.dir/OcctAisHello.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/occt-ais-hello.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

What am I doing wrong here?

[Question] Support related for Nim wrapper

I am trying to implement an OpenCascade wrapper for the Nim programming language. So far I managed to do significant progress (given that I develop as a hobby), but I am struggling with the visualization part.

As a first step I am trying to implement a bare minimum example. For that regard, occt-ais-hello is becoming very useful for me. By minimum, I mean just showing a solid even if it does not react to events.

Right now I only get a window, but it displays nothing inside it:

The Nim code I am using is here. It is quite understandable.

I couldn't create a constructor. So I create an object based on AIS_ViewController with the fields myContext and myView. Then I create the function getContextAndView, which I used in this line in order to populate the fields in aViewer instance.

I am on OCCT 8.5, by the way, under ArchLinux.

Nim creates C++ code. In this case, the C++ file created is this one.

I know it is difficult, but can you spot any significant miss that prevents the box from being shown?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.