NPM package for bitbybit.dev CAD algorithms

Hey guys, I’m new to this forum, but I thought I’ll showcase this new NPM package that can help you build procedural 3D CAD applications.

Find the package here:

In essence this package allows you to generate meshes and groups of geometries produced by our 3D CAD algorithms, built on top of OpenCascade and JSCAD geometry kernels.

Check the demo video on youtube:

Here’s the live demo app using threejs that demonstrates few algorithms of the package

Here’s the source code of this app

Source code for the package:

Read more in this blog post

Use our full platform

4 Likes

Wow this looks really powerful. Gonna keep this in mind.

1 Like

Nice work!

One quick question i notice that in your examples there seem to have tangent edges showing on the fillets…

for example


I have struggled to get these, are you doing something cleaver, or is it the way the meshes have been drawn?

1 Like

Hey, if you’re using bitbybit.occt.fillets on your geometry and drawEdges is enabled in the drawing options, you should see those edges created. If you do not see any edges try to increase edgeWidth.

If you try to achieve that through native threejs outlines on basic meshes, imported from blender, for example, then I don’t think this will be possible as the angle threshold is not large enough for edge to be rendered in that place.

Those edge artefacts that you see in examples exist only because I’m working with OCCT (OpenCascade) algorithms. OCCT creates BREp geometries composed out of multiple faces, delimited by edges. Fillets create the rounding with an additional face, and its boundaries are thus visible. Edges are drawn separately as THREEJS LineSegments. I hope that answers your question. If not I’d need to see your code to better understand the problem you’re facing.

2 Likes

is it support for xr/vr? wanna make sandbox in xr/vr

Hi, in principle you can use full threejs with this library, it does not intervene with it, library only provides you with ways to generate Mesh geometries out of CAD algorithms. Because you can create XR apps with threejs, you should be able to do it when using this library. Please note that this library requires you to run webworker and you do need to think about performance implications. Headsets have limited compute power, and unless you use PCVR solutions you will need to think quite a lot about performance. For WebXR I only have some video examples that use @bitbybit-dev/babylonjs library, check them out below - the same principles should apply in threejs.

2 Likes

wow, great work dude.

1 Like