JSCAD User Group

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. bitbybit
    B
    • Profile
    • Following 0
    • Followers 0
    • Topics 2
    • Posts 5
    • Best 1
    • Controversial 0
    • Groups 0

    bitbybit

    @bitbybit

    1
    Reputation
    3
    Profile views
    5
    Posts
    0
    Followers
    0
    Following
    Joined Last Online
    Website bitbybit.dev Location Vilnius

    bitbybit Unfollow Follow

    Best posts made by bitbybit

    • bitbybit.dev platform updated to include latest JSCAD

      Hello JSCAD community,

      First of all thank you for making JSCAD a reality - it is an amazing achievement. I've been working for a while now on a creative CAD coding platform called Bit by bit developers. @z3dev some time ago on github discussions encouraged me to share what I'm building with you. Quite a bit later, but here I am.

      I think it is a good moment to share some details about the project with your community and have a Topic here where I could answer your questions if there would be any.

      Screenshot 2022-01-13 at 21.57.36.png

      Bitbybit.dev is web based, runs on a browser and already includes few CAD libraries like JSCAD, Opencascade.js and Verb. While still in active development I've recently updated my app to include latest JSCAD algorithms, made them run on a webworker and introduced some ok'ish caching mechanism that improves development experience throughout separate script runs. All algorithms of JSCAD run asynchronously on a worker, thus UI doesn't freeze while executing.

      Maybe the biggest difference from other editors is that I expose all CAD algorithms through two editors - Visual Programming editor based on Blockly and Monaco editor based on Typescript. Both of these wrap JSCAD through my custom type safe API. This may be interesting if there are people here who work in education. For beginners visual programming may be a bit easier to grasp at first, but even if you're a dev, sometimes it's just faster to sketch some scripts in blocks 😉 Also I normalised the API so that all algorithms exposed through visual blocks would also be available in Typescript.

      This allows API docs to look like this (need to update those docs a bit though 🙂
      https://docs.bitbybit.dev/classes/bitbybit_jscad_booleans.jscadbooleans.html

      I think this post is getting a bit too long so I'll just try to put few video/image examples and links to public project scripts that use JSCAD, where you could see for yourself how it looks like and maybe ask additional questions if interested.

      Screenshot 2022-01-13 at 22.34.35.png
      https://bitbybit.dev/app/bitbybit/YQ0LWrb6gsx3jZqmu5vC/PAkQe6rcHNjznDKbZZWT
      Variant of this script I 3d printed some time ago
      https://www.youtube.com/watch?v=NP72PSCBuRQ

      https://www.youtube.com/watch?v=iEHu3FDDhX8
      https://bitbybit.dev/app/bitbybit/aSs6JoXsSYjaKK2R3ls8/US4dgHRsjlHUJ20o6RbY

      Screenshot 2022-01-13 at 22.36.18.png
      https://bitbybit.dev/app/bitbybit/xjdP0waOx6LiDn2RBTDv/BZdB124eIjLx1xZ0oQtC

      It is possible to open and edit public projects anonymously, but you can also create accounts so that your scripts would persist in database. Platform is free if you only make public projects (some asset size limitations exist due to costs related to my cloud providers).

      Also a small side note, I still have to expose some APIs of JSCAD to have a complete coverage. Measurement code is still lacking, some other stuff as well.

      Also check out youtube channel

      I hope this will at least be worth your time reading the post.
      Have a good evening, it's getting late here 😉

      posted in General Discussions
      B
      bitbybit

    Latest posts made by bitbybit

    • RE: bitbybit.dev platform updated to include latest JSCAD

      @z3dev thanks. I think it makes most sense to use the tool to model objects that require parametric flexibility. I'd love to see basic configurable things modelled that people can adapt to their needs and export to STL for 3D printing using JSCAD or STEP when using OCCT. It's definitely not meant to be used as a Sculpting tool or a "hand drawing replacement" CAD.

      I'm trying to keep general purpose nature to the tool as much as possible. Normalising various libraries to a common system. For example it helps sometimes to just have Verb NURBS curve or a surface as a backbone to place JSCAD meshes onto. Normalisation is still a bit of a challenge and my main goal, you still see way too many Draw components for different kinds of geometries. Just yesterday I coded a draw anything component that will replace all those (still need to release that) 😉

      If you browse the examples you'll see that it's also possible to tie in some time based rules into the algorithms. In the future I'm hoping that it will become easier to code some robotic behaviours as I'm using BabylonJS to draw all the shapes and after CAD operations are applied BabylonJS can take over to do things like create GPU instances of meshes, animations, collision detection or apply realistic PBR materials and shadows.

      I am also in the process of tying OCCT WASM kernel into the tool, which has a lot of potential to allow for bigger CAD models to be created. There I'm still experimenting with performance and what is possible, current OCCT API is a bit limited, but I'm working on extension 😉 My poor laptop really needs an update to push those limits.

      posted in General Discussions
      B
      bitbybit
    • bitbybit.dev platform updated to include latest JSCAD

      Hello JSCAD community,

      First of all thank you for making JSCAD a reality - it is an amazing achievement. I've been working for a while now on a creative CAD coding platform called Bit by bit developers. @z3dev some time ago on github discussions encouraged me to share what I'm building with you. Quite a bit later, but here I am.

      I think it is a good moment to share some details about the project with your community and have a Topic here where I could answer your questions if there would be any.

      Screenshot 2022-01-13 at 21.57.36.png

      Bitbybit.dev is web based, runs on a browser and already includes few CAD libraries like JSCAD, Opencascade.js and Verb. While still in active development I've recently updated my app to include latest JSCAD algorithms, made them run on a webworker and introduced some ok'ish caching mechanism that improves development experience throughout separate script runs. All algorithms of JSCAD run asynchronously on a worker, thus UI doesn't freeze while executing.

      Maybe the biggest difference from other editors is that I expose all CAD algorithms through two editors - Visual Programming editor based on Blockly and Monaco editor based on Typescript. Both of these wrap JSCAD through my custom type safe API. This may be interesting if there are people here who work in education. For beginners visual programming may be a bit easier to grasp at first, but even if you're a dev, sometimes it's just faster to sketch some scripts in blocks 😉 Also I normalised the API so that all algorithms exposed through visual blocks would also be available in Typescript.

      This allows API docs to look like this (need to update those docs a bit though 🙂
      https://docs.bitbybit.dev/classes/bitbybit_jscad_booleans.jscadbooleans.html

      I think this post is getting a bit too long so I'll just try to put few video/image examples and links to public project scripts that use JSCAD, where you could see for yourself how it looks like and maybe ask additional questions if interested.

      Screenshot 2022-01-13 at 22.34.35.png
      https://bitbybit.dev/app/bitbybit/YQ0LWrb6gsx3jZqmu5vC/PAkQe6rcHNjznDKbZZWT
      Variant of this script I 3d printed some time ago
      https://www.youtube.com/watch?v=NP72PSCBuRQ

      https://www.youtube.com/watch?v=iEHu3FDDhX8
      https://bitbybit.dev/app/bitbybit/aSs6JoXsSYjaKK2R3ls8/US4dgHRsjlHUJ20o6RbY

      Screenshot 2022-01-13 at 22.36.18.png
      https://bitbybit.dev/app/bitbybit/xjdP0waOx6LiDn2RBTDv/BZdB124eIjLx1xZ0oQtC

      It is possible to open and edit public projects anonymously, but you can also create accounts so that your scripts would persist in database. Platform is free if you only make public projects (some asset size limitations exist due to costs related to my cloud providers).

      Also a small side note, I still have to expose some APIs of JSCAD to have a complete coverage. Measurement code is still lacking, some other stuff as well.

      Also check out youtube channel

      I hope this will at least be worth your time reading the post.
      Have a good evening, it's getting late here 😉

      posted in General Discussions
      B
      bitbybit
    • RE: Running code in workerthread

      @z3dev yeah, I went 'custom' way before I found JSCAD, I began by exposing VerbNurbs library first and implemented BabylonJS rendering 🙂 but JSCAD adds so much to the project that I'm super enthusiastic about it. Vue part sounds very interesting. While I'm not very familiar with Vue, I suppose by reactive you mean Rxjs kind of reactive? Will have to analyse your project in more detail, thanks!

      posted in Development Discussions
      B
      bitbybit
    • RE: Running code in workerthread

      @BarbourSmith thanks! Will check that out, this should be a great improvement on UX part and hopefully have a few performance benefits. Could you share your experience on performance part maybe?

      posted in Development Discussions
      B
      bitbybit
    • Running code in workerthread

      Amazing library, V2 works really well, testing modelling part a lot on https://bitbybit.dev website. Mainly just a question if running V2 JSCAD algorithms, especially boolean operations in worker threads is possible and if so, what approach could be taken to do it? Sorry if question should have been placed to a different part of the forum.

      posted in Development Discussions
      B
      bitbybit