Forum Replies Created
-
AuthorPosts
-
Wendy María ArangoBlocked
Hi there! Happy new year! Thanks Binesh and Hugo for your replies.
I’m not completely sure what happened, it was neither because of Clang nor because of Boost.
I had to add this line to
BaseClass.cpp
#include <cxxabi.h>
And then, everything just got fine.
I hope this can be helpful for anyone else who faces this problem…
¡Muchas gracias! Thanks a lot 🙂
1 March 2018 at 14:06 in reply to: Problem while opening the sensable example- SOFA crashes while opening example #10581Wendy María ArangoBlockedHey there,
Carlos and I are trying to configure Phantom.
It was a long way until we could finally made PHANToMTest work.It’s not completely calibrated but it doesn’t fail the test itself. When we load it in the scene, it just doesn’t work.
[INFO] [PluginManager] Loaded plugin: /home/labrv/Documents/SimDesign_SOFA/build/v17.06/lib/libGeomagic.so [NewOmni] Failed to initialize the device called Default PHANToM
We’d be thankful if you tell us any hint or so.
Thanks a lot.
Wendy María ArangoBlockedHi Hugo, thought you had forgotten me xD
Anyhow, thanks for answering.It happens that the files were made in Autodesk Maya, so in Autodesk Fusion I had to turn them into a different file specification (stl) so I could make some changes and, after all that, I exported them as obj files again.
Later, if you want, I can tell you the process. Maybe it can help somebody in the future.
BTW, I’ve got another question:
There’s this function in FixedConstraint called removeConstraint. How can I call it in a XML scene?Thanks again.
Wendy María ArangoBlockedHi Hugo… Where do I send the scene?
I still have that weird error. With some changes, this is what I’ve got.
[WARNING] [TriangularFEMForceField(FEM)] TopologyDataHandler SIZE MISMATCH in Data edgeInfo: 1 Edge ADDED starting from index 0 while vector size is 1974 [WARNING] [TriangularBendingSprings(FEM-Bend)] TopologyDataHandler SIZE MISMATCH in Data edgeInfo: 1 Edge ADDED starting from index 0 while vector size is 1974 *** Error in
./runSofa’: malloc(): memory corruption (fast): 0x00000000075f8910 ***
########## SIG 6 – Killed`
May I send you the scene and the .obj files to see if you can tell me what’s the error with it?
thank you!
Wendy María ArangoBlockedHey Hugo, I’m gonna try to explain myself as well as possible, OK?
I was a little bit confused but my boss already explained me.
There are two objects in the scene, right? One of them is a cyst and the other one is an ovary. What I have to do is simulate the cyst inside the ovary. The doctor that’s leading us need it for a prove.
Well, the thing’s that anyone has to be able to cut it, and that’s what we’re trying to do with the Phantom.
Besides, both have to be different objects, that way, if someone’s simulating and he/she stretches enough the cyst, it’s supposed to go out of the ovary, do I explain myself good enough?
That’s why I’m asking you for the constraints you have in SOFA, maybe one of them could be helpful. That’s what I meant when I said that perhaps you could “break it”, so to speak.
I don’t know if the explanation’s OK.
Thanks,
Wendy.
Wendy María ArangoBlockedHi Hugo,
While I was seeing the scene that you’ve got for CGAL Plugin, I realized there’s an .inr file. How do you create that file?
Besides, I have another question: what kind of constraints do you have in SOFA?
For example, I need a constraint that you can break, like a kind of spring, I don’t know if I make understand myself.Thanks for your help,
Wendy.
Wendy María ArangoBlockedHi!
Thanks a lot for your answer, again.Besides using the CGAL library, I found another solution:
What I did was modelling both objects in Fusion 360. That way, I ‘dug’ a hole in the biggest one, that’s in my case the tumor or cyst. In the hole, I put the smallest one, the ovary, and then I turned them into mesh and then I exported .obj files.
In the scene, SOFA takes the original position they were exported with so it puts them like if the ovary was inside the cyst.
This is a little example. It’s not finished yet, but it can help.
<?xml version="1.0" ?> <Node name="lroot" gravity="0 -9.81 0" dt="0.02"> <DefaultPipeline name="CollisionPipeline" verbose="0" /> <BruteForceDetection name="N2" /> <DefaultContactManager name="collision response" response="default" /> <DiscreteIntersection/> <Node name="Intern"> <!--<RequiredPlugin name="LeapMotion Driver" pluginName="LeapMotion" /> --> <EulerImplicitSolver name="cg_odesolver" /> <CGLinearSolver name="linear solver" iterations="25" tolerance="1e-09" threshold="1e-09" /> <MeshGmshLoader name="meshIntern" filename="./intern.msh" /> <!-- <MeshLoader name="meshLoader" filename="mesh/TetrasCreado.msh" /> --> <TetrahedronSetTopologyContainer name="topo" src="@meshIntern" /> <MechanicalObject name="dofs" src="@meshIntern" /> <!-- <TetrahedronSetTopologyContainer name="topo"/> <MechanicalObject name="dofs" /> --> <TetrahedronSetGeometryAlgorithms template="Vec3d" name="GeomAlgo" /> <DiagonalMass name="computed using mass density" massDensity="1" /> <TetrahedralCorotationalFEMForceField template="Vec3d" name="FEM" method="large" poissonRatio="0.3" youngModulus="3000" computeGlobalMatrix="0" /> <FixedConstraint name="FixedConstraint" indices="3 39 64" /> <!--<LeapMotionDriver name="leapMotionDriver" displayHand="true"/> --> <Node name="Visu" tags="Visual"> <OglModel name="VisualModel" fileMesh="./intern.obj" /> <BarycentricMapping name="visual mapping" input="@../dofs" output="@VisualModel" /> </Node> <Node name="Surf"> <MeshObjLoader name="loader" filename="./intern.obj" /> <Mesh src="@loader" /> <MechanicalObject src="@loader" name="CollisModel" /> <Triangle selfCollision="0" /> <Line selfCollision="0" /> <Point selfCollision="0" /> <BarycentricMapping input="@.." output="@." /> </Node> </Node> <Node name="Extern"> <!--<RequiredPlugin name="LeapMotion Driver" pluginName="LeapMotion" /> --> <EulerImplicitSolver name="cg_odesolver" /> <CGLinearSolver name="linear solver" iterations="25" tolerance="1e-09" threshold="1e-09" /> <MeshGmshLoader name="meshExtern" filename="./extern.msh" /> <!-- <MeshLoader name="meshLoader" filename="mesh/TetrasCreado.msh" /> --> <TetrahedronSetTopologyContainer name="topo" src="@meshExtern" /> <MechanicalObject name="dofs" src="@meshExtern" /> <!-- <TetrahedronSetTopologyContainer name="topo"/> <MechanicalObject name="dofs" /> --> <TetrahedronSetGeometryAlgorithms template="Vec3d" name="GeomAlgo" /> <DiagonalMass name="computed using mass density" massDensity="1" /> <TetrahedralCorotationalFEMForceField template="Vec3d" name="FEM" method="large" poissonRatio="0.3" youngModulus="3000" computeGlobalMatrix="0" /> <FixedConstraint name="FixedConstraint" indices="3 39 64" /> <!--<LeapMotionDriver name="leapMotionDriver" displayHand="true"/> --> <Node name="Visu" tags="Visual"> <OglModel name="VisualModel" fileMesh="./extern.obj" /> <BarycentricMapping name="visual mapping" input="@../dofs" output="@VisualModel" /> </Node> <Node name="Surf"> <MeshObjLoader name="loader" filename="./extern.obj" /> <Mesh src="@loader" /> <MechanicalObject src="@loader" name="CollisModel" /> <Triangle selfCollision="0" /> <Line selfCollision="0" /> <Point selfCollision="0" /> <BarycentricMapping input="@.." output="@." /> </Node> </Node> </Node>
I’m not sure how to give you the .obj files and .msh files here in the forum… But, if anyone needs it to see how it works, they can write me and I’ll send them.
Thanks a lot 🙂Wendy María ArangoBlockedHi! Thanks a lot for replying.
What I meant is, what do I have to do to put the tumor inside the ovary? The thing is: the ‘ball’ (.obj) I created for the ovary is bigger than the one I created for the tumor.
In the scene, what I have to do is like ‘chain them’.
<?xml version="1.0" ?> <Node name="lroot" gravity="0 -9.81 0" dt="0.02"> <DefaultPipeline name="CollisionPipeline" verbose="0" /> <BruteForceDetection name="N2" /> <DefaultContactManager name="collision response" response="default" /> <DiscreteIntersection/> <Node name="Ovary"> <RequiredPlugin name="LeapMotion Driver" pluginName="LeapMotion" /> <EulerImplicitSolver name="cg_odesolver" /> <CGLinearSolver name="linear solver" iterations="25" tolerance="1e-09" threshold="1e-09" /> <MeshGmshLoader name="meshLoader" filename="./ovary_mesh.msh" /> <!-- <MeshLoader name="meshLoader" filename="mesh/TetrasCreado.msh" /> --> <TetrahedronSetTopologyContainer name="topo" src="@meshLoader" /> <MechanicalObject name="dofs" src="@meshLoader" /> <!-- <TetrahedronSetTopologyContainer name="topo"/> <MechanicalObject name="dofs" /> --> <TetrahedronSetGeometryAlgorithms template="Vec3d" name="GeomAlgo" /> <DiagonalMass name="computed using mass density" massDensity="1" /> <TetrahedralCorotationalFEMForceField template="Vec3d" name="FEM" method="large" poissonRatio="0.3" youngModulus="3000" computeGlobalMatrix="0" /> <FixedConstraint name="FixedConstraint" indices="3 39 64" /> <LeapMotionDriver name="leapMotionDriver" displayHand="true"/> <Node name="Visu" tags="Visual"> <OglModel name="VisualModel" fileMesh="./ovario_externo.obj" /> <blockquote>--- Here maybe it'd go the tumor, that's what I don't know ---</blockquote> <BarycentricMapping name="visual mapping" input="@../dofs" output="@VisualModel" /> </Node> <Node name="Surf"> <MeshObjLoader name="loader" filename="./ovario_externo.obj" /> <Mesh src="@loader" /> <MechanicalObject src="@loader" name="CollisModel" /> <Triangle selfCollision="0" /> <Line selfCollision="0" /> <Point selfCollision="0" /> <BarycentricMapping input="@.." output="@." /> </Node> </Node> </Node>
It’s like if the big one contained the small one…
Is it enough clear?Wendy María ArangoBlockedHi Guillaume,
What I meant is: how do I create a scene?
I mean, while creating, for example, a liver, what do I have to add in the scene to use LeapMotion when I run the executable?
Thanks a lot.
Wendy María ArangoBlockedHi Hugo.
I’d like to know how to make wome proofs after compiling.
It already compiled, thanks for your help.
Now, I want to know if it’s working.
Could you tell me, please, how to prove it? Thanks again.
Wendy María ArangoBlockedI already did it, but it doesn’t seem to work.
Error C1083 Cannot open include file: 'SofaBaseVisual/VisualTransform.h': No such file or directory LeapMotion C:\Users\LabRV\Documents\GitHub\sofa\v16.12\src\applications\plugins\LeapMotion\src\LeapMotionDriver.cpp 27
Error C2065 'M_PI': undeclared identifier (compiling source file C:\Users\LabRV\Documents\GitHub\sofa\v16.12\src\applications\plugins\Sensable\NewOmniDriver.cpp) Sensable C:\Users\LabRV\Documents\GitHub\sofa\v16.12\src\SofaKernel\modules\SofaBaseVisual\BaseCamera.h 172
These are the errors it throws.
I’ve already installed Leap Motion SDK and all Sensable stuff https://www.sofa-framework.org/community/doc/using-sofa/optional-features/haptics/sensable/
I still don’t know what’s going on. And I think I don’t have to change the source code at all. Maybe it’s a problem when I build the project with CMake, but I don’t get which one it is.
Wendy María ArangoBlockedYes, there’s no problem.
The platform was throwing some errors and I had to change it a little bit. But it’s OK.Thanks a lot.
Wendy María ArangoBlockedHi.
I’d like to know where I can get this
-
LEAP_INCLUDE_DIR=path/to/LeapSDK/include
LEAP_LIBRARY=path/to/LeapSDK/lib/x64/Leap.libI’m trying to add two Plugins: LeapMotion and Sensable.
Sensable’s done, but Leap’s still giving me some troubles.
Install prefix: C:/Users/LabRV/Documents/GitHub/sofa/v16.12/anotherOne/install
Boost version: 1.60.0
Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE)
Boost version: 1.60.0
Found the following Boost libraries:
system
filesystem
locale
thread
date_time
chrono
atomic
SofaSparseSolver: metis was not found, SparseLDLSolver won’t be built
SofaSparseSolver: csparse was found, SparseLUSolver and SparseCholeskySolver will be built
QGLViewer: Using Qt5
SofaGUIQt: Using Qt5
SofaTest: optional dependency SofaPython NOT found, Python_test won’t be built
Adding Plugin Haption
Adding Plugin Sensable
Adding Plugin SensableEmulation
Adding Plugin LeapMotion
Checking for Leap
CMake Error at SofaKernel/cmake/Modules/FindPackageHandleStandardArgs.cmake:97 (message):
Could NOT find Leap (missing: LEAP_LIBRARY LEAP_INCLUDE_DIR)
Call Stack (most recent call first):
SofaKernel/cmake/Modules/FindPackageHandleStandardArgs.cmake:291 (_FPHSA_FAILURE_MESSAGE)
applications/plugins/LeapMotion/cmake/FindLeap.cmake:78 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
applications/plugins/LeapMotion/CMakeLists.txt:14 (find_package)Configuring incomplete, errors occurred!
See also “C:/Users/LabRV/Documents/GitHub/sofa/v16.12/anotherOne/CMakeFiles/CMakeOutput.log”.
See also “C:/Users/LabRV/Documents/GitHub/sofa/v16.12/anotherOne/CMakeFiles/CMakeError.log”. -
AuthorPosts