xBimTeam / XbimGeometry

XbimGeometry contains the CLR interop libraries and the c++ engine used to compute the 3D geometry of models.
https://xbimteam.github.io/
Other
260 stars 131 forks source link

How do i get the coordinates (x,y,z) of each vertex? #19

Closed soniagagliardi closed 8 years ago

soniagagliardi commented 8 years ago

Hi,

I need to get, for each element of ifc model, the cartesian coordinates (x, y, z) of each vertex. I tried to use the BoundingBoxes but does not to my case.

Thanks

PierreAlexandreADAMSKI commented 8 years ago

hi,

i guess you're supposed to use context.ShapeGeometryMeshOf(XbimShapeGeometry); But this method seams not working yet.

If you look at windowsUI : Xbim.Presentation.MeshGeometry3DExtensions you'll found a set of read() methods which is similar to ShapeGeometryMeshOf(). Maybe you could use a similar code for now until the method works.

you'll get output like :

  • Normals Count = 24 System.Collections.Generic.IEnumerable {System.Collections.Generic.List}
  • Positions Count = 24 System.Collections.Generic.IEnumerable {System.Collections.Generic.List}
  • TriangleIndices Count = 36 System.Collections.Generic.IList {System.Collections.Generic.List}

which contains the cartesian coordinates of the corresponding vertex attributes

good luck

SteveLockley commented 8 years ago

You can work with geometry directly, rather than the mesh of the geometry. This gives you full access to the BREP of the shape, i.e. all vertices, edges, faces, shells and solids. Look in the geometry Test cases in the Xbim.Geometry engine to see how to do this.

ani-rudh commented 7 years ago

@PierreAlexandreADAMSKI

could you share the piece of code that you were successful with using Xbim.Presentation.MeshGeometry3DExtensions.read()?

I wasnt able to figure out what I have to pass for the "m3d" in public static void Read(this MeshGeometry3D m3D, byte[] mesh, XbimMatrix3D? transform = null)

Please, I need this to get my project going ahead.

Also, if you cloud suggest a way to get the triangulated mesh of from a polyhedronbinary , it will be great.

Many thanks in advance, Ani

PierreAlexandreADAMSKI commented 7 years ago

If I remember, MeshGeometry3D can be found in the context of your scene. Be careful with WindowsUI since some objects are covered to WindowsUI specific objects.

Then I remember playing with the read () functions to improve the cemetery as I needed it so since it was 6 months ago I'd have to check out more in details tomorrow for some memory refresh.

Try looking at the test cases they are very helpful to understand the code better.

For the polyhedron I think it's working just fine with the read method

Pierre-Alexandre Adamski

De : Anirudh Nandavar Envoyé : mercredi 15 mars à 00:04 Objet : Re: [xBimTeam/XbimGeometry] How do i get the coordinates (x,y,z) of each vertex? (#19) À : xBimTeam/XbimGeometry Cc : Pierre-Alexandre ADAMSKI, Mention

@https://github.com/PierreAlexandreADAMSKIPierreAlexandreADAMSKIhttps://github.com/PierreAlexandreADAMSKI

could you share the piece of code that you were successful with using Xbim.Presentation.MeshGeometry3DExtensions.read()?

I wasnt able to figure out what I have to pass for the "m3d" in public static void Read(this MeshGeometry3D m3D, byte[] mesh, XbimMatrix3D? transform = null)

Please, I need this to get my project going ahead.

Also, if you cloud suggest a way to get the triangulated mesh of from a polyhedronbinary , it will be great.

Many thanks in advance, Ani

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/xBimTeam/XbimGeometry/issues/19#issuecomment-286589261, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ANWnscYFp1X18NREeazMGOzS4UD_4nVcks5rlx0CgaJpZM4H4tDz.

ani-rudh commented 7 years ago

Pierre,

Thanks for the information. I'll wait to hear from you if you find any further information on this. Thank you again, Anirudh

On Mar 15, 2017 2:09 AM, "Pierre-Alexandre ADAMSKI" < notifications@github.com> wrote:

If I remember, MeshGeometry3D can be found in the context of your scene. Be careful with WindowsUI since some objects are covered to WindowsUI specific objects.

Then I remember playing with the read () functions to improve the cemetery as I needed it so since it was 6 months ago I'd have to check out more in details tomorrow for some memory refresh.

Try looking at the test cases they are very helpful to understand the code better.

For the polyhedron I think it's working just fine with the read method

Pierre-Alexandre Adamski

De : Anirudh Nandavar Envoyé : mercredi 15 mars à 00:04 Objet : Re: [xBimTeam/XbimGeometry] How do i get the coordinates (x,y,z) of each vertex? (#19) À : xBimTeam/XbimGeometry Cc : Pierre-Alexandre ADAMSKI, Mention

@https://github.com/PierreAlexandreADAMSKIPierreAlexandreADAMSKI<https:/ /github.com/PierreAlexandreADAMSKI>

could you share the piece of code that you were successful with using Xbim.Presentation.MeshGeometry3DExtensions.read()?

I wasnt able to figure out what I have to pass for the "m3d" in public static void Read(this MeshGeometry3D m3D, byte[] mesh, XbimMatrix3D? transform = null)

Please, I need this to get my project going ahead.

Also, if you cloud suggest a way to get the triangulated mesh of from a polyhedronbinary , it will be great.

Many thanks in advance, Ani

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/ xBimTeam/XbimGeometry/issues/19#issuecomment-286589261, or mute the thread< https://github.com/notifications/unsubscribe-auth/ ANWnscYFp1X18NREeazMGOzS4UD_4nVcks5rlx0CgaJpZM4H4tDz>.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/xBimTeam/XbimGeometry/issues/19#issuecomment-286610632, or mute the thread https://github.com/notifications/unsubscribe-auth/AOnwR0TnsWXYUxfRbVnHUZTCP42XEITGks5rlzpPgaJpZM4H4tDz .