Hi all,
First time here. I usually do visualizations so I tend to hang out over in the viz. section.. :)
How would I go about exporting our CAD design to a pointcloud for visualization purposes?
Thanks,Torben
p.s. I made a thread over at viz also, but no one is biting: http://communities.bentley.com/products/microstation/microstation_visualization/f/19754/t/104011. Sorry for double posting, I promise to link the two threads once I get a solution.
Hi Torben,
Unknown said:How would I go about exporting our CAD design to a pointcloud for visualization purposes?
May I ask why? ... Well, I read your explanation in your parallel post.
I am pretty sure there is no such functionality available in any Bentley product now and don't think it's something investigated for a future development.
From a technical point of it can be done. But definitely not using VBA, it requires native code and a use of MicroStationAPI and/or MDL API. Your idea about meshing is probably right, but the overall task is quite huge: Not all object can be meshed, so you have to find a proper approach for different types of elements, in the next step to calculate points coordinates, interpolate a proper color for the point (which is not a color of the applied material at these coordinates) and add hte point to the point cloud file.
There are things like lights, transparency etc. which I guess cannot be converted into point clouds.
With regards,
Jan
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point
Hi Jan,
Unknown said:May I ask why? ... Well, I read your explanation in your parallel post.
As you read, It's all about production speed.
I am into making informational movies on fairly large projects (100's of miles of infrastructure) and I get loads upon loads of finished 3d models from entreprenuers, entreprenerurs the designers, ready to use but fairly large. I also have access to highly detailed pointclouds of the surroundings.
Rendering Hollywood style movies in microStation is - to my knowledge - not feasible at all. No rendering using external farms, and a render time of minutes pr. frame. Even with a super fast mediocre render setup I have been unable to get below 10 seconds/frame.
With pointclouds I can export with around 1.2 seconds per frame! (Then I can do minutes of finished movie per workday! instead of seconds.) Also I suspect the pointcloud solution can be expanded to some sort of realtime visualization solution in the near future. I have not investigated this but I read about a Unity3D asset that handles about 65K points.. No al we need is a dynamic loading solution and voila, VR glory ahoy :)
Unknown said:Not all object can be meshed, so you have to find a proper approach for different types of elements, in the next step to calculate points coordinates, interpolate a proper color for the point (which is not a color of the applied material at these coordinates) and add hte point to the point cloud file..
I haven't seen a solid or shape that couldn't be turned into a mesh yet? Lines don't need to be mesh-ified obviously but they are really easy to turn into a pointcloud anyways. Just walk along and save a coordinate each 10cm or whatever.
Getting a color from a texture should be fairly easy assuming I use something like a cubemapping or top down projection and depend solely on world coordinates. Shadows I have no idea on achieving (unless I actually code a shoot a load of random rays from each found point away from the surface to see if anything is blocking the sun), but I guess I could sort of light the points using the mesh normal and a spherical global illumination environment bitmap. I don't need very detailed lights I need this to blend with an existing pointcloud showing exterior only.
I don't believe a working solution is that far off, IF someone decided to make it that is :)
System: Win7 64bit 16GB Ram - microStation V8i SS3 08.11.09.578. + PoinTools CONNECT. - Intel i7-4800MQ CPU@2.70GHz, 4 core / 8 Logic proc.
Hi All,
Lots of good information in your comments. It will take me some time to get through it all.
I'm closing this now, showing my first homemade pointcloud test.
15 x 15 pointclouds of a 300K points rgb cloud. The cloud of the car took 3 seconds to make using VBA.
Nice work, but as Felix james mentionned you may also use native Pointools export to point cloud tool : you can convert colored
models controling density of points .
Leftmost : point cloud rightmost part : original model
I decreased point cloud density to show it is actually a point cloud.
Any very interesting workflow.
Either 2 ways : meshes will move to point clouds or point clouds to Meshes.
When we see the incredible progress done in Meshing pointclouds, and latest Bentley acquisition, there is also hope in this direction...
Vincent RAULT [Bentley]
Hi Michael,
You were close to it ...
You may then specify density, and generate the .POD
Be patient if density is high/model big....
If you start from DGN model, a proposed and simple path from textured DGN model to OBJ is to use intermediate SKP file.So 1) would in this case be a 2 step process:
Help file is fired with F1 keystroke (PDF is in C:\Program Files (x86)\Bentley\Bentley Pointools V8i\)
Thanks Vincent :) I continued and added basic material and lights also, so I am way ahead of simple colors, and I can do it directly from microstation. I even made the routine faster and able to discard points based on normals. I guess I could export normals also, but I dont need those atm. I just got poinTools, and to be honest - besides having the best camera animation tool that Bentley posesses - it's a mess! But a what a lovely mess it is.. I look forward to exploiting it at work :)
A rediculously happy example of my basic directional lights and a basic cubic mapped material: