2020-03-24 08:56 AM - last edited on 2021-09-15 12:36 PM by Noemi Balogh
Solved! Go to Solution.
2020-03-24 10:00 AM
2020-03-24 10:00 AM
2020-03-26 07:02 AM
Ralph wrote:Thanks.
Shared geometry is simply an optimisation of memory use. 3D primitives aren't stored in the ARCHICAD project file and are generated on demand. These are stored in memory in arrays of bodies, faces, edges and vertices. Rather than duplicate all this data for elements that have the same geometry (but perhaps in a different orientation) they will map onto the same array entries and provide a transformation matrix that positions the vertices correctly for that specific instance. So the same underlying geometry can be repeated in many different locations.
I hope that's reasonable clear. I suppose you could search for elements with the same geometry by comparing the indices in the geometry arrays. What are you trying to achieve?
2020-03-26 09:49 AM
jerry wrote:This is not something that a 3rd-party can influence or directly benefit from. It's an optimisation technique used by ARCHICAD's internal geometry engine.
If there are two similar windows, I want to share the geometry.
What are the geometry arrays?
2020-03-26 10:45 AM
Ralph wrote:Thanks.
jerry wrote:This is not something that a 3rd-party can influence or directly benefit from. It's an optimisation technique used by ARCHICAD's internal geometry engine.
If there are two similar windows, I want to share the geometry.
What are the geometry arrays?
When you retrieve information about a 3D body, face, edge etc you get indices into arrays of these types, i.e. C-style, raw memory. It's read-only and you don't get any say in how this data is structured or allocated.
2020-03-26 11:35 AM
jerry wrote:The API doesn't present 3D body geometry directly as triangles. In fact, it can contain complex polygons with holes and concavities.
.Except I retrieve information about a 3D body, face, edge etc. Whether I can directly get the triangulated indice of the face?
2020-03-27 07:27 AM
Ralph wrote:Thanks very much. I get it.
jerry wrote:The API doesn't present 3D body geometry directly as triangles. In fact, it can contain complex polygons with holes and concavities.
.Except I retrieve information about a 3D body, face, edge etc. Whether I can directly get the triangulated indice of the face?
The API includes a functionACAPI_3D_DecomposePgonthat breaks a 3D polygon into convex sub-polygons with no holes, but not necessarily triangles.