The triangulation of the cylinder with holes is similar to that of the sphere. Triangulation sphere with holes
But with different parameters. For the sphere this variant is also in progress.
Try it out https://hofk.de/main/threejs/Triangulation/TriangulationCylinderWithHoles.html
(UPDATE February 2020: Combination of shapes, see Inner Geometry (Triangulation) )
One variant is integrated in the addon THREEi.
Addon for triangulation of implicit surfaces/ forms with holes
Cylinder with holes and edge adaptation for other cylinders.
In order to allow the correct adjustment, d (rough side length of the triangles) must be specified. The radius is then d / Math.sin( Math.PI / (div4 * 4) ) / 2
const g = new THREE.BufferGeometry( );
const parameters = {
d: 0.052, // rough side length of the triangles
div4: 30, // division of the quarter circle
bottom: -1,
div4Btm: 30, // division bottom adaptation, (to quarter, >= div4)
phiBtm: 1.57, // rotation of adaptive-deformed circle (Bottom)
top: 1,
div4Top: 33, // division top adaptation, (to quarter, >= div4)
phiTop: -0.2, // rotation of adaptive-deformed circle (Top)
holes: [
// circular (deformed) hole, 3 elements: [ y, phi, div4Hole ], div4Hole <= div4
[ 0.3, 1.6, 12 ],
[ -0.4, 3.7, 14 ],
[ -0.1, -0.9, 18 ],
//points hole,: array of points y, phi, ... (last point is connected to first)
[ 0.15,0.45, 0.5,0.9, 0.8,0.6, 0.75,-0.2, 0.1,-0.15 ]
]
}
cylinderWithHoles( g, parameters );
edge adaptation:
These cylinders can then be used to realize inner geometry.
The sphere and the torus will soon be added to this.