Solved

Objs aren't in the right position in b3dm


Badge

Firstly I combined my building objs by Aggregator, then I separated them by Deaggregator, finally to b3dm. I have coordinates of those building objs but All building overlapped in Cesium, How can i locate the buildings according to coordinates.

icon

Best answer by daveatsafe 11 May 2018, 19:01

View original

20 replies

Userlevel 2
Badge +17

Hi @safa833,

In order to use the CSV coordinates with the objects, you will need to merge the coordinate attributes onto the objects with a FeatureMerger transformer, then use an Offsetter transformer to apply the coordinates.

If you would like to share your workspace, I would be happy to modify it to show how to do this.

Badge

Hi @safa833,

In order to use the CSV coordinates with the objects, you will need to merge the coordinate attributes onto the objects with a FeatureMerger transformer, then use an Offsetter transformer to apply the coordinates.

If you would like to share your workspace, I would be happy to modify it to show how to do this.

I'll appreciate for your helping very much, Thanks.

 

Also I have a trouble related to coodinates system

 

Link: myproj.rar

 

 

Userlevel 2
Badge +17

Hi @safa833,

Please try the attached workspace, which merges the CSV and the OBJ with the FeatureMerger, then uses the LocalCoordinateSystemSetter to georeference the models.

obj2cesium3dtiles.fmw

Badge

Hi @safa833,

Please try the attached workspace, which merges the CSV and the OBJ with the FeatureMerger, then uses the LocalCoordinateSystemSetter to georeference the models.

obj2cesium3dtiles.fmw

First of all, I am much obliged for your helping

 

 

When I put to my project output of the workspace that you sent, Elevation problem appears:

 

 

After setting 3D Tiles Writer to LL84:

 

 

In this case I want to ask two questions

 

1. How Can I enter elevation value in csv file into each obj

 

2. Or How Can I provide objs to stick according to terrain elevation
Userlevel 2
Badge +17
First of all, I am much obliged for your helping

 

 

When I put to my project output of the workspace that you sent, Elevation problem appears:

 

 

After setting 3D Tiles Writer to LL84:

 

 

In this case I want to ask two questions

 

1. How Can I enter elevation value in csv file into each obj

 

2. Or How Can I provide objs to stick according to terrain elevation
Hi @safa833,

 

 

You can use an Offsetter transformer to move the models to the elevation supplied in the CSV.

 

 

However, Cesium automatically drapes the model to the ground elevation, so you want to set the bottom of the model to 0 elevation. I am attaching a workspace illustrating how to get the bottom of the model's elevation, then use an Offsetter to move this to 0.

 

 

obj2cesium3dtiles-2.fmw

 

Badge

Hi @safa833,

Please try the attached workspace, which merges the CSV and the OBJ with the FeatureMerger, then uses the LocalCoordinateSystemSetter to georeference the models.

obj2cesium3dtiles.fmw

Hi, @DaveAtSafe

 

 

Using Offsetter had come to my mind too. However, Nevertheless I thought that discussing is better. Thank you.

 

 

Finally, Another problem I come across is that texturing and transparancy.

 

Textures is not outside of objs, is inside of them and I can see inside buildings.

 

I carried out a set of regulations with AppearanceSetter but I could not obtain result I wanted.

 

 

 

Userlevel 2
Badge +17
Hi, @DaveAtSafe

 

 

Using Offsetter had come to my mind too. However, Nevertheless I thought that discussing is better. Thank you.

 

 

Finally, Another problem I come across is that texturing and transparancy.

 

Textures is not outside of objs, is inside of them and I can see inside buildings.

 

I carried out a set of regulations with AppearanceSetter but I could not obtain result I wanted.

 

 

 

Hi @safa833,

 

I added an Orientor to reverse the surface orientation, to fix the textures.

 

obj2cesium3dtiles-3.fmw

 

Badge
Hi @safa833,

 

I added an Orientor to reverse the surface orientation, to fix the textures.

 

obj2cesium3dtiles-3.fmw

 

Hi, @DaveAtSafe Thank you for sharing.

 

 

In order to troubleshoot transparancy issue, When I set alpha value of AppearanceSetter to 1.0, Textures disappear. How to fix this issue.

 

 

For Example:

 

 

Userlevel 2
Badge +17
Hi, @DaveAtSafe Thank you for sharing.

 

 

