Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3488080
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 18, 20262026-05-18T11:13:37+00:00 2026-05-18T11:13:37+00:00

I’m trying to create an interactive 3d representation of cells that are defined by

  • 0

I’m trying to create an interactive 3d representation of cells that are defined by the intersection of arbitrary surfaces. I’m having a hard time figuring out how to create a mesh from this (or is there something better than a mesh that I should be aiming for to represent 3d volumes?). Each surface s is given by an analytical expression for a plane, sphere, cylinder, cone, etc. as s = f(x,y,z) = 0, such as those here:

enter image description here

For each cell I have a list of surfaces and a +/- sense for each surface. With this it’s easy to determine if an x,y,z point lies inside the cell by plugging that point into the equation for each of the bounding surfaces, and if the result is + for all + surfaces and – for all – surfaces the point lies inside. Obviously if the result is zero for any surface then the point lies on that surface.

I can test thousands of grid points, noting for each cell those points that lie inside that cell and then using the outer-most of those points to create a mesh for that cell. However, I have thousands of cells and this simply wouldn’t be fast enough. Many cells are very small or low aspect ratio compared to others, so I would need a very fine grid of points if I was going to do it this way.

Can anyone suggest an efficient way of putting cells defined in this way into a static 3d model? Is there any sort of library that works with this kind of geometry specification that can build 3d meshes for me? Am I missing something obvious?

Thanks,
Nick

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-18T11:13:38+00:00Added an answer on May 18, 2026 at 11:13 am

    As a general problem, this is quite difficult: I think it’s basically a general nonlinear programming problem. If your boundaries are generated by arbitrary functions, there might be an arbitrary number of cells bounded by even one such function; without more information about the functions, I don’t think you can do better than checking grid points.

    If you know something about your function (e.g., plane, sphere, cylinder, and cone are all conics), you may be able to do better. In any case, you might want to start with a combinatorial approach; say, given any 3 boundaries, determine if there are any points where all three intersect.

    In any case, once you identify corners and edges of your cell, you can use a grid-based approach to build a display mesh — e.g., slice your surface with axis-aligned planes, to determine the vertices and triangles to send to your 3D graphics library of choice.


    Another idea: since you’re defining your surfaces by f(x,y,z)=0, you can start with a bunch of points, and numerically migrate them onto nearby surfaces with a Newton’s method step or something:

    point p = (x,y,z)
    scalar value = f(p)
    while abs(value) > epsilon:
      vector gradient = gradient_of_f(p)
      p -= gradient * (value / dot(gradient,gradient))
      value = f(p)
    

    Something similar should allow you to approximate edge and corner points. It might be harder to figure out how to connect these kinds of points into a mesh, though…

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

No related questions found

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.