[Done/Fixed] Loading multiple Scalar Fields with PLY files

To post any request/idea for new functionalities
Remi-C
Posts: 21
Joined: Sun Mar 23, 2014 4:18 pm

[Done/Fixed] Loading multiple Scalar Fields with PLY files

Post by Remi-C »

Hey,
another feature request :-)

For my excuse I have been silently using this software for 2 years.

It would be incredibly useful to change the ply loader in order to enable loading of multiple scalar field !

Another (cosmetic) cool change could be that when loading several file at a time (i.e when drag and dropping multiple PLY files),
the mapping of the attributes is kept and re-used,thus avoiding to always select the same stuff for every file.

Thanks,
Cheers,
Rémi-C
daniel
Site Admin
Posts: 7709
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Loading multiple Scalar Fields with PLY files

Post by daniel »

Indeed, there's no good reason to prevent the user from loading multiple SFs. I'll add this to the TODO list.

And about remembering the loading parameters, the best we can do is like what is done with LAS files: an "Apply all" button that remembers the current parameters for the current session (i.e. you would have to close and re-open CC to change them).

Daniel
Daniel, CloudCompare admin
Remi-C
Posts: 21
Joined: Sun Mar 23, 2014 4:18 pm

Re: Loading multiple Scalar Fields with PLY files

Post by Remi-C »

Great,
I could try so many cool stuff with multiple scalar field for ply files (my ply have about 20 scalar fields).
Currently I have to convert to ascii then painfully load.

The button apply to all would be perfect!

Thank you very much,

Cheers,
Rémi-C
daniel
Site Admin
Posts: 7709
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Loading multiple Scalar Fields with PLY files

Post by daniel »

Ok this is done (on the github trunk). That will be available in the next beta/official release.
Daniel, CloudCompare admin
Remi-C
Posts: 21
Joined: Sun Mar 23, 2014 4:18 pm

Re: Loading multiple Scalar Fields with PLY files

Post by Remi-C »

Wow,
that's a quick fix !
Thanks very much !

I can't wait to try it and do some 20 millions point cloud rendering with many scalar fields !

My colleagues are also grateful.

Cheers,
Rémi-C
Remi-C
Posts: 21
Joined: Sun Mar 23, 2014 4:18 pm

Re: Loading multiple Scalar Fields with PLY files

Post by Remi-C »

Hey,
I just tested the new import functionality with latest 2.5.4 release on windows.
Sadly it crashes cloud compare :-/

With the 2.5.4 I can load and display ascii and ply files,
but if I use a scalar field (or many), it crashes cc when loading the points.
Something to do with qt I guess.

I don't know how to help debugging this, if I load Visual Studio 2008 when the crash occurs, I don't have qt symbols.

If you want test data producing the crash it is here :https://github.com/Remi-C/Pointcloud_in ... data/riegl

Cheers,
Rémi-C
Remi-C
Posts: 21
Joined: Sun Mar 23, 2014 4:18 pm

Re: Loading multiple Scalar Fields with PLY files

Post by Remi-C »

Hey,
I compilled from github sources on ubuntu 12.04
Same problem.
The debugger said

"
Program received signal SIGSEGV, Segmentation fault.
0xb572b82f in ?? () from /lib/i386-linux-gnu/libc.so.6
(gdb) continue
"

Cheers,
Rémi-C
daniel
Site Admin
Posts: 7709
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Loading multiple Scalar Fields with PLY files

Post by daniel »

Oh, crap. What a nasty bug... It's fixed on the github trunk.

I guess we'll have to issue a 'beta' release asap :(

Daniel
Daniel, CloudCompare admin
daniel
Site Admin
Posts: 7709
Joined: Wed Oct 13, 2010 7:34 am
Location: Grenoble, France
Contact:

Re: Loading multiple Scalar Fields with PLY files

Post by daniel »

Ok, I've published the new 'v2.5.4.1' release on the project webpage.

The archive files have the same names so as to be 'silently' downloaded in place of the old ones.
Daniel, CloudCompare admin
Remi-C
Posts: 21
Joined: Sun Mar 23, 2014 4:18 pm

Re: Loading multiple Scalar Fields with PLY files

Post by Remi-C »

Cool !
On windows it works seamlessly B-)

On Ubuntu I don't know because latest changes on github make the code not compiling (Ubuntu 12.04, git to trunk, cmake, was compiling yesterday)
(/cloudcompare/libs/qCC_glWindow/ccRenderingTools.cpp: In static member function ‘static void ccRenderingTools::DrawColorRamp(const ccScalarField*, ccGLWindow*, int, int, float)’:
/cloudcompare/libs/qCC_glWindow/ccRenderingTools.cpp:234:14: error: expected unqualified-id before ‘(’ token
make[2]: *** [libs/qCC_glWindow/CMakeFiles/QCC_GL_LIB.dir/ccRenderingTools.cpp.o] Error 1
make[1]: *** [libs/qCC_glWindow/CMakeFiles/QCC_GL_LIB.dir/all] Error 2
make: *** [all] Error 2
)

I don't understand this error, the code seems very clean. Tried to simplify it with no success, doesn't seems either to be a character problem (line ending or fake space).

Cheers,
Rémi-C


for (std::set<double>::iterator it = keyValues.begin(); it != keyValues.end(); ++it)
{
if (!std::isfinite(*it)){

bool minusInf = (*it < 0);
keyValues.erase(it);
if (minusInf)
keyValues.insert(-std::numeric_limits<ScalarType>::max());
else
keyValues.insert(std::numeric_limits<ScalarType>::max());
it = keyValues.begin(); //restart the process (easier than trying to be intelligent here ;)
}
}
Post Reply