In order to troubleshoot transparancy issue, When I set alpha value of AppearanceSetter to 1.0, Textures disappear. How to fix this issue.

 

 

For Example:

 

 

Hi @safa833,

 

 

The AppearanceSetter will create a new appearance on the surface, removing the original.

 

 

To modify the original appearances, we must extract them from the surfaces, change the alpha value, then replace them.

 

 

FME stores appearances in a library. The SharedItemRetriever can be used to extract the texture images from that library. After modifying the Alpha, we can replace the texture images using the SharedItemAdder in update mode.

 

 

I am attaching an updated workspace to illustrate.

 

 

obj2cesium3dtiles-4.fmw

 

Badge
Hi @safa833,

 

I added an Orientor to reverse the surface orientation, to fix the textures.

 

obj2cesium3dtiles-3.fmw

 

Hi @DaveAtSafe

 

 

There is a GeometryFilter in the workspace. I don't understand completely what does it do. Can you explain it ?
Userlevel 2
Badge +17
Hi @DaveAtSafe

 

 

There is a GeometryFilter in the workspace. I don't understand completely what does it do. Can you explain it ?
Hi @safa833,

 

 

Sure. I send both the 3D objects and the texture rasters into the FeatureHolder, to make sure that nothing is written to the output file before the texture library is updated. However, we don't want to write the raster features to Cesium, just the 3D objects. So I use a GeometryFilter to filter out the rasters.

 

Badge
Hi @DaveAtSafe

 

 

There is a GeometryFilter in the workspace. I don't understand completely what does it do. Can you explain it ?
Hi @DaveAtSafe,

 

 

Thanks a lot Dave, you answered my questions patiently, Thanks a lot again.

 

Badge

Hi @DaveAtSafe,

There is an issue pertaining to dark of objs.

In your opinion, How Do I need to perform an alteration in the workspace?

1. Output of the workspace:

2. Output after converting each obj to glTF through https://github.com/AnalyticalGraphicsInc/obj2gltf

Badge

Hi @DaveAtSafe,

There is an issue pertaining to dark of objs.

In your opinion, How Do I need to perform an alteration in the workspace?

1. Output of the workspace:

2. Output after converting each obj to glTF through https://github.com/AnalyticalGraphicsInc/obj2gltf

It seems like resulting from pbrMetallicRoughness.
Badge

Hi @DaveAtSafe,

Obj reader doesn't support illum parameter in mtl file.

Output: OBJ Reader: Token Unsupported: 'illum' - Ignored

Which transformer do i need to use for it?

Userlevel 2
Badge +17

Hi @DaveAtSafe,

Obj reader doesn't support illum parameter in mtl file.

Output: OBJ Reader: Token Unsupported: 'illum' - Ignored

Which transformer do i need to use for it?

Hi @safa833,

 

I'm sorry, but FME does not currently support illumination models. I'm not sure they would be needed, since Cesium uses a sun based lighting model.

 

Badge

Hi @DaveAtSafe,

In order to increase performance of 3D Tiles, Textures of Objs need to be combined, I mean texture atlas.

For example :

How can the process be done in FME?

Thanks in advance

Userlevel 2
Badge +17

Hi @DaveAtSafe,

In order to increase performance of 3D Tiles, Textures of Objs need to be combined, I mean texture atlas.

For example :

How can the process be done in FME?

Thanks in advance

Hi @safa833,

 

 

I'm sorry, but creating a texture atlas is not presently something that can be done in FME. We are looking into adding this capability in the future, and I will notify you when it becomes available in beta.

 

Badge
Hi @safa833,

 

 

I'm sorry, but creating a texture atlas is not presently something that can be done in FME. We are looking into adding this capability in the future, and I will notify you when it becomes available in beta.

 

Thanks @DaveAtSafe,

 

I'm waiting for the feature impatiently
Badge
Hi @safa833,

 

 

I'm sorry, but creating a texture atlas is not presently something that can be done in FME. We are looking into adding this capability in the future, and I will notify you when it becomes available in beta.

 

Hi @DaveAtSafe,

 

 

Hopefully, I have tried Cesium 3D Tiles Writer in FME Desktop 2019.0 Beta build: 19133 for texture atlas but This capability hasn't yet added FME. When does it become available in FME? Thanks.

 

Reply