Partial Ellipsoid depression / impression into surface

Hi I want a Partial Ellipsoid depression / impression on the surface of something but am failing to find an easy way to do it…

Imagine having a 2d box say 150mm cubed and on the top face i want to press a Large Egg shape into it so the egg shape is set 10mm in from the edges at the largest point on the face but only 5mm deep into the box / face.

So i draw an ellipse on the top face which represents the 2d start of the depression and I want to have the depression say 5mm deep into the box.
I was hoping to use this 2d ellipse shape to control the size of the 3d ellipsoid shape required to get my desired effect. I know the section dimensions of the ellipsoid using my 2d ellipse and depth required into the box face.
however, i can’t draw an ellipsoid that connects to points like.

Does this make sense and is it possible to create an ellipsoid that connects through points/edges like this?

Hi Adrian,

There is an infinite number of ellipsoids you can use. Here are two examples:

The difference will be in the angle at which the ellipsoid meets the flat surface. Drawing an ellipsoid that meets it at 90° is easy, thereafter it’s trial and error. Here’s an approach (the following assumes that the surface into which you want to create the depression lies in the XY plane).

  1. Draw your ellipse on the surface. Place a point at the centre and another at one end of the long axis. Drop both points 5mm.
  2. Draw an ellipsoid centred on your ellipse centre, using the ellipse axes for the first two ellipsoid axes. Use the first dropped point for the third axis. This ellipsoid meets the surface at 90°.
  3. To get a shallower angle, _Scale the ellipsoid larger using the dropped centre point as the origin. In the Top view, project the dropped end point onto the ellipsoid. _Scale1D the ellipsoid, using the dropped end point as the origin, the projected point as the first reference point and the corresponding ellipse axis end as the second reference point. This gives you a new ellipsoid, meeting the surface at a different angle.

You can experiment with different _Scale settings to get the effect you want.

HTH
Jeremy

1 Like

Hi jeremy, thankyou for your reply. but i am not sure if that is what i am after.

Basically, i want an EGG shape to be boolean difference from the top surface of an object i.e the cube i mentioned for reference.

So i have a cube and an ellipse on top sketched which is the section i need to work precisely with, I also know how deep I need my ellipsoid into the surface. shown in this image:

So at the moment, I know the radius on both axes of My egg shape section as i can get this from the known data by drawing a 3-point arc between the quadrant points and the depth point

the following image shows it better, it shows the egg shape boolean cut away from the cube:

But this is inaccurate and i am unable to find an easy approach to create my egg shape precisely from the simple sketches unless i mess about a bit.

I guess i was looking for an ellipsoid section built from 5 points…

Like how the sphere from points works

The two arcs you drew are not elliptical. Therefore it is not possible to use an ellipsoid to get exactly that shape (if that’s what you want). You can get that shape by splitting the arcs with each other then using Sweep 1 with the ellipse as the rail and the 4 arcs as sections. A rail revolve using the ellipse as a rail and one of the half-arcs as a profile and a vertical axis from the center will also do it.

If you want a true ellipsoid, just snap to the quad points for the two half diameters in X and Y, then to your depth point for the last point.

1 Like

It appears from that image you want the vertical axis of your ellipsoid to be the same as the minor horizontal axis. Is that right? If so you are reducing the infinite choice of ellipsoids to one. That’s useful extra information.

A method to create the ellipsoid if the ellipsoid is a body of revolution with the axis of revolution being parallel to the major axis of the ellipse. (Essentially what Jeremmy said above.)

Create circle with 3 points: the ends of the minor axis of the input ellipse and the depth point. This circle will be the mid-section of the ellipsoid.

Create a point at the center of the circle. (Cen Osnap can be used.)

Copy the ellipse from the it’s center point to the center of the circle.

Scale the copied ellipse so that it’s minor axis is the diameter of the circle.

Revolve the scaled ellipse
or
Create an ellipsoid using the center of the circle as the center of the ellipsoid, the quaters of the scaled ellipse and the depth point as the ends of the ellipse axis.

1 Like

Hi Helvetosaur

no, they are not elliptical, but ultimatly It would be nice to just use the 5 points to create my egg shape using an Ellipsoid however there are no options to fit an ellipsoid or a section of one to points like this so it is not possible to snap to the quadrants, unless i missed somthing…

Hi David

thank you, this works although I was hoping to simply the creation. like with a creating sphere from points. But i guess this is not possible.
However as Jeremy said there are infinite ways of building simler results

A

It is possible with some math which includes solving a quadratic equation to solve for the ellipsoid from the five points and the assumption of it being a body of revolution. I assume it could be done in Grasshopper (I don’t use Grasshopper) or in a spreadsheet. But there is not a simple, direct method available in Rhino that I’m aware of.

Possibly the minimal drawing solution?

Draw ellipse on surface.
Draw circle on surface about ellipse centre, radius to minor ellipse quad.
Place point at desired low point.

Draw 3pt sphere using low point, left circle quad, right circle quad as three points.

Scale 1D the sphere, using the circle centre as the origin, the left circle quad as the first reference and the left ellipse quad as the second reference.

(And boolean.)

2 Likes

Probably not the right answer, but have you tried RailRevolve? That’s the tool I’d use if I were trying to create something similar to this.

2 Likes

Hi Peter

I think this is the simplest way based on using the curves.

A