LDraw.org Discussion Forums

Full Version: 20455 - Hemisphere 9 x 4 x 7 (from Jurassic World)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am working on this part right now:

- Need to check the dimensions again as I think I measured them actually smaller than 9 studs.
- Refine the intersections and edges, as the part is transparent, they need to fit.


Wanted to have it done in LDPE, however its not starting... (need a reboot)
The first round part of the sphere I did with Pathtruder, however I wanted to try the CSG with LDPE to get a proper result.

I want to list the steps here, first of all the final result of the CSG operations:
I made the blind stud transparent to show the pocket that is there.

To start we need some Hi-Res spheres, i.e. 48 divisions of a circle, for the outer and inner surfaces.
0 !LPE CSG_ELLIPSOID OuterSphere  16 0 68 0 85 0 0 0 85 0 0 0 85
0 !LPE CSG_ELLIPSOID InnerSphere  16 0 68 0 82.50 0 0 0 82.50 0 0 0 82.50

Now we need the inner parts, which are all formed from cylinders. Those are the bases for the Axleholes and the blind stud as I call it for a lack of better name. I have decided not to use hi-res here so switch back to 16 sides:
0 !LPE CSG_CYLINDER  AxleHoleR  16 50 18 0 0 25 0 0 0 9 9 0 0
0 !LPE CSG_CYLINDER  AxleHoleL  16 50 118 0 0 25 0 0 0 9 9 0 0
0 !LPE CSG_CYLINDER  BlindStud  47 50 18 20 0 20 0 0 0 9 9 0 0

Now we need the 3mm wide hole for the bases and a slightly larger cylinder to get the pocket within the Blind Stud
0 !LPE CSG_CYLINDER  HoleR    16 50 18 0 0 25 0 0 0 4 4 0 0
0 !LPE CSG_CYLINDER  HoleL    16 50 118 0 0 25 0 0 0 4 4 0 0
0 !LPE CSG_CYLINDER  PocketR  16 55 18 20 0 25 0 0 0 5 5 0 0

The final parts are used to cut the bowl into shape:
0 !LPE CSG_CUBOID    Cube  16 90 68 0 90 0 0 0 90 0 0 0 90
0 !LPE CSG_CUBOID    l  16 90 98 0 90 0 0 0 90 0 0 0 90
0 !LPE CSG_CUBOID    m  16 90 38 0 90 0 0 0 90 0 0 0 90

All parts are now available and the construction starts!
The first step is to unite the inner parts and cut the pocket. I tried to cut the pocket in the end, but this did not form the bottom of the pocket, so I did it at this step as well:
0 !LPE CSG_UNION AxleHoleR AxleHoleL InnerParts
0 !LPE CSG_UNION InnerParts BlindStud InnerParts
0 !LPE CSG_DIFFERENCE InnerParts PocketR InnerParts

Second Step is to cut the inner parts with the shape of the Inner Sphere as they need to be attached to this surface:
0 !LPE CSG_INTERSECTION InnerParts InnerSphere InnerParts

As the inner parts are nearly done, I can do the bowl itself: First cut the sphere in half, the subtract the inner sphere
0 !LPE CSG_INTERSECTION OuterSphere Cube OuterSphereHalf
0 !LPE CSG_DIFFERENCE OuterSphereHalf InnerSphere BowlHalf

Next we put in the Inner Parts into the bowl:
0 // Add the Inner Parts
0 !LPE CSG_UNION BowlHalf InnerParts Bowl1
0 // “Drill” the holes, the Pocket needs to be done again
0 !LPE CSG_DIFFERENCE BowlHalf HoleR BowlHalf
0 !LPE CSG_DIFFERENCE BowlHalf HoleL BowlHalf
0 !LPE CSG_DIFFERENCE BowlHalf PocketR BowlHalf

Finally we need to cut off the unwanted parts and we get the final result before adding primitives.
0 // Cut off the Top and Bottom of the bowl

Kudos to Nils for this fine SW that made the generation of this central subpart very smooth!
Great tutorial! Do you still have intermediate dat files?
I really need to find time to play with LDPE!!!
I just noticed that the final inlineing of the entire CSG will give me a lot of T-Junctions. I mean rally a lot.

If I cut off the part first with the help of the cubes, the result looks very good as a DAT:

When I then subtract the inner sphere and convert it to DAT, a whole bunch of T-Junctions occur all over:
Looks like there is some tweaking necessary:

I can avoid a lot of those T-Junctions when I do the inner and outer surface as separate CSGs. However I have to edit the result, remove covering triangles etc. and then do the second CSG and finally merge them in a file.

I tried experimenting with the Epsilon value, but I got no better result.
Am I blind? I can't see t-junctions in your screenshots, but a lot of strange triangulation in the 2nd and 3rd picture. Undecided

You are right, in the picture I posted there are no T-junctions, however once you 'drill' a hole you get them. You can clean them up by joining the vertices, sometimes this function stops working, so open and close the file again.
The CSG is really nice, but I will do the shape now in a two step approach.


First I thought the wall is too thin, just 2,5 LDU but the strange tri-angles do not depend on the size of the inner sphere. When I do the complete sphere with CSG, I also get "shadows" of the intersection of the axle-hole with the inner sphere projected onto the outer sphere.
Ah ok, good to know, that my eyes are working correctly.
That is indeed a bad behavior what you found out. Anyway I have never used Nils' program until now.

The problem is not related to the epsilon value. I just have to improve the implementation of the resulting triangulation. This is not the easiest task, it will take some time Smile
Gerald Lasser Wrote:[...]
there are no T-junctions, however once you 'drill' a hole you get them. You can clean them up by joining the vertices, sometimes this function stops working, so open and close the file again.

This issue should be fixed with version 0.8.1 or newer.