Solved

I have an OBJ file that I am converting to a Multipatch in an Esri FileGeodatabase. The process mostly works but the colored mesh in the georeferenced OBJ file appears as a white mesh, with no color, in ArcGIS Pro. How can I preserve the detailed co

  • 31 August 2022
  • 8 replies
  • 69 views

I have an OBJ file that I am converting to a Multipatch in an Esri FileGeodatabase. The process mostly works but the colored mesh in the georeferenced OBJ file appears as a white mesh, with no color, in ArcGIS Pro. How can I preserve the detailed colors?
icon

Best answer by virtualcitymatt 1 September 2022, 08:13

View original

8 replies

Userlevel 4
Badge +26

Is the obj textured with an image or does it have vertex colors? I don't think FME will support writing vertex colors to file grodatabase

It has vertex colors as exported from MeshLabs and read by CloudCompare. What would the suggested workflow be to get a true colored mesh into ArcGIS Pro? Here is what the source mesh looks like.

image

Userlevel 3
Badge +13

It has vertex colors as exported from MeshLabs and read by CloudCompare. What would the suggested workflow be to get a true colored mesh into ArcGIS Pro? Here is what the source mesh looks like.

image

Hello @rolandd​, have you considered writing to Esri's Indexed 3D Scene Layer? Any 3D geometry should be able to go to I3S: surfaces, mesh, solids. The writer should convert as needed. The QuickFacts of the FME Writer tells us that "Generic Color Support = No", but I think you can use a ColorAppearanceReplacer to replace color texture with appropriate image texture. Best, Kailin

Hello @rolandd​, have you considered writing to Esri's Indexed 3D Scene Layer? Any 3D geometry should be able to go to I3S: surfaces, mesh, solids. The writer should convert as needed. The QuickFacts of the FME Writer tells us that "Generic Color Support = No", but I think you can use a ColorAppearanceReplacer to replace color texture with appropriate image texture. Best, Kailin

Hi @kailinatsafe, thanks for the suggestion.. I tried and that but it didn't work. I3S file doesn't even get created. The issue seems to be that the colors aren't exposed in the OBJ conversion, but they need to be.

Userlevel 3
Badge +13

Hello @rolandd​, have you considered writing to Esri's Indexed 3D Scene Layer? Any 3D geometry should be able to go to I3S: surfaces, mesh, solids. The writer should convert as needed. The QuickFacts of the FME Writer tells us that "Generic Color Support = No", but I think you can use a ColorAppearanceReplacer to replace color texture with appropriate image texture. Best, Kailin

Hello @rolandd​, thank you for trying that! I decided to try also and I was able to produce a coloured I3S output in ArcPro. I used a coloured point cloud as my source dataset, opposed to an OBJ, so our workflows might differ slightly. Also, I ended up using an ImageRasterizer to generate an image texture, opposed to the ColorAppearanceReplacer.

 

If you're able to share a sample OBJ file, I wouldn't mind having a look! Let me know, Kailin.

Hello @rolandd​, have you considered writing to Esri's Indexed 3D Scene Layer? Any 3D geometry should be able to go to I3S: surfaces, mesh, solids. The writer should convert as needed. The QuickFacts of the FME Writer tells us that "Generic Color Support = No", but I think you can use a ColorAppearanceReplacer to replace color texture with appropriate image texture. Best, Kailin

Hi @kailinatsafe I think the issue with your approach is that the coloring will be from a 2D surface and to a pointcloud. My approach is using a colorized 3D mesh, where there can be multiple z value for each XY pair, and unique colors for the top and bottom of objects, along the z axis. I am familiar with your approach, of colorizing a pointcloud using a raster image, but I was trying to kick it up a notch by working with the 3D mesh. Thanks for your efforts.

How am I able to share with you directly?

Userlevel 3
Badge +13

Hello @rolandd​, have you considered writing to Esri's Indexed 3D Scene Layer? Any 3D geometry should be able to go to I3S: surfaces, mesh, solids. The writer should convert as needed. The QuickFacts of the FME Writer tells us that "Generic Color Support = No", but I think you can use a ColorAppearanceReplacer to replace color texture with appropriate image texture. Best, Kailin

Hello @rolandd​, hm.. thank you for reitrating, sorry for misunderstanding! Would you be able to upload a sample OBJ to Safe's FTP site? You can find uploading instructions within that article. If that is still unacceptable, please let me know! Please notify when/if the data is uploaded. Best, Kailin.

Userlevel 4
Badge +26

Here's some info on FME and vertex colors:

https://community.safe.com/s/question/0D74Q000009LkXESA0/do-we-have-an-idea-on-which-formats-support-mesh-vertex-colors

 

Conclusion is that only OBJ supports it at the moment - Are there any settings i mesh-lab to export a texture atlas or something? At the moment that's really the only option with FME

Reply