cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
Archicad C++ API
About Archicad add-on development using the C++ API.

What's the best way to create DocumentFrom3D

xiaopeidou
Participant

I tried using ACAPI_Navigator_CloneProjectMapItemToViewMap() to clone an existing 3D view, but I keep getting APIERR_BADDATABASE (-2130313110).

As an alternative, I tried creating a DocumentFrom3D view directly with ACAPI_Database_NewDatabase(), which seems to work. I’m able to change most of the API_DocumentFrom3DType and API_DocumentFrom3DDefaults settings.

However, I’ve run into two issues:

  • The uncut surface won’t show its own surface colour.

  • The sun shadow does not appear (although the shadow contour does). I’ve also tried playing with the vectSunShadow setting, but it makes no difference.

It looks like there might be a bug with API_3DUncutSurfaceFillType, since I can’t set the 3D Document to API_3DDocumentMaterialColorShaded. Even after creating the DocumentFrom3D, if I switch the uncut surface to “show own surface colour” directly in Archicad, the colours still don’t display.

I’m confident this isn’t a graphics override or pen set issue, as I’ve checked that already.

1 REPLY 1
xiaopeidou
Participant

I think this might be a shouldUseUncutSurfaceFill bug. It only seems to work if I set it to true directly when creating the database with ACAPI_Database_NewDatabase(). When I tried setting it to true earlier using ACAPI_View_ChangeDocumentFrom3DDefaults(), it didn’t have any effect.