GithubHelp home page GithubHelp logo

avaxman / libhedra Goto Github PK

View Code? Open in Web Editor NEW
60.0 10.0 11.0 5.67 MB

A library providing functionality for the geometric processing of polygonal(non-triangular) meshes.

C++ 88.66% CMake 3.09% HTML 1.43% Shell 3.02% MATLAB 0.46% Ruby 0.05% CSS 1.39% C 0.02% Python 1.88%
polyhedral-meshes polygonal-meshes geometry-processing meshes polyhedra

libhedra's Introduction

libhedra - Polygonal and Polyhedral Mesh Processing

libhedra is a C++ library for creating, manipulating and visualizing polygonal (non-triangular) and polyhedral (with flat faces) meshes. See (website)[https://avaxman.github.io/libhedra] for more details.

libhedra's People

Contributors

avaxman avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

libhedra's Issues

"modeling_affine" compiling and segfault issues

When I first tried to compile the affine modelling example under Manjaro Linux, I ran into another issue that seemed to be a typo, where line 57 seems to be missing the "extend" argument:
"hedra::point_spheres(bc, sphereRadius, sphereGreens, 10, false, sphereV, sphereT, sphereTC);"
After adding that argument, the compiler completes successfully. However the moment I press any mouse button aside from the left, the program crashes with this:

Program received signal SIGSEGV, Segmentation fault.
0x000055555585f613 in void Eigen::DenseCoeffsBase<Eigen::Matrix<double, 1, 3, 1, 1, 3>, 1>::copyCoeff<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> >(long, Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> > const&) ()

GDB's backtrace shows this:

0x000055555585f613 in void Eigen::DenseCoeffsBase<Eigen::Matrix<double, 1, 3, 1, 1, 3>, 1>::copyCoeff<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> >(long, Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> > const&) ()
(gdb) bt
#0 0x000055555585f613 in void Eigen::DenseCoeffsBase<Eigen::Matrix<double, 1, 3, 1, 1, 3>, 1>::copyCoeff<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> >(long, Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> > const&) ()
#1 0x0000555555852f92 in Eigen::internal::assign_LinearTraversal_CompleteUnrolling<Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const>, 0, 3>::run(Eigen::Matrix<double, 1, 3, 1, 1, 3>&, Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> const&) ()
#2 0x000055555584547d in Eigen::internal::assign_impl<Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const>, 1, 2, 0>::run(Eigen::Matrix<double, 1, 3, 1, 1, 3>&, Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> const&) ()
#3 0x0000555555834fb6 in Eigen::Matrix<double, 1, 3, 1, 1, 3>& Eigen::DenseBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> >::lazyAssign<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> >(Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> > const&) ()
#4 0x00005555558257a9 in Eigen::Matrix<double, 1, 3, 1, 1, 3>& Eigen::PlainObjectBase<Eigen::Matrix<double, 1, 3, 1, 1, 3> >::lazyAssign<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> >(Eigen::DenseBase<Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3> const> > const&) ()
#5 0x0000555555816467 in Eigen::internal::assign_selector<Eigen::Matrix<double, 1, 3, 1, 1, 3>, Eigen::CwiseUnaryOp<Eigen::internal::scalar_cast_op<float, double>, Eigen::Matrix<float, 1, 3, 1, 1, 3>

...This happens whether or not I use true or false on that second boolean, so this might be unrelated to the compiler error...

dual_mesh may crash

In certain situations dual_mesh crashes and the issues seems to be related to wrong entries in sd.starVertices. Example meshes were sent using different channels (copy righted). The used subdivision was hedra::LINEAR_SUBDIVISION.

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.